Someone asked ChatGPT who to read on your topic. A competitor appeared. You did not. The usual spend is a GEO retainer, an llms.txt, and a schema plugin. The usual miss is simpler: the Search crawler is blocked, the claim is not in the HTML, or nobody on the page has a name a machine can attach.
There is still no published ChatGPT ranking you can buy. How answer engines select sources is the selection playbook. This page is the work: what to change this week so ChatGPT Search can fetch you, quote you, and name you.
1. Name the citation you want
OpenAI documents three agents. They are not aliases. Pick the job before you touch robots.txt.
ChatGPT Search is the thing most founders mean by “get cited.” OpenAI’s crawler docs say OAI-SearchBot surfaces websites in ChatGPT Search. Sites that opt out “will not be shown in ChatGPT search answers,” though they can still appear as navigational links. The publishers FAQ is blunter: for your content to be included in summaries and snippets, do not block OAI-SearchBot.
Training is GPTBot. Disallow it if you do not want the page used to train OpenAI foundation models. It is a separate switch. You can allow Search and refuse training.
A person-triggered fetch is ChatGPT-User. OpenAI says it is not an automatic crawl, that robots.txt may not apply, and that it is not used to decide Search inclusion. A hit in your logs from ChatGPT-User is not proof you are in Search.
There is a fourth agent, OAI-AdsBot. It only visits landing pages you submitted as ads. It is not Search. Ignore it unless you buy ChatGPT ads.
If a vendor slide collapses those names into one “ChatGPT bot,” throw the slide out.
Test Search, not memory. A logged-in chat that answers from training is not ChatGPT Search. If the reply has no sources, you tested the wrong product. Turn search on and ask again. A citation you cannot point at in the answer is not a citation.
2. Open the Search door
Paste this if ChatGPT Search is the goal:
User-agent: OAI-SearchBot
Allow: /
Set training on purpose, not by accident:
User-agent: GPTBot
Disallow: /
or Allow: / if that is your training policy.
Then read the rest of the file. A later Disallow: /blog/ under User-agent: * can still hide the URL you care about. OpenAI also recommends allowing requests from the published Search IP ranges at openai.com/searchbot.json. A Search-side robots.txt change can take about 24 hours.
Check the live file, not the repo:
curl -sS https://your-domain/robots.txt
Search access logs for OAI-SearchBot after a day. No fetch means the door is still closed, the IP range is blocked, or the change has not propagated. If robots.txt already allows SearchBot, look at the firewall next. Cloudflare Bot Fight Mode, a WAF rule on datacentre ASNs, or a block on the IPs in searchbot.json will drop the crawler before it reads your Allow. OpenAI cannot cite a 403.
Two traps from the publishers FAQ:
- Blocking SearchBot does not always hide the URL. If OpenAI gets the address from a third-party search provider or by crawling other pages, it may still show the link and title in ChatGPT Atlas. If you do not want even that, use
noindex. The crawler has to be allowed to read the tag. noindexon a URL you do want cited is a self-own. Fetch the HTML and look for it.
This site allows OAI-SearchBot, GPTBot, and ChatGPT-User on public pages, and closes /admin/ and the preview. That is a policy, not a ranking trick.
3. Make the URL fetchable
A crawler cannot quote a page it cannot open.
On the URL you want named:
curl -sI https://your-canonical-url/returns200. Not a chain of soft-404s.- The canonical in the HTML is that URL.
- There is no
noindexunless you meant it. - The sentence you want quoted is in the first HTML response. Not behind a “Read more.” Not only after JavaScript runs. If you ship a JS app, follow ordinary JavaScript SEO: the claim has to exist in what a fetcher can see.
- The URL is in the sitemap and linked from a public page. An orphan URL is a rumour.
- No login wall, no “give us your email” gate, in front of the claim.
curl -sS https://your-canonical-url/ | grep -n "the sentence you think you published"
If grep is silent, ChatGPT Search has nothing to steal.
Google’s AI optimization guide (last updated 10 July 2026) says the same thing in its own house: generative features stay rooted in the core Search index. A page has to be indexed and eligible to appear with a snippet. Check Search Console’s Search generative AI control while you are there. The default is include. If someone excluded the property, you are out of AI Overviews and AI Mode. That control is still rolling out to a subset of owners. That is Google, not ChatGPT. Still check it.
4. Write a sentence ChatGPT can steal
Eligibility gets you in the room. The sentence gets you named.
Bad first screen:
In today’s rapidly evolving AI landscape, brands need a holistic GEO strategy to remain competitive in answer engines.
Nothing there is checkable. Nobody is named. A machine that wants a source will skip you for a page that already answered the question.
Better:
Allowing
OAI-SearchBotmakes a public page eligible for ChatGPT Search answers. It does not make you the named source. OpenAI documents that in its crawler docs and its publishers FAQ. I re-read both on 19 August 2026.
That sentence has a claim, a condition, a source, a date, and a speaker.
Do this on the page you want cited:
- Put the answer in the first two or three sentences. AEO is that craft. One URL, one claim.
- Name the person or the firm in the same screen. “The team” is not an entity.
- Attach the exception in the same breath. “Allow SearchBot. That is not a citation.”
- Date the evidence. “Recently” is not a date.
- Write something a peer could not paste from the ten other GEO posts this week. Google’s own guide says unique, non-commodity, people-first content matters more than GEO hacks: first-hand review beats a summary of summaries. “Seven tips for first-time homebuyers” is commodity. “Why we waived the inspection and what the sewer camera actually showed” is not. Use that standard on your topic.
- Put your name and the claim in the same sentence. “We recommend allowing SearchBot” credits nobody. A sentence that starts with the person or the firm can be lifted with a speaker attached.
- Do not open with a story. A fetch that takes the first screen will quote the anecdote and skip the method.
CITATION is the public test: discoverable, attributed, answer-shaped, evidenced, used. I am not expanding it into a product acronym here. The Findability Engine is in production and not for sale. Do not wait for the hardcover to write the sentence.
5. Put a name the machine can attach
If the page is anonymous, ChatGPT will credit a page that is not.
On the same URL:
- One person name, spelled the same way as on your About page.
- One organisation name.
- A link to an About or author page that confirms the same string.
sameAsonly to profiles you control. Follow one. If it 404s, delete it.
You do not need a new schema type for ChatGPT Search. Google says structured data is not required for generative Search and does not guarantee a rich result. Use it to clarify an entity you already named in the prose. Do not ship FAQPage as a citation tactic. Ordinary FAQ rich results stopped on 7 May 2026. Visible Q&A can still help a reader.
6. Put evidence where the crawler can see it
A claim without a source is a slogan. A source behind a form is not a source.
On the same URL:
- The primary document, as a normal link.
- The date you fetched it.
- The limitation. “This is OpenAI’s Search crawler, not a ranking function” is a limitation. “Trust us” is not.
If the proof lives in a PDF that needs an email, the machine will quote the competitor who put the number in HTML.
7. Skip this week
Do not spend Monday on work the platforms already told you to ignore.
llms.txtwill not get you cited in Google. Google Search does not use it. Keeping one for other tools neither helps nor harms Google visibility. It does not replace crawlable HTML. OpenAI has not publishedllms.txtas a ChatGPT Search ranking file either.- Do not chunk the page for a robot. Google says there is no ideal page length and no requirement to break content into tiny pieces.
- Do not rewrite the page “for AI.” Google says you do not need a special dialect.
- Do not buy mentions. Inauthentic mention-chasing is on Google’s ignore list. A fake quote with your name is a faster way to be wrong in someone else’s answer.
- Do not buy a “we will get you cited in ChatGPT this quarter” retainer until
robots.txtand the first-screen sentence are done. Nobody outside OpenAI has the ranking function.
8. Check whether it worked
A citation is not a visit. A visit is not a conversion.
Appearances. Keep a log: date, prompt, whether your name was in the answer, whether your URL was linked. Do this weekly on the three questions you most want to own. ChatGPT Search does not give you a Search Console clone.
Run prompts that name the job your page owns. Vague “best GEO tools 2026” will cite roundup sites. Better:
- “Who should I read on [your topic]?”
- “What is [your named method], and who defined it?”
- “How do I [the job on the page]? Cite sources.”
- Ask in the language of the page.
Log three different results separately:
- Named. Your person or firm is in the prose.
- Linked. Your URL is a source. That is a citation of the page, even if the prose does not say your name.
- Used, not cited. The answer paraphrases you with no name and no link. You were a silent source. That is not the win.
A week of “neither” after a confirmed fetch is information. It is not a ranking you can buy your way out of this afternoon.
Visits. OpenAI’s publishers FAQ says ChatGPT adds utm_source=chatgpt.com on referral URLs. Track it. Zero clicks do not prove zero citations. People do not always click a source they already read.
Google, separately. Search Console’s Generative AI performance report launched on 3 June 2026. It counts links shown in AI Overviews and AI Mode. It is rolling out. It may stay empty. It is not ChatGPT.
Bing, if you have it. Bing Webmaster Tools announced an AI Performance preview in February 2026. Treat it as another surface, not as a ChatGPT dashboard.
9. A one-hour pass on the page you most want named
Output, not a mood.
| Minute | Work | Done when |
|---|---|---|
| 0–10 | Read live robots.txt. Confirm OAI-SearchBot is allowed on this URL. Confirm GPTBot is a decision. | You can paste the two stanzas. |
| 10–20 | curl -sI the canonical URL. curl -sS and find the claim. | Status 200, claim in the HTML, no surprise noindex. |
| 20–35 | Rewrite the first screen so the claim, the exception, the name, and the date are in the first three sentences. | You can paste those sentences from the live page. |
| 35–45 | Follow one sameAs or About link. Fix or delete it. | It returns 200 and repeats the same name. |
| 45–55 | Add the primary source and the fetched-on date next to the claim. | A skeptic can open the source without a form. |
| 55–60 | Run three prompts in ChatGPT Search. Log name / URL / neither. | The log exists, even if all three lines say “neither.” |
If the first two rows fail, you do not have a citation problem. You have a door problem. Fix the door before you hire anyone to “do GEO.”
Permission is not a name. Write the sentence. Let OAI-SearchBot fetch it. Then look at the answer and see whether you are in it.