In short

A user-triggered fetch is the moment an AI assistant opens a page because a person has just asked it a question. It fetches the page for exactly that answer. OpenAI calls the agent for this ChatGPT-User, Anthropic Claude-User, Perplexity Perplexity-User.

That sets it apart from the same providers’ crawlers. A crawler such as GPTBot or ClaudeBot fetches pages in advance, for training a model or for a search index. The user-triggered fetch happens at the moment of the question.

Why it matters

Of all requests from an AI provider, this one comes closest to a mention. When ChatGPT-User fetches a page, someone asked ChatGPT something, and ChatGPT considered your page useful for the answer. Whether it was then named in the answer is not in the logs. That it was considered is.

There is also a difference many overlook: the three providers treat robots.txt differently for these fetches.

Agent Provider What robots.txt does, according to the provider
ChatGPT-User OpenAI Because a user triggers the fetch, robots.txt rules may not apply
Perplexity-User Perplexity Because a user requested the fetch, it generally ignores robots.txt rules
Claude-User Anthropic A block in robots.txt prevents the fetch, with the note that visibility in Claude may drop

An example from our own records

We analysed the CloudFront logs of k-i-soft.ch over 31 days, from 13 July to 12 August 2026, and checked every request against the providers’ published address ranges.

Agent with this identifier of which genuine Share genuine
ChatGPT-User 907 88 9.7 percent
Perplexity-User 47 0 0 percent
for comparison: GPTBot 547 239 43.7 percent
for comparison: OAI-SearchBot 592 304 51.4 percent

The ChatGPT-User identifier appeared on 29 of 31 days. 88 fetches were genuine, so around three a day. Nine in ten requests with this identifier came from addresses that do not belong to OpenAI. For Perplexity-User, not a single fetch in this period was genuine.

Of all identifiers, the one that comes closest to a mention is the one forged most often. Whoever counts it unchecked reports ten times the real figure. The full analysis is in the post Three out of four AI visits to my site were not AI.

The most common mistake

“We blocked GPTBot in robots.txt, so ChatGPT does not read our site.”

GPTBot is the crawler for training. The block keeps it away, nothing more. If someone asks ChatGPT about your company, ChatGPT-User can still fetch the page, and OpenAI itself writes that robots.txt rules may not apply to it. Whoever really wants to lock AI systems out has to look at each agent individually. Whoever wants to be found should never block the fetch agents.

Where the boundaries run

AI crawler is the umbrella term for programs from AI providers that fetch pages. The user-triggered fetch is a subtype of it, triggered by a question. More under AI crawler.

Search crawlers such as OAI-SearchBot or Claude-SearchBot build an index that search draws on later. They come regardless of any particular question.

Query fan-out is the step before: the AI breaks the question into searches and selects from the results. The user-triggered fetch then opens individual pages from that selection. See Query fan-out.

AI referral is the person who then comes to your site through a link in the answer. The user-triggered fetch is the machine that looked beforehand.

How to check it yourself

Search your access logs for the identifiers ChatGPT-User, Claude-User and Perplexity-User. Check the source address of every request against the provider’s list. OpenAI publishes a separate list for ChatGPT-User, Perplexity one for Perplexity-User. How that works is under Verified crawl.

Then look at your robots.txt. If it blocks GPTBot, check whether you really only meant to exclude training. If it blocks the fetch agents, you are locking yourself out of answers being written about you right now.

Sources

Provider pages retrieved on 1 October 2026.