What an AI crawler is
The label lumps different things together, and that is where the problem starts. An AI crawler is not a technical category: it is any automated agent operated by a language model company. What separates them is not the technology but the purpose, and that purpose decides what happens when you block one.
There are three purposes and they are worth naming separately. The first is training: fetching text to feed future models. The second is the provider's own search index, the one that lets an assistant return links when it answers. The third is live retrieval, when the user pastes a URL or asks something that forces the assistant to go and fetch the page at that very moment.
Each provider uses a distinct agent for each purpose and documents them separately. OpenAI separates GPTBot, OAI-SearchBot and ChatGPT-User. Anthropic separates ClaudeBot, Claude-SearchBot and Claude-User. Perplexity separates PerplexityBot and Perplexity-User. Google breaks the pattern: it has no agent of its own on this list. It crawls with Googlebot and offers Google-Extended as a control token, not as a bot. Google documents that it has no user agent string of its own and that fetching is still done by its existing agents, which is why that name will never show up in an access log. All it decides is whether already crawled content may be used for Gemini training and grounding.
Treating all of this as one block, with a single rule that covers them all, is the cause of most bad decisions in this area.