← All writing

Writing · 5 min read

Using AI to speed up analytics without trusting it blindly

AI has made me faster at the parts of analytics that were never the hard part. The hard part, agreeing what a number means and proving it's right, is still mine. Here's how I split the work.

Where it saves real time

  • First-draft SQL from a described schema and a written definition. It gets the boilerplate, joins and window functions down in seconds.
  • Translation: SQL to DAX, a report filter to a WHERE clause, a messy spreadsheet formula to something maintainable.
  • Documentation: turning a finished query into a plain-English description for the metric dictionary.
  • Narrative from verified numbers: drafting the weekly brief once the numbers are checked, so I edit sentences instead of writing them.
  • Cleanup: regex, mapping tables, normalizing picklist values and account names.

Where it quietly gets the number wrong

The dangerous failures aren't errors. They're queries that run, return a plausible number, and are wrong:

  • Fan-out joins. Joining opportunities to line items or contacts duplicates rows, and the sum goes up by a believable amount.
  • The wrong grain. Averaging rep-level averages instead of computing from deals. Win rate by count when you meant by amount.
  • Date boundaries. Inclusive or exclusive end dates, fiscal versus calendar quarters, timestamps against dates in different time zones.
  • Invented fields. A confident reference to a column that sounds right and doesn't exist, or worse, exists and means something else.
  • Silent filters. Excluding nulls, test accounts or a record type without saying so.

The checks I don't skip

  1. I write the definition first. AI drafts code against my definition. It never decides what “pipeline” or “churn” means.
  2. Reconcile to a control total. Row counts and one known total (bookings for a closed quarter, say) must match the CRM report before anything else is looked at.
  3. Assert the grain. If a table should have one row per opportunity per day, I test that it does.
  4. Check one case by hand. One rep, one quarter, worked out manually. If the query disagrees, the query is wrong until proven otherwise.
  5. Numbers come from queries, not prose. AI can describe a verified number. It doesn't calculate one inside a paragraph.
  6. A person owns the number. If a figure goes to a leadership meeting, someone's name is on it, and that person has run the checks.

The result

The speed-up is real: first drafts of queries, documentation and briefs take a fraction of the time they used to. But the time saved goes into verification, not into skipping it. A fast wrong number does more damage than a slow right one, because people act on it before anyone checks.


Written by Wolfram Nothnagel. If you're working on this problem, I'm glad to talk: email or LinkedIn.