# Which AI agents does Agent Stamp name?

The published user-agent tokens, when the request was not signed. A valid signature is named from the key’s host, not from the user-agent. A failed signature stays Unknown. Copilot is not on the list. GrokAgent is named Grok. A token written Agent/Name is stamped with that name.

Declared is self-reported. Signed authenticates the request operator, not buyer intent or payment. ChatGPT-User, Claude-User, and Perplexity-User are user-triggered page fetches, not purchase evidence by themselves. Official docs: [Claude-User](https://support.claude.com/en/articles/8896518-does-anthropic-crawl-data-from-the-web-and-how-can-site-owners-block-the-crawler), [Perplexity-User](https://docs.perplexity.ai/docs/resources/perplexity-crawlers), [Google-Agent](https://developers.google.com/crawling/docs/crawlers-fetchers/google-user-triggered-fetchers).

## Unsigned

The token has to appear in the user-agent. The stamp is declared. GrokAgent reads Grok. Agent/Muse reads Muse. A URL that only contains /Agent/ does not. GrokAgent/1.0 is Grok, not a name of 1.0.

| Token | Stamp |
| --- | --- |
| ChatGPT-User | ChatGPT (declared) |
| Claude-User | Claude (declared) |
| Perplexity-User | Perplexity (declared) |
| Google-Agent | Google Agent (declared) |
| Meta-ExternalFetcher | Meta (declared) |
| MistralAI-User | Mistral (declared) |
| DuckAssistBot | DuckDuckGo (declared) |
| GrokAgent | Grok (declared) |
| Agent/Name | That name (declared) |

## Crawlers at checkout

These tokens belong to crawlers. A checkout that names one is Unknown: OAI-SearchBot, OAI-AdsBot, GPTBot, Claude-SearchBot, ClaudeBot, anthropic-ai, PerplexityBot, Google-Extended, GoogleOther, Applebot-Extended, Meta-ExternalAgent, Amazonbot, Bytespider, cohere-ai, CCBot, Diffbot, YouBot.

## Signed

A valid signature replaces that table. The name comes from the host that published the key. A subdomain counts. Any other host is stamped as that host. Signed means the operator authenticated the request, not that a person placed an order or paid.

| Key host | Signed name |
| --- | --- |
| openai.com, chatgpt.com, oaistatic.com | ChatGPT |
| anthropic.com, claude.ai | Claude |
| perplexity.ai | Perplexity |
| google.com, googlebot.com, agent.bot.goog | Google |
| amazon.com, amazonbot.amazon | Amazon |
| facebook.com, meta.com | Meta |
| apple.com | Apple |
| bytedance.com | ByteDance |

## Not on either list

Googlebot, AdsBot-Google, Bingbot, DuckDuckBot, Baiduspider, YandexBot, AhrefsBot, SemrushBot, PetalBot, facebookexternalhit, Twitterbot, LinkedInBot, Slackbot, Embedly, and Qwantify stay Unknown. So do curl, an empty user-agent, and Headless Chrome, PhantomJS, Selenium, Puppeteer, and Playwright.

A normal Chrome, Safari, Firefox, Edge, Opera, or Samsung browser, with no token from the first table and no signature, is Human when a person uses the checkout. The same browser with no person at the place-order control is Unattended. A browser that reports itself as automated is Unattended too. Muse, Instinct, Catch, and Grok Bot are named when they send Agent/Name or fill the checkout agent field. A failed signature does not take that name.

Canonical page: https://getagentstamp.com/blog/which-agents
