Someone drops a CSV on you and asks what it says. The instinct is to start charting. This workflow front-loads the boring parts instead, because that's where wrong conclusions come from, and because the boring parts are exactly what AI is good at.
Stage 1: Work out what you've actually got
Five questions before any analysis. If you can't answer them, nothing you build on top means much.
- 1What is one row? An order, an order line, a customer, a daily snapshot? Get this wrong and every count is wrong.
- 2What period does it cover, and is that period finished? A partial final month invents a decline in every trend.
- 3Which system produced it, and what does that system leave out? Cancellations, internal accounts, test records.
- 4Which columns are captured and which are calculated? Calculated ones carry someone else's assumptions.
- 5Is the timestamp event time or export time (and did it survive the CSV import)? They're different, and it matters the moment you build cohorts.
Stage 2: Profile every column
This is where AI pays for itself straight away. Producing a per-column profile of a 40-column export is mechanical, it takes ages by hand, and consequently nobody ever does it thoroughly.
| For each column | What you're looking for |
|---|---|
| Fill rate | A column that's 60% empty can't support a segmentation |
| Distinct count | 12 distinct values is a category, 4,000 is an identifier |
| Type check | Numbers or dates stored as text, which break every aggregation |
| Min, max, outliers | Negative quantities, dates in 1899 or 2099, impossible values |
| Top 10 by frequency | Where the mass of the data actually sits |
Profiling regularly kills an analysis before it starts, and that's the point. Finding out the channel column is blank for 70% of rows is much better news before you build the channel breakdown than after.
Stage 3: Clean, and write down what you decided
The mechanics are in the nine-step cleaning checklist. For analysis, three decisions need recording rather than just making.
- How blanks were treated: dropped, zeroed, or excluded per metric. This moves averages more than people expect.
- Which rows were excluded: test accounts, internal orders, cancellations. Note how many.
- How outliers were handled: kept, capped, or removed. Removing them is defensible. Removing them quietly isn't.
Stage 4: Ask questions in the right order
There's a sequence here, and skipping ahead is how people end up certain about something untrue.
Describe
Totals, distributions, shape. How many customers, how much revenue, over what period, concentrated where. No comparisons yet, just the lay of the land.
Compare
This segment against that one, this month against last. Differences start appearing here, and most of them are noise until you've checked the denominators.
Explain
Why is this segment different? Now it stops being mechanical. AI generates candidate explanations quickly, which is genuinely useful, as long as you remember a candidate explanation is a hypothesis.
Test
Take the two most plausible explanations and try to disprove them. If the story is seasonality, last year's same month should show it too. Go and look.
Stage 5: Verify anything that leaves the sheet
The stage everyone skips, and the one that decides whether the analysis is worth anything. The standard is simple: no formula, no claim.
- 1Every headline number has a formula in the sheet you can click on and follow.
- 2Components add up to the total. Actually check, don't assume.
- 3Percentages state their denominator. "Conversion up 30%" means nothing without it.
- 4At least one figure is reproduced a second way, a pivot table against a
SUMIFS. - 5Segment counts add back to the total row count, so nothing was lost or double-counted in a join.
Number four is the habit worth building. Two methods agreeing is real evidence. Two methods disagreeing has saved more analyses than any other single check, and it's the check missing from most of the failures that made the news.
Stage 6: Check the usual traps
A handful of failure modes account for most misleading spreadsheet analysis. Go through them deliberately rather than hoping.
| Trap | What it looks like | The check |
|---|---|---|
| Incomplete final period | A sharp drop in the latest month | Is the period actually over? |
| Survivorship bias | Retained customers look wonderful | Are churned ones in the data at all? |
| Simpson's paradox | The trend reverses when you segment | Segment before publishing the aggregate |
| Denominator drift | A rate moves, the numerator doesn't | Plot both separately |
| Small-n segments | One segment with a wild number | Show counts next to every rate |
| Composition change | The average moved, nothing else did | Did the mix shift? |
The last two are worth learning properly. A rate calculated on 11 rows will swing wildly for reasons that have nothing to do with your business, which is why every rate you present should sit next to its count.
Stage 7: Write it so someone can act on it
An analysis nobody acts on wasn't finished. The structure that works is short and unglamorous.
- The finding, in one sentence, with the number in it.
- How you know: which data, which period, which calculation.
- What's uncertain: the exclusions, the small samples, the assumptions you had to make.
- What it implies: the decision this informs, or an honest "this is context, not a decision".
- A link to the workbook, so anyone can check the formulas instead of taking your word for it.
People cut the uncertainty section for brevity, and it's the section that makes the whole thing usable. A finding with no caveats gets either over-trusted or thrown out entirely the moment someone spots a caveat you didn't mention.
What AI does and doesn't do here
| Stage | AI's role |
|---|---|
| Work out what you've got | None, the answers aren't in the file |
| Profile columns | Large: fast, thorough, and nobody does it by hand |
| Clean | Large, with your rules about blanks and duplicates |
| Ask questions | Large for describe and compare, a hypothesis generator for explain |
| Verify | Moderate: it can write the second check, you have to read it |
| Check traps | Moderate as a checklist, the judgement is yours |
| Write up | Moderate for drafting, the caveats must be yours |
There's a pattern in that table. AI is strongest where the work is thorough but mechanical, and weakest exactly where accountability lives. That isn't a limitation waiting to be engineered away, it's the line that keeps the output worth trusting.
Run this on your next export
SheetAI profiles every column, writes the calculations into the sheet where you can trace them, and shows its working at each step.
Analyze your data in SheetAI


