Compare your site's HTTP responses for AI profiles with an automated browser rendering.
These probes approximate request headers, not vendor identity or model input. Review profile sources and limits.
Compare sample sites. Responses can vary by request headers, source network, and time.
How it works
One URL, HTTP response comparison.
The inspector makes two HTTP requests: one using the selected profile, and one using a fixed browser-style User-Agent. A separate Cloudflare browser renders the screenshot. These measurements show how this site's responses differ for our requests; they do not reproduce a vendor's network identity or processing pipeline.
-
01
Pick a URL and a request profile
Choose a documented, approximate, or synthetic User-Agent profile, or supply your own header. The Markdown preference requests a format, but does not guarantee the server will return it.
-
02
Two parallel fetches
A Cloudflare Worker sends the profile and browser-UA baseline requests in parallel. Both are HTTP-only probes from our infrastructure, not authenticated vendor requests.
-
03
Diff body, headers, and signals
Compare status, captured bytes, elapsed time, and body similarity. Review optional discovery files, declared robots rules,
Vary,Content-Signal, and same-origin HTTP Markdown links. Negative discovery results cover only the tested URLs. -
04
Read the verdict
The verdict describes observed HTTP results, not actual provider access. Token counts are captured-body heuristics or separately labeled server estimates, never measured model usage. Real tools may convert or extract content before passing it to a model.
Profile sources and limits
Evidence applies to each stated fact, not the whole request. The exact Accept weights, language, byte limit, and timeouts are inspector settings. A custom User-Agent has no verified provider identity.
The screenshot uses Cloudflare automation with a fixed advertised browser UA, a fixed viewport, and request filtering. Cloudflare's identifying headers remain present even when the User-Agent changes.
- Claude Code
CLI WebFetch tool
User-Agent: approximate. The documented WebFetch header begins with Claude-User. This probe uses that prefix, not a verified complete header. Primary source. Reviewed 2026-10-01.
Accept preference: documented. WebFetch prefers Markdown over HTML. The simulator's exact Accept values and weights are not vendor-verified. Primary source. Reviewed 2026-10-01.
- Claude-User
Claude user-initiated retrieval
User-Agent: approximate. Anthropic documents the Claude-User product token and purpose, not this complete illustrative header. Primary source. Reviewed 2026-10-01.
Accept preference: approximate. Simulator default. The vendor's exact Accept header is not verified; the Markdown toggle overrides this request preference. Reviewed 2026-10-01.
- ClaudeBot
Training crawler
User-Agent: approximate. Anthropic documents the ClaudeBot product token and purpose, not this complete illustrative header. Primary source. Reviewed 2026-10-01.
Accept preference: approximate. Simulator default. The vendor's exact Accept header is not verified; the Markdown toggle overrides this request preference. Reviewed 2026-10-01.
- Claude-SearchBot
Claude search indexing crawler
User-Agent: approximate. Anthropic documents Claude-SearchBot for search indexing. This probe uses the product token, not a verified complete header. Primary source. Reviewed 2026-10-01.
Accept preference: approximate. Simulator default. The vendor's exact Accept header is not verified; the Markdown toggle overrides this request preference. Reviewed 2026-10-01.
- ChatGPT-User
ChatGPT user-initiated fetch
User-Agent: documented. Full ChatGPT-User header published by OpenAI. Sending it does not authenticate this probe as OpenAI traffic. Primary source. Reviewed 2026-10-01.
Accept preference: approximate. Simulator default. The vendor's exact Accept header is not verified; the Markdown toggle overrides this request preference. Reviewed 2026-10-01.
- GPTBot
OpenAI training crawler
User-Agent: documented. GPTBot example published by OpenAI. The vendor notes that the version number may change. Primary source. Reviewed 2026-10-01.
Accept preference: approximate. Simulator default. The vendor's exact Accept header is not verified; the Markdown toggle overrides this request preference. Reviewed 2026-10-01.
- OAI-SearchBot
ChatGPT Search citations
User-Agent: documented. OAI-SearchBot example published by OpenAI. The vendor notes that the version number may change. Primary source. Reviewed 2026-10-01.
Accept preference: approximate. Simulator default. The vendor's exact Accept header is not verified; the Markdown toggle overrides this request preference. Reviewed 2026-10-01.
- Perplexity-User
Perplexity user-initiated
User-Agent: documented. Full Perplexity-User header published by Perplexity. Sending it does not authenticate this probe as Perplexity traffic. Primary source. Reviewed 2026-10-01.
Accept preference: approximate. Simulator default. The vendor's exact Accept header is not verified; the Markdown toggle overrides this request preference. Reviewed 2026-10-01.
- PerplexityBot
Perplexity indexing crawler
User-Agent: documented. Full PerplexityBot header published by Perplexity. Sending it does not authenticate this probe as Perplexity traffic. Primary source. Reviewed 2026-10-01.
Accept preference: approximate. Simulator default. The vendor's exact Accept header is not verified; the Markdown toggle overrides this request preference. Reviewed 2026-10-01.
- curl
Illustrative command-line client
User-Agent: synthetic. Fixed curl example, not the latest release or an installed CLI's identity. This request runs in the Worker, not curl. Reviewed 2026-10-01.
Accept preference: approximate. Simulator default. The vendor's exact Accept header is not verified; the Markdown toggle overrides this request preference. Reviewed 2026-10-01.
- Generic agent · Accept: text/markdown
Synthetic Markdown negotiation probe
User-Agent: synthetic. Project-defined identity for testing content negotiation, not a vendor agent. Reviewed 2026-10-01.
Accept preference: synthetic. Project-defined Markdown preference and weights for testing content negotiation. Reviewed 2026-10-01.
Found something to fix?
Separate response format, declared usage preferences, and observed access. Markdown can reduce markup overhead, but savings depend on the page, tokenizer, and agent's processing. These sources explain the mechanisms:
- Cloudflare “Markdown for Agents” Converts eligible responses on zones where the feature is enabled. Merely using Cloudflare does not enable conversion.
- llms.txt specification A community proposal for discovery files, Markdown variants, and links. Publishing one does not establish that every agent uses it.
- Provider-specific robots policy Training, search, and user-directed retrieval are separate purposes. Declared rules do not prove how an authentic provider request will be handled.
-
Content Signals
searchconcerns conventional search,ai-inputconcerns model input, andai-trainconcerns training. Unspecified uses stay unspecified. These declarations are not technical access blocks. - agentexperience.ax The Agent Experience manifesto and principles, by the team at Netlify.