Skip to content

Content Audits for AI Search: Which Pages a Model Will Quote

In November 2022, Jake Moffatt asked Air Canada’s website chatbot whether he could book a regular fare and claim a bereavement discount afterward, following his grandmother’s death. The bot said yes. Air Canada’s actual bereavement policy said no — refunds had to be requested before travel, not after. When Moffatt tried to claim it, the airline refused and pointed to the correct page on its own site. Its lawyers later argued, before the British Columbia Civil Resolution Tribunal, that the chatbot was “a separate legal entity” responsible for its own words.

The tribunal’s member, Christopher Rivers, rejected that in a single sentence that is now cited across AI-liability writing: “It makes no difference whether the information comes from a static page or a chatbot.” Air Canada was ordered to pay. The ruling is Moffatt v. Air Canada, 2024 BCCRT 149, decided 14 February 2024.

Swap “chatbot” for “a model answering a question about your business” and the ruling reads the same way. A model doesn’t know which of a site’s pages is the current one and which is the one nobody remembered to update. It reads what it can reach and repeats whatever states the fact most plainly — and plainness has nothing to do with whether the page is right.

What a content audit for AI search is actually for

A technical SEO audit asks whether a page can be crawled, parsed and indexed. A GEO audit — the setup-and-recognition check covered elsewhere on this site — asks whether a model knows the business exists at all and would recommend it. Neither one asks the question a content audit exists to answer: of everything already published, which pages should stay exactly as they are, which need an update, and which should be merged or retired because something else on the same site already says it better?

That last part is what a model-era audit adds to the older exercise. A model doesn’t rank a site’s pages against each other the way a search index does. Asked a direct question, it can retrieve and quote any page it can reach, old or new, with the same confidence either way. A page that contradicts the current truth isn’t competing for a ranking position with the correct one — it’s sitting there as an equally quotable alternative.

Why the clearest page wins, not the newest one

This is the mechanic behind the Air Canada case, generalised: a model doesn’t weigh “this page is three years old” against “this page is from last month” the way a human skimming search results might. It pulls from whichever version of the fact is stated most directly — a specific number, a flat yes-or-no, a clean sentence with no hedging. That is often the older page. A newer page redesigned for readability can bury the actual answer under caveats and cross-references that a model has to wade through, while an old FAQ entry from 2019, written in one blunt sentence because nobody expected it to still be live, out-quotes it simply because it’s easier to lift.

Finding the pages that compete with each other

Two pages don’t need to be identical to compete for the same answer. They need to overlap enough in their main text — once headers, navigation and footer chrome are stripped out — that a model treats them as redundant, or worse, as disagreeing. A page-to-page comparison looking for a large share of shared five-word sequences, not just shared keywords, is what catches this: two pages with 80% or more of their substantive text in common are, for a model’s purposes, one page competing with itself. The deeper tier of this site’s own scan runs exactly this comparison across a crawled site, and separately flags any page where more than 65% of the text is navigation and template chrome, because a page that’s mostly boilerplate has almost nothing left to be quoted for. A simpler, single-page version of the same question — is the title, heading structure and body text actually distinct, or thin and templated — is what the free on-page checker answers for one URL at a time.

Neither check requires the pair to be wrong. Two pages can both be accurate and still be a problem, because whichever one a model retrieves, the other isn’t getting cited — and if they’ve drifted on a specific number or date, a reader comparing both would notice before a model would.

Why stale pages survive longer than they should

Nothing breaks when a page goes stale. It still renders, still ranks, still loads in under a second. The failure is invisible by design: a scan of a site’s text for statistics with no attached year routinely turns up pages stating a percentage or a dollar figure with nothing to tell a reader, or a model, whether it’s from last quarter or four years ago. A separate pass for claims anchored to an old year directly — “as of 2021,” “a 2019 study found” — flags the opposite failure: a page that did date itself, now dated against it. Both are easy to miss in a normal editorial pass, because nobody rereads a page looking for the year it silently stopped being current.

What the audit should actually produce

The output isn’t a report. It’s three lists: pages to update (the fact still holds, but needs a current number or date), pages to merge (two or more pages saying the same thing, consolidated into the one that says it most clearly), and pages to retire (the premise no longer holds, and a redirect stops it from being quotable at all).

The clearest evidence for why that third list matters comes from outside AI search entirely. Ahrefs documented a case where an SEO consultant, Francesco Baldini, audited a vehicle-valuation site carrying roughly 4.86 million mostly low-quality, programmatically generated pages. After cutting it to about 1,500, organic visits rose 160% and conversions rose 105% within weeks — not because the removed pages were actively harmful, but because they diluted everything else the site had to say. A model facing millions of thin, interchangeable pages has the same problem a search index does: too many weak, competing answers to choose between.

This isn’t a one-time project — a site updating a handful of pages a month will drift again within a year. That’s also the honest limit of doing it by hand: a reviewer re-reading dozens of pages for contradictions tires before a comparison script does, and is more likely to miss the one pairing where two pages quietly disagree. The full set of checks this runs against, and what each one actually measures, is public in the methodology.

What a content audit can’t tell you

None of this confirms which page a model pulled an answer from on a given day — that’s invisible from outside the model, and no audit watches it happen in real time. What a content inventory establishes is the inventory of risk: which pages are capable of giving a conflicting or outdated answer if asked. Which page a model actually picked is a separate, harder thing to observe, and claiming otherwise would overstate what any audit — including this product’s own — actually measures.

Frequently asked questions

What is a content audit for AI search?

A review of every page on a site to decide which should be merged, updated or retired, judged by whether a language model could quote it as a current fact — not just whether it still gets search traffic. A technical SEO audit asks whether a page can be crawled; a content audit asks whether what it says is still true and whether another page on the same site already says it better.

Does a content audit for AI search replace a GEO audit?

No. A GEO audit checks the setup — crawlability, structured data, whether a model recognises the brand at all. A content audit is about the content inventory itself: which specific pages to keep, merge or remove. The two are complementary, not substitutes.

How do I find near-duplicate pages on my own site?

Compare the main text of each page — excluding header, navigation and footer — against every other page. Two pages that share most of their sentences are near-duplicates even if the headlines differ. A scanning tool can automate the comparison; by hand, a word count and a skim of the opening three paragraphs of each candidate pair catches most cases.

Should old blog posts be deleted or updated?

Depends on whether the claim inside still holds. A post with a dateless statistic or a price that has since changed needs an update, not a deletion, if its topic still matters. A post whose entire premise is superseded — a feature that no longer exists, a policy that has changed — is a candidate for retirement or a redirect, because a model has no way to know it is reading the outdated version.

Does the free SEO audit check for duplicate or stale content?

The free tier's checks are scoped to a single page at a time — titles, headings, meta description. Comparing one page's text against every other page on the site, and checking whether a dated statistic has aged past its shelf life, are deeper, site-wide checks that run only on a full scan.