AI Citation Tracking: How to Log Who Quotes Your Pages
AI citation tracking answers one question: which exact page did this engine credit as a source? A brand name in the prose is a different event. Fold the name and the link into one visibility score and the log stops telling you who was quoted.
Public reports will not fill that log. Since June 2026, Google Search Console’s generative AI performance reports show impressions in AI Overviews and AI Mode by page, but not which URLs ChatGPT, Perplexity, or Gemini cite. AI referral traffic only shows that someone arrived from an AI answer, not which answer cited the page.
What stays useful is an append-only row, split by engine: prompt, date, region, mention, citation, full URL, and who owns that URL. Do not publish a rate from one run. Consecutive runs of the same prompt share only 24% of cited URLs in ChatGPT and 35% in Google AI Overviews, and roughly 65% of the sources an engine cites for a query change from one day to the next. Until that sample can carry a number, store the row and withhold the score.
- Log the exact URL an engine credits, and keep a brand mention in a separate field.
- Google Search Console covers AI Overview and AI Mode impressions only, not ChatGPT, Perplexity, or Gemini citations.
- Split engines into their own columns so a Google-only win cannot look like a blended rate.
- Own pages are a small slice of citations, so the log must capture competitor and third-party URLs.
- Withhold a citation rate until the same prompt has been sampled enough times to carry it.
AI Citation Tracking Is a URL Credit, Not a Brand Mention
AI citation tracking asks whether an engine credits a specific page as a source. Brand mention tracking only asks whether the name appears. Those are not two readings of the same event. An answer can recommend the brand while citing someone else's article, and it can cite a page without naming the company, so mention rate and citation rate are separate counts.
The split is wide enough that blending the two hides the work. In ChatGPT answers tracked by Airefs, 55% of answers that mention a brand never cite its site, 63% of answers that cite the site never name the brand, and only 4.4% have both a mention and a citation. A name in the sentence is not a link in the sources, and a link in the sources is not a name in the sentence.
What belongs here is whether engines credit the page, not whether the brand gets a passing mention. The core citation numbers are frequency, share, and source attribution. Never fold the name and the link into one visibility score. A name-only workflow belongs in the existing brand-mention log, and the broader picture of being seen belongs in the AI visibility guide. This article owns the URL record: the exact page an answer credits, kept apart from the mention.
Separate counts — A citation is a credited URL. A mention is a name. Count them apart, and do not collapse them into one visibility score.
Log ChatGPT, Perplexity, and Google AI Overviews First
A one-person team should log ChatGPT, Perplexity, and Google AI Overviews first, each in its own column. Gemini, AI Mode, Copilot, and Claude can wait until those three can be rerun on a schedule. An engine waits when you cannot replay it with the same prompt, date, and region. A blended column is worse than a deferred one: it hides a Google-only win and treats a missing link as if every answer had the same number of slots.
They do not. In Ansvisor tracking from September 15 to October 14, 2026, tracked AI answers averaged 7.2 cited links per result. Across that panel, Google AI Overviews returned 138,032 citations across 10,084 results, while ChatGPT returned 86,519 across 16,582. A missing URL means less on a short list than on a long one, so the same gap is not the same event on every engine.
Mean per-page influence, from Metavert, runs the other way from list length: 0.27 on ChatGPT, 0.058 on Google, and 0.065 on Perplexity. One credited URL on the shorter ChatGPT list carries more of the answer than one link among a much longer Perplexity list. That is another reason not to average the three into a single citation rate.
Why the same question credits different pages
The engines do not share a source pool. Among top-50 cited sources in Ahrefs’ September 2026 cut, AI Overviews led with YouTube at 22.9% and Reddit at 18.5%. ChatGPT led with Reddit at 16.8% and Wikipedia at 7.0%. Perplexity led with Reddit at 21.6% and YouTube at 20.8%. Logging one engine and copying the result across the others will miss who actually got the credit.
Citation display is not uniform either. Perplexity says every answer includes citations to original sources, while OpenAI says ChatGPT responses that use web search may include citations. Log the URL that was shown on that run, not the citation you assume the engine always prints.
Three columns, not a blend — Keep ChatGPT, Perplexity, and Google AI Overviews in separate columns, and defer any engine you cannot rerun with the same prompt, date, and region. A missing link means different things once slot counts and source pools diverge.
Leading Source Citation Share
What Every Citation-Log Row Must Capture Before a Rate
Once ChatGPT, Perplexity, and Google AI Overviews each have their own column, do not calculate a rate until the row can stand alone. The usable minimum is seven separate fields: the prompt, the engine, whether the answer mentions the brand, whether it cites a website, the exact page credited, the competitor URLs on that same answer, and the collection date. None of those can be folded into one visibility cell.
Add region and an owner bucket—owned, competitor, or third-party—before a later rate is allowed to use the row. Region stops markets from mixing. The bucket stops every non-owned URL from being treated as a loss.
When your own URL is missing
Still append the row. Put the quoting page in the citation URL field, mark the owner bucket, and record mention yes or no independently. A third-party page that quotes you is earned attribution, not an owned citation. Dropping the row because your domain is absent is how the log misses who is actually carrying the category.
Those rows are most of the record, and the sample has to be labeled. In Airefs’ January–October 2026 set of more than 300,000 citations, mostly tech challengers, the average brand’s own site took 1.4% of ChatGPT citations and 1.8% of AI Overviews citations. Tracked competitors took 8.1% of ChatGPT citations, about six times the owned share, and 90.5% went to neither the brand nor a tracked competitor.
Wider owned-share figures are not a benchmark. Żatuchin measured 14.3% owned across 128 brands, which leaves 85.7% on sites the brand does not own. Kumar put brand-owned domains at 2.9% of 149,912 citations. Use them to justify capturing third-party and competitor URLs, not as a target your next run should hit.
Ship one stable header and leave per-engine field variants to the cluster: prompt, engine, region, brand mention, website citation, citation URL, owner bucket, competitor URLs, collection date. Keep those columns unchanged so a later example refresh does not break the log.
Before any rate — A row is usable only when prompt, engine, mention, citation, exact URL, competitors, date, region, and owner bucket are separate fields—and a third-party page that quotes you is still a row, not a missing owned citation.
Brand-Owned Share of Citations
How Many Prompts Are Enough, and How Often to Rerun Them
A complete row still cannot carry a rate until that same prompt comes back. Enough prompts is the set one person can rerun, not the largest set they can fire once. Start small, version the sheet, and point at the existing prompt-set guide instead of rebuilding the list every time an engine adds a slot.
Put unaided buyer questions, comparisons, and problem queries in that set—the intents where a credited URL can change a decision. Freeze each prompt’s wording. If the question changes, a different answer is not evidence that the citation moved.
A trend is not real after one run, or after a next-day check. Consecutive runs of the same prompt shared only 24% of cited URLs in ChatGPT and 35% in Google AI Overviews, from a small sample of run pairs. Log what was shown. Do not treat that snapshot as the engine’s standing source list.
Roughly 65% of the sources an engine cites for a query change from one day to the next, so visibility is a distribution, not a single check. Rerun the same prompts across multiple days before calling a presence, an absence, or a gap real. One volatile answer must not be allowed to move a rate, a share, or a refresh.
Wait for the sample — Withhold any citation rate, share, or refresh until the same fixed prompt has been sampled often enough that one day’s URL set cannot swing the decision.
Does Google Search Console Replace a Citation Log?
No. Once a single run is no longer treated as a rate, Search Console is the next report people open, and it still does not replace the citation log.
Since June 2026, Google Search Console generative AI performance reports show impressions in AI Overviews and AI Mode by page. That covers Google. It does not show which URLs ChatGPT, Perplexity, or Gemini cite, which competitors Perplexity references, or which sources Gemini relies on. An impression on your page is not a record of the URL an answer credited.
ChatGPT, Gemini, Perplexity, and Google AI Overviews expose no official analytics for brand mentions or citations. A console report cannot fill those columns. The engine, the mention, the citation yes or no, and the exact page still come from the answer you logged, not from a Google impression total.
AI referral traffic and server logs can confirm that a visit came from an AI surface. They only tell you someone arrived from an AI answer, not which answer cited you. That visit check sits beside the prompt log as confirmation. It is not a substitute for the quoted URL, and it cannot rebuild a missing row.
What each source is allowed to prove
- Use Search Console for Google impression context on AI Overviews and AI Mode.
- Use the server log for a visit check: did traffic arrive from an AI surface?
- Use the prompt log for the exact URL the answer credited, including a missing own URL.
If those three disagree, keep the prompt-log row and note the conflict. A visit without a logged URL is not a citation, and a Google impression without a credited page is not one either.
Not a substitute — Search Console and referral logs confirm Google impressions and AI visits. Only the prompt log records the exact URL an answer credited, and that row wins when the three sources conflict.
Citation Share of Voice, and When the Sample Is Too Small
Citation share of voice is your cited URLs as a share of the URLs one engine credited in that sample. It is not mention share, and it is not a blend of ChatGPT, Perplexity, and Google AI Overviews.
The idea is a fraction of the pages that engine actually quoted. Do not ship a weighted formula that mixes engines, slot counts, or brands. The hold rule is the point: one run, one day, or a mixed-engine total is too small to publish.
Fractl’s July 2026 panel of 279 brand-relevant queries is the warning. Its content was cited in about 60% of queries, but that figure hid a split: 76% of Google AI surfaces versus 8.5% of other engines. A blended score looked like a broad result and was mostly a Google-only one.
Refuse the number when engines are combined, when the prompt has not been rerun, or when a narrow challenger set is treated as a universal benchmark. For the wider measurement frame, use the AI visibility guide. Do not turn this log into a scorecard.
Hold the rate — Publish citation share of voice only for one engine, after the same prompt has been sampled more than once—never from a single run, a single day, or a blend across engines.
Which Crawlers Have to Reach a Page Before an Engine Can Cite It
A share of voice still assumes the page was reachable. For OpenAI, separate the bots before changing robots.txt. GPTBot is the training crawler and OAI-SearchBot is the search index; both honor robots.txt. ChatGPT-User fetches may not follow robots.txt, because they are user-initiated. Blocking the search bot keeps a page out of that index. Allowing it does not guarantee a citation. One blanket rule treats training, indexing, and a live user fetch as the same visit.
Rank still helps, and it still is not the log. Fractl reports a page at Google position 1 has roughly a 46–48% chance of an AI citation, versus about 20% at position 10, so a strong position can still leave the page out of the sources an answer quotes. Overlap has fallen: Ahrefs’ March 2026 update found only 37.9% of URLs cited in Google AI Overviews also in the organic top 10, down from about 76% in July 2025. BrightEdge’s February 2026 method put that overlap near 17%. A strong position raises the odds; it does not name the credited URL.
The quoted URL is worth logging because clicks follow the citation, not just the rank. An AI Overview is associated with a 58% lower click-through rate for the top organic result, while being cited in the overview is associated with 120% more organic clicks per impression than not being cited. Both are associations, not controlled effects. Once a page is in the pool, what gets quoted is a separate question—the AI Overview citation-patterns guide covers that. Schema, length, and Domain Rating are not missing columns on the citation log.
Reach, then credit — A search bot has to be allowed to index the page before that engine can cite it, but rank, schema, and a training-bot allow do not substitute for the exact URL the answer credited.
AIO URLs Also in Top 10
What Stays Manual, and When a Repeated Gap Means a Refresh
Schema, length, and Domain Rating stay out of the log for the same reason most decisions stay out of the automation. Automate only the scheduled rerun and the append. A person still checks whether the cited passage is accurate, and whether the same gap has returned on the same prompt and the same engine.
Do not automate a share-of-voice score, a sentiment score, or the call to publish or refresh. If the sample is thin — a single run, or a prompt that has not been repeated — fail closed and leave the rate blank.
A lost citation triggers a refresh only when the gap repeats on a page that already matches the prompt. A new intent with no matching page is the case for a new URL. One missing run is neither.
Time that refresh from the evidence, not a hunch. Cited pages are kept current by updates, and the useful window depends on how quickly the query goes stale.
Do not ship a new page, or a markup pass, as the fix for that repeated gap. A controlled Ahrefs study of 1,885 pages found adding schema produced no major citation uplift: difference-in-differences were AI Overviews −4.6%, AI Mode +2.4%, and ChatGPT +2.2%, the latter two within noise.
The detailed refresh steps belong in the companion playbook. What this log hands off is narrower: a repeated, engine-specific gap on an existing page that already answers the prompt.
Fail closed — Automate the rerun and the append. Refresh only a repeated gap on a matching page; one miss is not a new URL, and schema is not the fix.
Key Takeaways
Start the nine-column log for ChatGPT, Perplexity, and Google AI Overviews, and withhold every rate until the same prompts have been rerun across multiple days.
Frequently Asked Questions
You Might Also Like
- Measurement Brand Mention Tracking for AI Search: How to See Who Cites You
- Measurement How to Audit ChatGPT Mentions for Your Brand Without Guesswork
- Measurement Search Console for Content Ops: Queries That Should Become Briefs
- Measurement Content Decay Checklist: 12 Signals to Log Before You Rewrite
- Measurement Impressions Without Clicks: A Hold-or-Rewrite Rule for Existing Pages