Office Tools

How to Analyze a CSV File and Create Tables With ChatGPT

Learn how to upload and analyze a CSV file with ChatGPT, build clean tables from scratch and clean messy data, with ready-to-copy prompts and file limits.

How to Analyze a CSV File and Create Tables With ChatGPT

A 3,000-row sales export, a bank statement downloaded as a CSV, a club’s member list, the answers to an online survey: at some point, we all end up staring at a data file with no idea where to start. Creating a table or analyzing a CSV file with ChatGPT is one of the easiest ways to turn those columns of numbers into clear answers.

You still need to know what to give it, what to ask, and above all how to check what it tells you. In this guide, I walk you through my method step by step: preparing the file, asking the right questions, building a clean table from scratch, cleaning up messy data, and avoiding costly mistakes. You’ll also find plenty of ready-to-copy prompts.

Key takeaways

  • ChatGPT lets you upload a file (CSV, spreadsheet) and analyze it, even on the free version, with limits.
  • In a project, the number of files is capped: 5 on Free, 25 on Plus, 40 on Pro (Plus costs $20 a month, Pro $100 a month).
  • OpenAI lists rolling upload limits (for example, up to 80 files every 3 hours) and 25 GB of storage per user; these limits may change.
  • Always describe your columns and your goal: that’s what separates a vague answer from a useful analysis.
  • The results aren’t always accurate: OpenAI asks you to check them before using them.

Information checked on September 29, 2026.

Contents
  1. What ChatGPT can do with a table
  2. Step 1: Prepare your file
  3. Step 2: Upload the file and have it described
  4. Step 3: Ask specific questions
  5. Step 4: Get a readable summary
  6. Create a table from scratch
  7. Clean up messy data
  8. Limits to know for each plan
  9. Mistakes to avoid
  10. Two real-world examples
  11. Prompts to keep handy
  12. Frequently asked questions
  13. The bottom line

What ChatGPT can do with a table

Before we get into the method, here’s where, in my experience, ChatGPT really helps with tabular data:

  • Create a table from a description, a messy list or a block of text (a comparison, a budget, a schedule, an inventory).
  • Understand an unfamiliar file: which columns, what kind of data, how many rows, which values are missing.
  • Calculate totals, averages, breakdowns and month-over-month changes.
  • Clean data: duplicates, dates in the wrong format, names spelled three different ways.
  • Summarize what the numbers say, in plain language, for someone who will never open the file.
  • Suggest ideas: which questions to ask of the data, which charts would tell the story.

What it doesn’t replace: your knowledge of the context. ChatGPT doesn’t know your shop was closed for renovations in March, or that the “status” column holds an internal code. It’s up to you to tell it.

If you mostly work in Excel or Google Sheets and are looking for formulas, check out my guide on using AI with Excel. Here, I’m focusing on ChatGPT itself.

Step 1: Prepare your file

A well-prepared file is half the job. A few minutes of tidying up saves you a lot of wrong answers.

  • A single header row, with clear column names (“order_date” rather than “col3”).
  • No title rows, totals or comments in the middle of the data.
  • One type of information per column (no “about $12” in an amount column).
  • Dates in a consistent format across the whole file.
  • Personal data removed or replaced when it isn’t needed for the analysis.

That last point is essential, and I’ll come back to it below. If your file contains customer names, emails, phone numbers or addresses, ask yourself before uploading: do I need these columns for my question? Almost always, the answer is no.

CSV or spreadsheet?

A CSV is a plain text file where values are separated by commas or semicolons. It’s the lightest and most universal format. Watch out for one common trap: files exported from European software or in European locales often use a semicolon as the separator and a comma as the decimal mark. If ChatGPT misreads your file, say so right at the start.

Step 2: Upload the file and have it described

In the message box, use the add-file button and select your CSV. Don’t ask your big question right away: start by making sure ChatGPT has understood the structure.

Here's a CSV file. Before any analysis, describe it: number of rows and columns, the name and type of each column, sample values, and any missing or odd values. The separator is a comma and the decimal mark is a period. Don't do any calculations yet.

This step takes thirty seconds, and it has often kept me from starting off on the wrong foot: an amount column read as text, dates with the month and day swapped, a total row forgotten at the bottom of the file.

Next, give it some context:

Context: this file contains sales from my online store from January through August. Each row is one order. The "status" column is "C" for canceled and "D" for delivered. I want to understand which products sell best and when. Confirm you've understood before continuing.

Step 3: Ask specific questions

The quality of the analysis depends directly on how specific your questions are. “Analyze this file” gets you a generic inventory. A real business question gets you a useful answer.

Calculate total revenue by month, excluding canceled orders. Show the result in a table (month, number of orders, revenue, average order value) and tell me in one sentence which month was strongest and which was weakest.
What are the top 10 products by revenue? And the top 10 by quantity sold? Comment on the differences between the two rankings.
Compare January–April with May–August: what changed? Give me the 3 most notable shifts, with numbers to back them up.
Are there any outliers (negative amounts, huge quantities, impossible dates)? List them with their row numbers, without deleting them.

Ask to see the reasoning

For every important number, I always ask how it was calculated:

For this total, explain exactly which rows you included and excluded, and what calculation you did. Give me a simple check I can redo myself in my spreadsheet.

I find this to be the most valuable habit of all. If the explanation doesn’t hold up, neither does the number.

Step 4: Get a readable summary

Once the calculations are checked, ChatGPT is great at translating them into everyday language, for a coworker, a business partner or a nonprofit board.

Based on the analyses above, write a 150-word summary for my business partner, who doesn't have time to read the tables: the 3 main takeaways, one warning sign and one recommendation. Simple tone, no jargon.

You can also ask it for chart ideas, then build them in your spreadsheet:

Which 3 charts would best present these results in a meeting? For each one, give the chart type, the data to use and the message it gets across.

If you then need to present all this, my guide to creating a PowerPoint presentation with AI picks up from there.

Create a table from scratch

You don’t always have a file. Often, you have scattered information and you want a clean table. That’s where ChatGPT saves you the most time.

From a messy list

Turn these notes into a table with the columns: supplier name, product, unit price, delivery time, notes. If a piece of information is missing, leave the cell blank instead of making something up.
---
[notes]
---

That last sentence matters: without it, ChatGPT tends to fill the gaps with plausible-looking values.

From a long text

Read these meeting notes and pull every action item into a table: action, owner, due date, status. In parentheses, quote the sentence from the text each row comes from.

For meeting notes, see also my article on writing meeting minutes with AI.

A template to fill in

Create a template for tracking a monthly household budget: useful columns, common spending categories, and the formulas to put in each calculated column. Show it as a table first, then in comma-separated CSV format so I can copy it into a file.

Asking for CSV format at the end is a handy trick: you paste the result into a text file, save it with the .csv extension, and your spreadsheet opens it right away.

A comparison table

Create a comparison table of these 4 home internet plans using the information I'm pasting below: monthly price, contract length, advertised speed, installation fees, strengths. Don't add any information that isn't in my text.

Clean up messy data

Data cleaning is a thankless job where AI helps a lot. The golden rule: ChatGPT suggests, you approve.

In this file, the "city" column has variants ("New York", "new york", "NEW YORK NY", "NYC"). Suggest a list of mappings to standardize the names, as a table (original value, corrected value, number of rows affected). Don't apply anything until I approve.
Find likely duplicates (same name and same email, or same name and same phone number) and list them. Explain your criteria.
Convert all dates to MM/DD/YYYY format and flag any rows where the date is ambiguous.

Work in steps and always keep a copy of your original file: those are the two habits that save me from nasty surprises.

Limits to know for each plan

Here are the official figures that matter when working with files, according to OpenAI’s help page. These limits may change, so check in your own account.

PlanPriceFiles per project
FreeFree5
Plus$20 a month25
Pro$100 a month40

Also good to know:

  • File uploads and analysis are among the features highlighted for the Plus plan; usage limits may vary depending on demand.
  • OpenAI applies a rolling upload rate: the example given is 80 files every 3 hours.
  • File storage is capped at 25 GB per user (and 100 GB per organization for business accounts).
  • There’s a $200 Pro tier, but new sign-ups have been paused since September 10, 2026.

For a one-off analysis, the free version is often enough. If you work on several files every week, a subscription may be worth it: I compare the two in my guides to ChatGPT Free and ChatGPT Plus. And if you keep coming back to the same files, group them in a project: my guide to ChatGPT Projects explains how.

Mistakes to avoid

Trusting the numbers without checking

This is mistake number one. OpenAI says it clearly in its terms of use: responses aren’t always accurate, you should evaluate them before using or sharing them, and you shouldn’t rely on them as the sole basis for an important decision. For a data table, that means:

  • Recalculate one or two totals yourself in your spreadsheet.
  • Check that the row count it reports matches yours.
  • Spot-check a few random rows whenever data has been transformed.
  • Reread the conclusions: they should follow from the numbers, not from a hunch.

Uploading personal data without thinking

A customer file, a member list or an HR export contains information about people who didn’t necessarily agree to have it shared with a third-party service. Delete the columns you don’t need, replace names with IDs, and follow your employer’s rules. For a work file, ask yourself whether your company allows this kind of use. My guide to ChatGPT memory also helps you understand what the tool remembers from one conversation to the next.

Asking a question that’s too vague

“What do you think?” gets you a generic answer. Ask a question that can be answered with a number, a table or a list. My guide to writing a good prompt explains this approach in detail.

Asking for everything in one message

An analysis in five successive questions, each one checked, beats one giant prompt that mixes everything together. If a step goes off track, you’ll see it right away.

Forgetting the business context

A drop in sales in August isn’t necessarily bad news if you close for three weeks every summer. Give ChatGPT what it can’t guess.

Two real-world examples

Marcus, treasurer of a youth sports club

Marcus exports the year’s membership dues as a CSV. He removes names and emails, keeps the age group, amount and payment date, then asks for: members by age group, amount collected per month, and the number of dues still outstanding. He recalculates the total in his spreadsheet, then has ChatGPT draft a summary for the annual members’ meeting.

Claire, owner of a small shop

Claire wants to know which products to restock before the holidays. She uploads her sales export and asks for the best-selling products by month and the ones whose sales have grown. She doesn’t follow the list blindly: she cross-checks it with what she knows about her customers.

Prompts to keep handy

Describe this file without doing any calculations: columns, types, missing values, anomalies.
Answer this question using only the file: [question]. Show the calculation and the rows you used.
Show the result in a table, then summarize it in 3 sentences for a non-expert.
List the assumptions you made for this analysis, and the ones I should double-check.
What looks surprising or inconsistent in this data? Don't draw conclusions; ask me questions.

Frequently asked questions

Can you analyze a CSV file with ChatGPT for free?

Yes, file uploads work on the free version, with lower limits than the paid plans (for example, a maximum of 5 files per project). For a one-off analysis, that’s usually enough.

How big a file can ChatGPT handle?

OpenAI lists rolling upload limits and a storage cap of 25 GB per user, but the exact limits may change. For a very large file, I recommend uploading only the columns and time period you need.

Can ChatGPT make calculation mistakes?

Yes. OpenAI states that responses aren’t always accurate. Ask for the calculation details and do at least one check in your spreadsheet before relying on a number.

Can I upload a file that contains customer data?

Technically yes, but it isn’t always a good idea. Remove unnecessary personal information, and for a work file, check your company’s rules.

How do I get the table ChatGPT created?

The simplest way: ask for the result in comma-separated CSV format, paste it into a text file saved as .csv, then open it in your spreadsheet. You can also copy the table on screen and paste it directly.

Does ChatGPT replace Excel?

No, in my experience it complements it. ChatGPT helps you understand, question and summarize data; the spreadsheet remains the tool for storing, checking and updating your numbers. The two work really well together.

The bottom line

To create a table or analyze a CSV file with ChatGPT: prepare a clean file without unnecessary personal data, have it describe the structure first, ask specific questions one at a time, demand the calculation details and check the important numbers yourself. To build a table from scratch, spell out the columns you want and tell it not to make up the blank cells.

To go further, check out my guide to using AI with Excel.