The short answer. OpenAI documents the access side of ChatGPT search and very little of the selection side. To be eligible, a page must be reachable by OAI-SearchBot (allowed in robots.txt and not blocked by your host or CDN) and must not carry noindex. OpenAI publishes no list of ranking factors and no site-level citation report. What remains is to be easy to fetch, easy to understand and worth quoting, then to measure what happens with referral data and sampled prompts.
Everything below comes from OpenAI’s crawler documentation and its Publishers and Developers FAQ, as read on 14 October 2026, quoted where the wording matters.
Which OpenAI crawler decides whether you can appear?
OAI-SearchBot. OpenAI’s crawler page describes three agents and says each setting is independent of the others:
| Agent | What OpenAI says it does | What blocking it changes |
|---|---|---|
| OAI-SearchBot | Surfaces websites in ChatGPT’s search features | Opted-out sites are not shown in search answers, “though can still appear as navigational links” |
| ChatGPT-User | Fetches a page when a user asks ChatGPT or a Custom GPT; “not used for crawling the web in an automatic fashion” | OpenAI says “robots.txt rules may not apply”, and it is not used to decide search inclusion |
| GPTBot | Crawls content that may be used to train OpenAI’s foundation models | A training opt-out; documented as separate from search |
So a site can allow OAI-SearchBot and disallow GPTBot, and many do. OpenAI also notes that if both are allowed it may use the results of one crawl for both purposes.
What does OpenAI ask site owners to do?
Four things, all about access.
- Allow OAI-SearchBot in robots.txt. The FAQ’s wording: “make sure you aren’t blocking OAI-SearchBot. If necessary, you may need to update your robots.txt file.”
- Let its traffic through your host and CDN. OpenAI publishes the crawler’s IP ranges at openai.com/searchbot.json. A firewall or bot-protection rule that blocks those addresses overrides whatever robots.txt says.
- Allow time. The crawler page says search changes can take about 24 hours to take effect after a robots.txt update.
- Use
noindex, not robots.txt, to keep a page out. The FAQ explains that if OpenAI obtains the URL of a disallowed page “from a third-party search provider or by crawling other pages”, it may still show the link and title, and that “in order for our crawler to read a meta tag, it must be allowed to crawl the relevant page(s)”.
That fourth point also tells you something about discovery: OpenAI can learn URLs from other pages it crawls and from a third-party search provider, not only from its own crawl of your site.
Discovered
Crawled by OAI-SearchBot, linked from other pages, or known from a third-party search provider.
Fetchable
Allowed in robots.txt, and the host or CDN accepts OpenAI’s published IP ranges.
Stopped by: a Disallow, a WAF or bot rule
Indexable
No noindex on the page.
Stopped by: noindex (the crawler must be able to read it)
Shown as a source
Chosen for an answer by ChatGPT’s own systems.
Not documented: how sources are selected
Afterwards: the visit
Referral links carry utm_source=chatgpt.com, so analytics can count the visits.
What does OpenAI not document?
Most of what people ask about. In the pages linked above, OpenAI does not publish:
- Ranking or selection factors. There is no equivalent of Google’s guidance on what makes a page a good source for an answer.
- A site-level report. There is no counterpart to Search Console’s Generative AI performance report or Bing’s AI Performance report, so you cannot see impressions or citations from OpenAI directly. We cover the two reports that do exist in our Search Console guide and our Bing guide.
- Special markup or files. Nothing in the documentation asks for structured data,
llms.txtor a dedicated sitemap for ChatGPT search.
Anything beyond the access steps above is inference. Our working assumption, which we label as such, is that the qualities that make a page a good source elsewhere, a direct answer, specific claims with sources, a visible date and author, apply here too. We test that assumption with sampled prompts rather than assert it.
How do you measure ChatGPT search traffic?
From the visit side. The FAQ says “ChatGPT automatically includes the UTM parameter utm_source=chatgpt.com in referral URLs”, so analytics tools can attribute the sessions. In GA4 the source shows as chatgpt.com; our AI referral segment tool sets up a report that groups it with other assistants.
That counts visits, not appearances. For how often you are mentioned or cited, and whether the description is right, you need a sampled prompt set run in ChatGPT on a fixed schedule.
What we saw on our own properties
Four of the eight sites in our case studies record chatgpt.com as a session source in GA4:
| Site | Sessions from chatgpt.com | All sessions | Share |
|---|---|---|---|
| woodcharcoal.in | 51 | 446 | 11% |
| onlinephotoprinting.co.nz | 23 | 231 | 10% |
| firebrickssource.com | 30 | 323 | 9% |
| shopifywebdeveloper.co.uk | 16 | 201 | 8% |
These are young sites with small totals, so the shares say more about how little other traffic they had than about ChatGPT. What they do show is that the channel produces real visits for small B2B and e-commerce sites, and that GA4 attributes them without extra setup.
A checklist
robots.txtallowsOAI-SearchBot(check the live file, not the repository).- Your CDN, WAF and bot-protection settings let OpenAI’s published IP ranges through. Test by fetching key pages with the OAI-SearchBot user agent from outside your network; our AI crawler access tool does this.
- Pages you want in answers have no
noindex; pages you want out havenoindexand are crawlable so the tag can be read. - Decide on GPTBot separately, as a training question.
- Analytics groups
utm_source=chatgpt.comsessions into a report you check monthly. - A sampled prompt set records mentions, citations and accuracy in ChatGPT on a fixed schedule.
- Calendar a quarterly re-read of OpenAI’s crawler page and FAQ; agent names and rules change.
What we don’t claim
- We do not claim to know how ChatGPT selects sources. OpenAI does not document it in the pages linked here, and we have said where our assumptions begin.
- We do not claim that any step above causes a mention or a citation. They make a page eligible to be used.
- We do not claim the details are permanent. Vendor documentation changes without notice; re-read the sources before relying on them.