Back to all samples

This is a sample report for an illustrative business. No real company is described.

How to read this report
  • The score (0–100) and grade sum six weighted categories of what AI agents can reach and understand.
  • Findings are grouped by severity; "+N pts" is how much the score would rise if that one issue were fixed.
  • Generated fixes are ready-made files built from the findings — they come with Pro.
  • A blocked site has no score: access must be restored before anything else counts.

Sample audit report · Blocked site · no score

meridian-supply.example

Blocked Fails outright

Your site blocked our request.

We couldn't reach your site because its firewall or bot protection blocked our request. These protections can also turn away GPTBot, ClaudeBot and PerplexityBot, preventing agents from seeing or recommending your content. This audit observed our request only; access for each named bot has not been verified.

Fails outright — no readiness score displayed.

Review the firewall or bot-protection rule that rejected this request. Keep protection enabled; allow only the intended agents, then re-check access. Everything else we measure depends on being able to read the page.

HTTP status
403
Challenge detected
Cloudflare challenge
Fetch timestamp (UTC)
2026-10-07T12:00:00.000Z
Observed evidence
Illustrative: GET https://meridian-supply.example/ → HTTP 403; challenge marker: /cdn-cgi/challenge-platform. No homepage content returned.

Scoring mode: not applied

A blocked homepage fails outright, so no category weights, score breakdown or points impacts apply until access is restored. The firewall fix below is the only one that helps first.

Generated fixes (preview)

Ready-to-use files built from the findings. REPLACE_WITH_… marks anything we didn't observe.

Firewall allow-list for AI agents

nginx and Apache rules for self-hosted sites. Prefer your CDN's verified-bot list; user-agent matching is weaker. Never turn off your firewall or bot protection.

firewall-rules.conf

New · 75 lines added

Added: # firewall-rules.conf — AI agent allow-list for meridian-supply.example
Added: # Generated by AI-Primed. Guidance, not a guarantee.
Added: #
Added: # WARNING: user-agent matching is weaker than your CDN or firewall provider's
Added: # verified-bot list. Anyone can send a request claiming to be "GPTBot".
Added: # These rules therefore only exempt AI agents from bot BLOCKS on public
Added: # GET/HEAD pages. They never bypass logins, admin pages, rate limits on
Added: # forms, or your other security rules. Prefer provider-level verified bots.
Added:
Added: # ======================================================================
Added: # nginx
Added: # ======================================================================
Added:
Added: # 1) Recognise the AI agents. Put this inside the http { } block.
Added: map $http_user_agent $agentready_ai_agent {
Added: default 0;
Added: "~*GPTBot" 1;
Added: "~*ChatGPT\-User" 1;
Added: "~*OAI\-SearchBot" 1;
Added: "~*ClaudeBot" 1;
Added: "~*Claude\-Web" 1;
Added: "~*anthropic\-ai" 1;
Added: "~*PerplexityBot" 1;
Added: "~*Google\-Extended" 1;
Added: "~*CCBot" 1;
Added: "~*Applebot\-Extended" 1;
Added: "~*meta\-externalagent" 1;
Added: "~*Bytespider" 1;
Added: "~*Amazonbot" 1;
Added: "~*YouBot" 1;
Added: "~*cohere\-ai" 1;
Added: }
Added:
Added: # 2) Only count read-only requests (GET/HEAD) as AI-agent reads.
Added: map "$agentready_ai_agent:$request_method" $agentready_ai_read {
Added: default 0;
Added: "~^1:(GET|HEAD)$" 1;
Added: }
Added:
Added: # 3) If you block bots with your own variable (e.g. $bad_bot), make AI-agent
Added: # reads evaluate to 0 by listing them FIRST in that map — nginx uses the
Added: # first matching pattern. Example (keep your own patterns below):
Added: # map $http_user_agent $bad_bot {
Added: # default 0;
Added: # "~*(GPTBot|ChatGPT\-User|OAI\-SearchBot|ClaudeBot|Claude\-Web|anthropic\-ai|PerplexityBot|Google\-Extended|CCBot|Applebot\-Extended|meta\-externalagent|Bytespider|Amazonbot|YouBot|cohere\-ai)" 0;
Added: # "~*(your-existing-bad-bot-patterns)" 1;
Added: # }
Added: # and then, where you currently return 403 for bots:
Added: # if ($agentready_ai_read = 0) { set $agentready_check $bad_bot; }
Added: # if ($agentready_check = 1) { return 403; }
Added:
Added: # 4) Keep sensitive paths protected for everyone, including AI agents.
Added: # location ~ ^/(admin|login|wp-admin|checkout|account) {
Added: # # your existing protection stays here unchanged
Added: # }
Added:
Added: # ======================================================================
Added: # Apache (2.4, .htaccess or vhost; needs mod_setenvif)
Added: # ======================================================================
Added:
Added: # 1) Recognise the AI agents.
Added: SetEnvIfNoCase User-Agent "(GPTBot|ChatGPT\-User|OAI\-SearchBot|ClaudeBot|Claude\-Web|anthropic\-ai|PerplexityBot|Google\-Extended|CCBot|Applebot\-Extended|meta\-externalagent|Bytespider|Amazonbot|YouBot|cohere\-ai)" agentready_ai_agent=1
Added:
Added: # 2) Only count read-only requests (GET/HEAD).
Added: SetEnvIf Request_Method "^(?!GET$|HEAD$)" !agentready_ai_agent
Added:
Added: # 3) If you block bots with an environment variable such as bad_bot
Added: # (e.g. "Require not env bad_bot"), clear it for AI-agent reads.
Added: # This line must come AFTER the lines that set bad_bot.
Added: SetEnvIf agentready_ai_agent "^1$" !bad_bot
Added:
Added: # 4) Keep sensitive paths protected for everyone, including AI agents.
Added: # <LocationMatch "^/(admin|login|wp-admin|checkout|account)">
Added: # # your existing protection stays here unchanged
Added: # </LocationMatch>

See this report for your own site

No sign-up needed · takes about 15 seconds.

Run a free audit