Paste a CSV at a model and ask 'any insights?' and you'll get horoscopes: confident, generic, unfalsifiable. This template forces the analyst workflow instead: describe the data first (rows, columns, ranges, what's missing — catches half of all wrong conclusions), find patterns with the numbers attached, tie every claim to a specific comparison ('segment A converts at 2.1× B'), rank findings by actionability, and end with the checks that would kill each finding.
The last section is what separates analysis from horoscope: every finding ships with its kill test — the confound to check or the cut of the data that would falsify it. If a finding has no possible kill test, it wasn't a finding.
Analyze the table below (monthly sales by rep, region, product line — Jan 2025–Jun 2026).
STEP 1 — DESCRIBE FIRST: rows/columns, value ranges, missing or suspicious cells (zeros? duplicates? a month that's half-empty?). Do not proceed to findings until this is stated.
STEP 2 — FINDINGS (max 5), each as: • Claim with its numbers and explicit comparison • Actionability: what we'd DO differently if true • Kill test: the confound or data cut that would falsify it • Chart to verify: type + axes
STEP 3 — rank findings by (actionability × confidence), and state the single most important thing this table CANNOT tell us.
Rules: no causal language for correlations ('associated with', not 'drives') unless the design supports it; if a pattern needs n<10 rows, say 'too thin' instead of reporting it.
DATA: [paste table]
Before any write-up: run the kill tests.
For each of the 5 findings: execute its kill test against the table (split by the confound, re-cut the data) and report VERDICT: survives / dies / weakened — with the numbers from the re-cut.
Only findings that survive go to the summary. For finding 2 specifically: recompute excluding rep Kim and report both versions.
Then: the one-paragraph leadership summary using only survivors, each still carrying its numbers.
Claude is disciplined about correlation-vs-causation language when the rule is stated and does honest describe-first passes — it will flag the half-empty month unprompted more often than most.