ChatGPT SEO: How ChatGPT Search Finds and Cites Sites
99Visibility Research · Updated October 21, 2026 · 9 min read
ChatGPT SEO means making your site reachable and quotable for ChatGPT search. OpenAI documents three crawlers. OAI-SearchBot decides whether your pages can appear in ChatGPT search answers, ChatGPT-User fetches pages when a user's request triggers it, and GPTBot governs training only. Allowing OAI-SearchBot and letting OpenAI's published IPs through your firewall makes you eligible. It does not guarantee a citation, because ChatGPT decides per question whether to search at all.
How ChatGPT search finds a site
ChatGPT does not search the web for every question. As of October 2026, search in the ChatGPT app runs at the model's discretion: for each prompt, the model decides whether to go to the web or answer from memory.
When it answers from memory, it uses what it learned in training, frozen at a knowledge cutoff. OpenAI's model documentation lists a February 16, 2026 cutoff for the GPT-5.6 family and August 31, 2025 for the Instant path (chat-latest). So "ChatGPT's knowledge" is not one fixed thing, and nothing you publish this quarter reaches an answer given without search.
When it does search, OpenAI's help center says ChatGPT "typically rewrites your query into one or more targeted queries" and sends them to search providers. The query that retrieves your page is usually not the prompt the user typed. If memory is enabled, saved memories may shape that rewrite too.
OpenAI's full disclosure on ranking is short: ChatGPT ranks results "using multiple factors" and "placement is not guaranteed." No factor list exists.
The four stages
It helps to split a ChatGPT answer into four stages:
- Parametric: what the model knows with no web access. Nobody controls this in the short term.
- Access: whether OpenAI's crawlers may fetch and store your page. You and your CDN control this.
- Retrieval: whether your page enters the model's context for a given query. OpenAI controls this.
- Generation: which retrieved pages get used and cited. The model controls this.
Classic search engine optimization mostly works on stage 3. ChatGPT SEO starts at stage 2, because a page that fails access never gets a chance. For how this differs from Google's setup, see ChatGPT search vs Google search for site owners.
OAI-SearchBot, ChatGPT-User and GPTBot: what each controls
OpenAI's crawlers page describes three agents with separate jobs. Mixing them up is the most common ChatGPT SEO error.
| Crawler | What OpenAI says it does | What blocking it does |
|---|---|---|
| OAI-SearchBot | Surfaces websites in ChatGPT's search features | Pages "will not be shown in ChatGPT search answers, though can still appear as navigational links" |
| ChatGPT-User | Fetches pages for actions a user initiates | "Not used to determine whether content may appear in Search". Robots.txt rules "may not apply" |
| GPTBot | Crawls content that may be used to train foundation models | Signals your content should not be used for training. No search effect is documented |
OpenAI states that "each setting is independent of the others." You can allow search and refuse training at the same time. A robots.txt that does exactly that looks like this:
User-agent: OAI-SearchBot
Allow: /
User-agent: GPTBot
Disallow: /
What this means in practice:
- OAI-SearchBot is the only search lever. If it is disallowed, you are out of ChatGPT search answers.
- GPTBot is a training decision, not a visibility decision. OpenAI nowhere claims that allowing it helps retrieval. Whether it affects what future models know about your brand has not been measured by anyone.
- ChatGPT-User is not a reliable block. Because a user triggers it, OpenAI says robots.txt may not apply. Index-time and answer-time controls are different things.
The second gate: IP addresses, firewalls and CDNs
Robots.txt is necessary but not sufficient. OpenAI's help center says that to make a site eligible, you should "allow OAI-Searchbot to crawl the site and confirm that the website host or content delivery network allows traffic from OpenAI's published searchbot IP addresses." The word is and, not or.
OpenAI publishes the searchbot ranges at openai.com/searchbot.json. When the evidence base checked it in August 2026, the file listed IPv4 prefixes only, with no IPv6 entries. An origin reachable only over IPv6 would be out of reach for that crawler whatever robots.txt says.
OpenAI also warns against relying on IP lists alone. The safer setup validates the user agent together with your CDN's verified-bot program, rather than hardcoding ranges that change.
Why this fails silently
Bot-management tools can block legitimate crawlers, often with a 403 Forbidden response or a JavaScript challenge the crawler cannot solve. Nothing in any dashboard tells you. Robots.txt says allow, the firewall says no, and you simply never appear.
CDN defaults can change without you editing anything. Since 15 September 2026, Cloudflare blocks its Training and Agent crawler categories by default on ad-displaying pages for new domains, new sites on existing accounts and existing free-tier customers. Search stays allowed by default, but it is worth confirming which category your settings actually let through.
If your robots.txt looks right and you still never show up, work through what else can block ChatGPT. The direct test is to request a page as each crawler: the AI Crawler Checker does that and shows which ones your firewall turns away.
What you control and what you don't
Be clear about the split before spending time on ChatGPT SEO.
In your control
- Per-bot robots.txt rules. Allow OAI-SearchBot, and decide on GPTBot as a separate training question.
- Network reachability. Your WAF, CDN and bot-management settings.
- Server-side rendering of the content that matters. Vercel's crawler study found ChatGPT's crawlers fetched JavaScript files on 11.50% of requests but did not execute them, so they "can't read client-side rendered content." Independent testing in June 2026 found the same for GPTBot, OAI-SearchBot and ChatGPT-User. If your prices or product names appear only after JavaScript runs, ChatGPT's crawlers likely never see them.
- Stating specific facts plainly. A price, a number or a one-line definition on a fetchable page gives ChatGPT a sentence it can quote.
- Consistency. The same fact stated the same way on your pricing page, about page and footer.
Not in your control
- Whether ChatGPT searches for a given prompt.
- The rewritten queries it actually sends.
- How it ranks results, or which retrieved pages it cites.
- What its training data already says about you.
One thing sits in between. When ChatGPT cites other sites for your category instead of yours, being named on those sites is associated with appearing in the answer. The evidence shows association, not a guaranteed effect. See your own site vs third-party mentions for how to weigh the two.
A practical order of work
Work in this order. Each step removes a block that makes every later step pointless.
- Check robots.txt for OAI-SearchBot. Look for a blanket AI block or a wildcard rule that catches it. The free ChatGPT search block check reads your file for you.
- Test the firewall and CDN. Request a real content URL with OAI-SearchBot's documented user agent and look at the status code. A 403, 429 or challenge page is a fail. Also confirm
/robots.txtitself is reachable. - Compare raw HTML with the rendered page. Fetch the page with JavaScript off. Anything that matters (prices, plans, product names, locations) should be in that raw HTML.
- State your key facts in plain sentences. Say what you sell, what it costs and who it is for, in text a crawler can fetch.
- Fix contradictions on your own site. If two pages give different prices, the model has no reason to pick the right one.
- Look at who ChatGPT cites instead of you. Run your buyer questions, note the sources it names, and see whether you are mentioned on them.
- Measure with the conditions written down. Record whether search ran, whether you were logged out, and whether memory was off. Without that, a result can't be repeated.
Say you run a hypothetical accounting firm in Denver. Steps 1 to 3 might take an afternoon with your developer. Steps 4 to 6 are ongoing editorial work. None of them promises a citation, but skipping 1 to 3 can rule one out entirely.
Common ChatGPT SEO mistakes
- Allowing GPTBot to get found. GPTBot governs training. Search uses OAI-SearchBot.
- Blocking GPTBot and thinking you left ChatGPT search. You didn't. The settings are independent.
- A blanket AI block. A single rule aimed at training bots that also catches OAI-SearchBot quietly removes you from ChatGPT search.
- Trusting robots.txt while the firewall blocks. OpenAI's own wording requires both.
- Treating Bing rankings as a ChatGPT shortcut. In Otterly's 2026 experiment with two AI-generated sites, ranking in Bing produced effectively no ChatGPT citations, even while ChatGPT's crawlers visited the sites. OpenAI says only that ChatGPT search "sometimes" partners with other providers.
- Adding schema or llms.txt for ChatGPT. Ahrefs tracked 1,885 pages adding schema against matched controls and found "no major uplift in citations on any platform," ChatGPT included. Google says its Search ignores llms.txt, and no engine, OpenAI included, documents reading it. Existing markup does no harm. It just isn't a lever for AI answers.
- Rewriting for an "AI-friendly" style. Nearly every published GEO effect was measured on pages already inside the model's context, and the best-designed studies found those techniques ineffective or harmful. See lab GEO studies vs live engines.
- Hidden text or prompt injection. Content that tries to instruct the model, or shows crawlers something users can't see, is manipulation. It is illegitimate, it can be detected, and it puts your brand's reputation at risk.
How to measure ChatGPT visibility honestly
Most ChatGPT visibility numbers hide what they average over. Three things to know:
- Search state varies. Published estimates of how often ChatGPT searches range from about 18% of conversations (Profound) to 80.5% of a 100-prompt set (cloro), because they measure different things. If you didn't see citations, you don't know whether the answer came from search or from training data.
- Retrieved is not cited. OpenAI's API returns the full list of sources consulted separately from citations, and says the number of sources is often greater. A citation count undercounts influence.
- Traffic tags are partial. ChatGPT adds
utm_source=chatgpt.comto referral links, but free-tier and mobile-app clicks often arrive untagged. Treat referral counts as a floor.
There is also no "ChatGPT rank" to track. OpenAI publishes no position data, so any rank number has nothing to be checked against.
Measure ChatGPT on its own, separate from other engines, because results rarely transfer cleanly (does what works on one AI engine work on the others). For a quick snapshot, the free checker on this site shows whether AI engines name you for three buyer questions. It is a point-in-time check, not tracking.
Does blocking GPTBot remove my site from ChatGPT search? No. OpenAI's crawlers page says each setting is independent. GPTBot controls whether your content may be used to train OpenAI's models. OAI-SearchBot controls whether your pages can appear in ChatGPT search answers. You can disallow GPTBot and allow OAI-SearchBot in the same robots.txt, and you stay eligible for search. Blocking OAI-SearchBot is what removes you, apart from navigational links.
Do I need to allowlist OpenAI's IP addresses? You need to make sure your host or CDN does not block them. OpenAI's help center makes eligibility conditional on both allowing OAI-SearchBot and letting traffic from its published searchbot IPs through. OpenAI also warns against relying on IP lists alone. The practical approach is to verify crawlers by user agent plus your CDN's verified-bot program, then test a real page to confirm you get a 200 response.
If I rank well in Bing, will ChatGPT cite me? Not necessarily. OpenAI says ChatGPT search sometimes partners with other search providers, but publishes no measured link between Bing rankings and ChatGPT citations. In Otterly's 2026 experiment, two sites that ranked in Bing got effectively no ChatGPT citations, even though ChatGPT's crawlers visited them. Being in Bing's index is worth having for Copilot. It is not a ChatGPT strategy on its own.
Will schema markup or an llms.txt file help ChatGPT find my site? There is no credible evidence that either does. Ahrefs' matched-control study of 1,885 pages found adding schema produced no major uplift in AI citations on any platform it tracked, ChatGPT included. No engine, OpenAI included, documents reading llms.txt. Keep existing markup if you use it for other reasons, since it does no harm. Spend ChatGPT effort on crawler access and plain, fetchable facts instead.
Why does ChatGPT describe my business with outdated information? The answer may not have used search. ChatGPT searches at the model's discretion, and when it doesn't, it answers from training data frozen at a cutoff. OpenAI lists February 16, 2026 for the GPT-5.6 family and August 31, 2025 for the Instant path. Recent changes can't reach those answers. What you can do is keep current facts stated clearly on pages OAI-SearchBot can reach, for answers that do search.
Sources
This page is AI-assisted. It was written from a verified evidence base and checked against our editorial policy. Engine behaviour changes often; facts are as of October 21, 2026.