How to Check If ChatGPT Cites Your Website
Client-facing citation check: SearchBot access, two weeks of frozen prompts, URL-level sources, then chatgpt.com referrals. We do not call a mention a cite.
We will not tell a client they are "cited by ChatGPT" because someone on their team got a friendly answer in a logged-in chat. Cited means a URL we control showed up as a source. Named without a link is a mention. Traffic with utm_source=chatgpt.com is a referral. We use Promptwatch for that ledger, the same platform we run client programs on. OpenAI's FAQ and crawler docs for access.
Google Search Console does not answer this. We say that in the first meeting so nobody pastes an Overview screenshot into a ChatGPT slide.
Access pass
OAI-SearchBot allowed. Logs versus published IPs. About 24 hours after robots.txt. We separate GPTBot (training) in the same meeting so legal does not block Search by accident. ChatGPT-User is not the Search token. OpenAI says robots.txt may not apply to User because a user asked.
If they want a URL out of Atlas title-only leftovers after a third-party pickup, noindex still needs the crawler to fetch the tag. We do not Disallow and then argue about citations.
A 403 on the money URL is a security ticket, not a content brief.
Prompt pass
Twenty questions from sales, including competitor names. Same wording each week. ChatGPT Search, not only chat that never browses. We record cited URL. Reddit winning is a finding. We do not start a blog factory that day. An old /blog/2019 winning is a finding. We fix that URL.
Explore (10 ChatGPT prompts) is a demo. Essential at $95/mo is the working set for prompt and citation tracking, but it has no listed crawler-log allowance. Professional at $245/mo is the first brand plan with crawler logs and a larger prompt list. We import GSC queries as candidates. We do not treat GSC generative impressions as ChatGPT cites. Paid checks are daily. We do not sell instant alerts.
Traffic pass
utm_source=chatgpt.com in GA4 and in Promptwatch visitor analytics (script or GTM). Two numbers. Never one blended score. If referrals exist and cites do not, we say so. If cites exist and referrals do not, we say so.
What we refuse to count
HubSpot grader. One founder screenshot. Otterly's $29 mention check as the system of record on a multi-engine retainer. Profound Starter as a multi-engine cite log (ChatGPT-only, 50 prompts, annual $99). Peec as a ranked first option.
When the check fails, tickets go in order. No fetch: infra. Fetch, mention, no URL: they are a name. Fetch, Reddit cited: offsite. Missing claim on a crawlable page: Content Agents to Webflow or Framer after review, 5 articles on Essential. WordPress: write in the CMS they already use.
The check is boring on purpose. Access, stored sources, referrals. Then tickets.
We wait about 24 hours after robots.txt before we call Search dead. We screenshot WAF allows against published IPs. We split GPTBot in the same meeting. ChatGPT-User is not the Search token. Atlas title-only leftovers get a noindex ticket, with crawl access so the tag can apply.
Explore is a demo. Essential at $95/mo is the working set for prompts and citations. Professional at $245/mo is the first brand plan with crawler logs, so that is where we diagnose fetches in Promptwatch. Content Agents only after the miss is a missing claim on a crawlable page. Webflow or Framer, review inbox. WordPress: the CMS they already use.
That is the only version we will put in a QBR.