Published · Updated
Summarize a CSV File With AI in Seconds
Summarize a CSV by asking plain-English questions: row counts, totals, grouped averages, and charts. A fixed six-row example, checkable by hand.

TL;DR: Start a CSV summary with row counts, totals, and a clearly defined average, then compare groups. The six invented rows below total 900 in revenue and 570 in cost, with average revenue of 150 per row. These are checkable arithmetic expectations, not measured AI outputs or a speed benchmark.
What is the quickest useful way to summarize a CSV?
Define the measures before asking for a narrative. Establish what one row represents, count the rows, calculate totals, and compare a relevant grouping. "Summarize this file" leaves the meaning of a useful summary open; naming the columns and aggregation gives you something concrete to verify.
AskCSV turns plain-English questions into read-only SQL over the file you open in your browser. It keeps what the AI provider sees to a minimum — only the question, the file's name and row count, the columns you chose to share with up to 10 sample rows, up to 100 rows of each query result plus summary figures, and the earlier messages in the chat — not the file itself; DuckDB executes the query over the whole file in the browser and the resulting figures are computed in code. The workflow explanation describes that division of work, and the generated SQL is shown with each result so you can check what ran.
Setup is analysis, not a download: nothing needs to be installed, and there is no model to prepare before your first question. How large a file can be handled depends on the browser and device. This guide does not claim instant answers or a particular completion time.
Which small CSV can I use to check a summary?
Use this fixed, synthetic example. Each row is one fictional sale; revenue and cost use the same unspecified currency unit. There are no blank cells, taxes, or additional expenses to infer.
region,revenue,cost
North,120,80
South,200,140
North,180,100
West,90,60
South,160,100
North,150,90
Paste these rows into the file input, or save them locally as summary-example.csv and open it. Check that the header becomes three columns and that revenue and cost are read as numeric values.
The example is intentionally small enough to check by hand. All expected figures below come from these six rows and ordinary arithmetic. They are not a transcript of a successful AskCSV run, and actual AI wording or query generation may differ.
What exact questions should I ask?
Ask these separately so you can check each result before moving on:
- "How many data rows are there, and what are total revenue and total cost? Show a table." Expected: 6 rows, total revenue 900, and total cost 570. Do not count the header as a data row.
- "For each region, show row count, total revenue, total cost, and average revenue per row. Sort by total revenue descending and show a table." Compare the result with the group table below.
- "What are total revenue minus total cost and average revenue per row across all rows? Show a table." Expected: 330 and 150. Revenue minus the listed cost is not necessarily accounting net profit; this file contains no other expenses.
| Region | Rows | Total revenue | Total cost | Average revenue per row |
|---|---|---|---|---|
| North | 3 | 450 | 270 | 150 |
| South | 2 | 360 | 240 | 180 |
| West | 1 | 90 | 60 | 90 |
A useful summary distinguishes volume from value per sale: North has the most total revenue, while South has the highest average revenue per row. South's higher average does not make it the leader in total revenue.
How can I verify the totals and averages myself?
The arithmetic is:
- Revenue:
120 + 200 + 180 + 90 + 160 + 150 = 900. - Cost:
80 + 140 + 100 + 60 + 100 + 90 = 570. - Revenue minus cost:
900 - 570 = 330. - Average revenue per row:
900 / 6 = 150. - North:
(120 + 180 + 150) / 3 = 150average revenue. - South:
(200 + 160) / 2 = 180average revenue. - West:
90 / 1 = 90average revenue.
Do not average the group averages without weighting them. (150 + 180 + 90) / 3 = 140, which is not the overall average. The groups have different row counts. The weighted calculation is (150 × 3 + 180 × 2 + 90 × 1) / 6 = 150.
If you already use SQL, this query expresses the grouped check against a table named sales:
SELECT
region,
COUNT(*) AS row_count,
SUM(revenue) AS total_revenue,
SUM(cost) AS total_cost,
AVG(revenue) AS average_revenue
FROM sales
GROUP BY region
ORDER BY total_revenue DESC;
This is reference SQL, not a promise that the AI generates this exact text. In AskCSV the query that actually ran is displayed with the chart, so the difference between this reference and the live query is visible. The DuckDB aggregate function reference explains COUNT, SUM, and AVG; notably, AVG(column) ignores null values, while COUNT(*) counts rows. That difference matters when moving beyond this complete six-row sample.
What if a summary disagrees with the expected answer?
Check the result table and the displayed SQL before trusting the prose. Verify that all six rows were read, numbers are numeric, no filter was requested accidentally, and the grouping uses region. Distinguish per-row averages from group averages, and total revenue from revenue minus cost.
On another dataset, also check duplicate records, blanks, mixed currencies, and what each row represents. Ask a separate, precise question about a suspected issue rather than assuming a general summary automatically audits data quality. Read-only SQL validation does not guarantee that the generated calculation matches your intent.
Frequently asked questions
Do I need an account or to pay?
No account is needed to try it: guests get $0.25 of credits (about 5 answers). Sign in with Google to subscribe; your file stays in this browser either way. A $5/month subscription includes $5 of usage every month (about 100 answers); extra credits start at $10 (about 200 answers).
Can I summarize an Excel workbook directly?
Yes. AskCSV reads every sheet of an Excel .xlsx workbook as its own table, and also accepts CSV, TSV, delimited TXT, and pasted delimited rows. It reads cell values, not workbook formulas or formatting.
Where is my file stored, and for how long?
The file is opened in your browser and kept in this site's storage for your account or guest session; it is not uploaded. Guest credits expire 7 days after they are issued, and files and chats stay in this browser until you delete them or clear the site's data. The data-handling walkthrough covers what the AI provider sees as well.
Technical references
- DuckDB documents the SQL engine AskCSV queries local files with.
- DuckDB aggregate functions covers
COUNT,SUM, andAVG.
Try the six-row sample, compare the numbers, and only then expand the question.
Keep exploring
- Analyze Sales Data Without an Expert (Free)
Learn how to analyze sales data without an expert. Ask questions in plain English, get charts and answers computed from real SQL query results, no sign-up needed.
- How to Analyze Survey Results From a CSV With AI
Analyze survey results from a CSV with AI: count answers, spot trends, and keep the survey file in your browser with clear retention and deletion.
- Convert CSV into Charts by Asking in Plain English
Convert a CSV or Excel file into charts and tables by asking questions in plain English. Charts are built from the SQL query result, and the query is shown with each one.