- What ChatGPT does with your sheet
- Tidy the sheet before you upload it
- Asking for the analysis, step by step
- Static charts or interactive ones
- Read the working before you trust the answer
- Things it won't do inside the analysis
- When it only reads part of the file
- How I'd use it on a sales sheet
- Frequently asked questions
Yes, ChatGPT can analyse a spreadsheet: you upload the file, tell it what you want to learn, and it summarises the data, builds tables and charts and runs Python-based calculations. As of Nov 2026, OpenAI's help page says you'll get the best results from structured data with clear column names and one record per row.
That last line is the whole game. Most of the disappointing answers people get come from messy sheets, vague questions or files ChatGPT can't read cleanly. This page is written for a business owner with a sales, orders or bookings sheet who wants answers, not a statistics course.
What ChatGPT does with your sheet
According to OpenAI, ChatGPT can help with:
- Summarising rows, columns, trends and outliers.
- Creating tables for row-by-row review.
- Creating charts from the data you've uploaded.
- Running Python-based calculations, transformations and statistical analysis.
- Explaining its assumptions, results and possible next steps.
It works with spreadsheets (.xls, .xlsx and .csv files), PDFs, and text or data files such as .json, .xml, .yaml, .txt and .md. As of Nov 2026, the file types you can use vary by model, plan, workspace settings and account. Where plugins are available for your account or workspace, you can also attach files from Google Drive, OneDrive and SharePoint. When you do, ChatGPT works with that connected account's permissions, and workspace admins may control which apps you can use.
Tidy the sheet before you upload it
OpenAI gives a short list of what to do and what to avoid. It's worth ten minutes of tidying before you upload, because ChatGPT reads your sheet the way it's laid out, not the way you meant it.
| Do | Avoid |
|---|---|
| Put descriptive column headers in the first row | Several unrelated tables in one sheet |
| Keep one row per record (one order, one booking, one customer) | Empty rows or columns that split the data |
| Use plain-language column names like Order date or Region | Images that contain values ChatGPT needs to analyse |
A typical small-business sheet breaks at least one of these. A summary block sitting above the real data, a pasted screenshot of last month's chart, a blank row between quarters. Move the summary to its own tab, delete the image and close the gaps, and you'll get a cleaner answer first time.
Asking for the analysis, step by step
- Tidy the sheet using the table above. If you can, save it as a CSV with one table in it.
- Upload the file to a chat.
- Say what you want to learn, and name the columns, calculations, groupings or chart types you want. OpenAI's own advice is to be that specific.
- Read the working. If ChatGPT used Python, check the code, the outputs and the assumptions before you take the number anywhere.
- Ask for a specific chart by type, grouping and column, rather than "make a chart".
- Re-check against the sheet. Pick one or two figures and find them in your own file before you share the result.
An example ask that names the columns
Using the Orders tab, total the Order value column by Month and by Region. Show it as a table first, then as a bar chart with Month along the bottom.
If you want more ideas for questions to ask, there's a separate page of ChatGPT prompts for data analysis. The habit that matters more than any prompt is naming your columns.
Static charts or interactive ones
ChatGPT makes static charts as images by default. Some charts can also be shown as interactive charts: when one is available, select Switch to interactive chart, and select Switch to static chart to go back to the image.
The catch: as of Nov 2026, interactive charts are supported for bar, line, pie and scatter charts only. Other chart types may come back as static images. If you need something you can hover over in a meeting, stick to those four types.
Read the working before you trust the answer
For some tasks, ChatGPT writes and runs Python code in what OpenAI calls a stateful Jupyter notebook environment. In plain words, it's running real calculations on your file, and it can show the data as an interactive table when that's useful. That's what makes it more than a guess.
It's also why OpenAI says to review the generated code, outputs and assumptions before relying on the result. You don't need to read Python fluently. Look for the obvious things: did it use the right column, did it drop any rows, did it treat a blank as zero? If the answer depends on a particular method, ask ChatGPT to show that method or change it.
OpenAI is also upfront that ChatGPT may choose an analysis method or chart type that doesn't match what you meant on the first try. That's normal, not a fault. Tell it the method, chart type, grouping or column you want and ask again.
Things it won't do inside the analysis
The biggest surprise for most people: the Python environment ChatGPT uses for data analysis can't make external web requests or API calls. It won't pull last week's exchange rates or your live shop figures while it works. If your analysis depends on outside data, upload that data too or connect an available source before you ask.
Want AI doing the heavy lifting in your marketing?
I build the systems that handle the boring 80 percent, so you get your week back. Done properly, with the human kept in.
Scans are the second trap. OpenAI says ChatGPT may not reliably extract exact values from image-based tables, scanned files or files with complex visual layouts. A PDF invoice run that started life as a scan, or a photo of a printed report, is a poor input when the exact numbers matter. Go back to the spreadsheet or a text-based export instead.
When it only reads part of the file
A file can upload without any error and still be too large, complex, image-heavy or badly structured for a complete analysis. For spreadsheets, the number and complexity of formulas can affect processing too, even when the file is within the upload size limit.
If a result looks thin, like a total that seems low or a month that's missing, ask ChatGPT to inspect specific sheets, rows, columns or sections, or split the file into smaller files.
The number of files you can add to one conversation varies by upload type, model, plan, workspace settings and how much of your upload allowance is left, and Project and GPT knowledge-file limits are set separately. I've covered ChatGPT file upload limits on their own page. If you'd rather work inside your spreadsheet than upload it, the ChatGPT for Excel add-in is the other route.
How I'd use it on a sales sheet
I'd start with one clean CSV and one question, such as which region's orders dropped last quarter, and skip scanned PDFs and screenshots of tables altogether. Once the first answer checks out against your own sheet, ask the next question in the same chat. Treat every number as a lead to check, not a fact to forward, until you've matched it to the file.
Features and limits change often. As of Nov 2026, this is what OpenAI's own help page says, so check it for the latest before you rely on a detail.
If you've got numbers sitting in sheets and no time to read them, that's the kind of AI enablement I help with. I run AI training and workshops for teams, and help businesses with AI enablement and workflow automation, so the busywork runs itself and people get time back. Most of that work is with SaaS marketing teams and small businesses. Here's how we can work together.
Frequently asked questions
Can ChatGPT analyse an Excel spreadsheet?
Yes. It supports .xls, .xlsx and .csv files, and works best with descriptive headers in the first row, one row per record and plain-language column names.
Can ChatGPT read scanned PDFs with tables?
Not reliably. OpenAI says it may not extract exact values from image-based tables or scanned files, so upload a spreadsheet or text-based file when exact values matter.
Can ChatGPT pull outside data during an analysis?
No. The Python environment it uses for data analysis can't make external web requests or API calls, so upload the data or connect a source first.
Which ChatGPT charts can be interactive?
As of Nov 2026, bar, line, pie and scatter charts. Other chart types may come back as static images.
Why did ChatGPT only analyse part of my file?
A file can upload fine but still be too large, complex or poorly structured for complete analysis. Ask it to inspect specific sheets, rows or columns, or split the file.


