Guide

How to Fact-Audit Content at Scale: The Refute-First Process

The short answer

How do I fact-audit content at scale?

Fact-audit at scale by working claim by claim, not page by page: extract every checkable claim into a ledger, then try to refute each one from the exact source the page cites. Across our 3 production builds this process checked 445 claims on one build (40 corrected, 0 fabricated) and recomputed 461 payment figures on another (460 correct within $1) [our data].

Fact-auditing at scale means auditing claims, not pages: every statistic, price, date, and legal assertion goes into a ledger, and each one gets checked by attempting to refute it from the exact source the page cites. This page is the operational process; the three-build record of what that process caught — with counts and dates — is documented separately in what fact-auditing 400+ pages catches.

The short version of why the posture matters: the worst error our audits ever caught was a fabricated state tax regulation, cited to a real source that says the opposite — and it read as the best-sourced sentence on its page [our data].

What is a refute-first fact audit?

A refute-first audit verifies each claim by trying to disprove it from the source the page itself cites. The auditor's question is never "does this sound right?" — it is "does this exact source actually say this?" Reading to confirm passes anything plausible; reading to refute is the only posture that catches a claim whose citation points at a source contradicting it.

The distinction is not academic. Plausibility-reading would have passed the fabricated regulation above, because the sentence was fluent, specific, and carried a real citation. Refutation caught it in one lookup [our data].

How do I build the claim ledger?

Extract every checkable assertion in the corpus into one table, one row per claim, before verifying anything. The ledger our audits commit carries 4 fields [our data]:

FieldWhat it holds
ClaimThe assertion, verbatim from the page
LocationEvery page and section the claim appears in
SourceThe source found for it — an approved external source or a first-party record
VerdictVerified, corrected, or unverifiable

Two columns worth adding if you are building your own: a claim type (statistic, price, date, legal/regulatory, derived figure), which lets you batch verification work by kind, and the gate rule an error produced, which keeps the audit-to-gate loop visible in one artifact.

Two properties make the ledger work. It is exhaustive — a claim not in the ledger is a claim that never gets checked — and it is committed to the repository when done, which turns the audit from a private assurance into a checkable artifact.

Batch the rows by type before verifying, not by page. All derived figures go to the recompute script in one pass, all claims citing one source get checked in one reading of that source, and all legal-adjacent claims get the strictest reviewer. Type-batching is where the scale economics live — page-by-page auditing rereads the same sources dozens of times.

How do I verify each claim?

In three passes, cheapest first. Trace: confirm each claim's source exists and is the kind of source allowed to back it — on our builds that means an approved source list or a first-party record, and a claim with neither is already failed. Refute: open the source and try to disprove the claim from it, quoting the source's actual figure next to the page's. Recompute: every derived number — payments, percentages, deltas — is recalculated by script and compared against the page, never eyeballed.

The record shows why each pass earns its place. The refute pass on our greenfield insurance build checked 445 claims and corrected 40, including a statutory exemption published as "roughly $10,000" where the regulation says $12,997 — a hedge concealing a 30% error [our data]. The recompute pass on our auto-finance rebuild covered 461 payment figures and found 460 correct within $1; the single miss was a propagated error, wrong everywhere it had been reused [our data]. Hedges get no immunity: every "roughly" is treated as an unverified claim to verify or cut.

What do you do with what the audit finds?

Correct the pages, commit the ledger, and — the step that actually compounds — convert each error class into an automated build rule. A retired claim gains a build-failing regex the day it is retired, because our auto-finance audit found one retired claim had leaked back into 6 pages via writers faithfully matching stale exemplars [our data]. Derived figures are computed by script and used verbatim because of the propagated math error. Each audit hardens the gates the next tranche is written under.

That loop — audit finds, gate encodes — is the quality machinery inside the authority engine, and it is the honest answer to the reliability bar Google's people-first guidance describes: content that demonstrates its trustworthiness (Google, helpful-content guidance). Whether AI-assisted drafting itself is a search risk is a separate question with its own evidence, covered in does Google penalize AI content? — the audit is how AI-assisted pages earn the reliability the guidance asks for, whatever wrote the first draft.

Is a full audit always worth its cost?

Not always, and we sell audits — so weigh this against interest. The audit is the expensive phase of a content operation and it never gets cheaper with scale, because the unit of work is the claim and claims accumulate with pages. The full arithmetic — per-claim and per-page — is worked out in what fact-auditing costs.

The honest triage: pages dense with figures, tables, or legal-adjacent assertions get the full refute-first treatment first, because that is where our worst finds clustered [our data]. A corpus of genuinely figure-light pages can defensibly start with a targeted audit of its few checkable claims. What has no defensible version is skipping verification on a surface an answer engine may quote — an engine that lifts your wrong number republishes it under your name.

Frequently asked questions

How do you fact-check AI-generated content at scale?

Claim by claim, against a ledger: extract every statistic, price, date, and legal assertion into rows, attach each row's source, and try to refute each claim from that exact source. Our site-wide pass on one build worked through 445 claims this way and corrected 40 [our data].

What is refute-first auditing?

Verification that tries to disprove each claim from the source the page itself cites, rather than reading for plausibility. It exists because fabricated claims read as well-sourced: our leasing build's audit caught a fabricated state tax regulation cited to a real source that says the opposite [our data].

How many errors should I expect a fact audit to find?

We can only report our own record: 40 corrections in 445 checked claims on one build, and 1 error in 461 recomputed figures on another [our data]. The 9% rate concentrated in pages written before our content contract existed — contract-governed pages audited clean.

What tools do I need to run a fact audit?

A ledger (a spreadsheet works), access to every cited source, and a script for recomputing derived figures. No purchasable tool replaces the reading: the expensive part is a person opening each source and checking, which is also why the audit's cost scales with claim count.

What happens to the errors after the audit?

Each error class becomes an automated build rule: retired claims get a build-failing regex the day they are retired, derived figures get computed by script and used verbatim, and render defects get an output gate over the built HTML. The audit finds; the gates then prevent [our data].

Sources

  1. Creating helpful, reliable, people-first contentGoogle