AI Assistants

AI visibility case study: 18.35 to 66.35 on a frozen rubric

By Nihanth Guntur · 2026-10-04

This ai visibility case study covers one SEO Autopilot engagement: a US healthcare analytics company on WordPress behind a firewall. Measured on a rubric frozen at baseline, its AI Visibility score rose from 18.35 to 66.35 and SEO Health from 46.55 to 67.45. Performance fell from 48 to 28 and AI review signals did not move. Here is every number, including the bad ones.

What did this AI visibility case study measure?

It measured two composite scores, AI Visibility and SEO Health, across every URL in the site's sitemap. The baseline was frozen on 15 July 2026. The re-measurement ran on 18-19 August 2026 by fetching all 39 sitemap URLs again with the same rubric.

Freezing the rubric is the part that makes the comparison worth reading. If the weights or the checks change between the two runs, a score can rise because the ruler moved, not because the site improved. On this engagement the rubric was frozen at baseline and the same rubric was used for the re-measurement.

The AI Visibility score is a weighted blend of six components:

  • AI schema and structured data: 25%
  • AI crawler access: 20%
  • llms.txt: 15%
  • AI content readability: 15%
  • AI content gap: 15%
  • AI review signals: 10%

SEO Health uses a different blend: technical SEO 25%, content quality and E-E-A-T 25%, on-page 20%, schema 10%, performance 10%, images 5% and internal linking 5%. The two scores overlap on schema and diverge on performance, which matters later in this story.

What were the before and after scores?

The short answer: four AI visibility components rose sharply, one did not move, and one SEO Health component got worse. These are the published figures, unrounded.

MeasureBaseline (15 July 2026)Re-measured (18-19 August 2026)
AI Visibility (composite)18.3566.35
SEO Health (composite)46.5567.45
Schema and structured data578
AI crawler access4582
llms.txt085
AI review signals1818
Performance4828
Median time-to-first-byte0.42s2.39s
Pages with exactly one H19 of 3930 of 39

Read the table as a whole rather than cherry-picking the top line. The composite scores improved, and the trade-off is sitting two rows from the bottom.

Why were OpenAI and Anthropic search crawlers blocked?

Because a generic firewall rule matched the substring "searchbot". That one rule returned 403 to OpenAI's and Anthropic's search crawlers on every page of the site, while eleven other crawlers passed.

This is the finding that matters most for ai search visibility. OpenAI's crawler documentation says OAI-SearchBot is used to surface websites in search results in ChatGPT's search features, and that sites opted out of OAI-SearchBot will not be shown in ChatGPT search answers. Anthropic's help article says disabling Claude-SearchBot prevents its system from indexing your content for search optimisation, which may reduce your visibility in user search results. A bad-bot rule written to stop scrapers was doing exactly that, silently, for both.

The part that should worry any marketing lead: the client's monitoring tool reported all sixteen AI crawlers as accessible. It read robots rules instead of sending requests. The robots rules said the crawlers were allowed; the firewall refused them. A tool that only reads the rules cannot see a block that happens before the rules are ever consulted.

Anthropic's article also notes that blocking IP addresses its bots operate from may not work correctly as an opt-out, because it impedes their ability to read your robots.txt file. The reverse lesson applies here: firewall-level decisions override what robots.txt says, so they need their own test. In our practice we test with real requests per user agent, not by reading the file. If seo for chatgpt is on your list, this check belongs near the top. The crawler access score moved from 45 to 82 on this site; we wrote up the mechanism in more detail in our post on firewalls blocking AI crawlers.

Why did 21 of 39 pages have no H1?

Because the post template rendered the article title as an H2. Every page built from that template inherited the problem, so 21 of 39 pages had no H1 at all.

MDN's reference on heading elements says a page should generally have a single <h1> element that describes the content of the page, and that heading information can be used by user agents to construct a table of contents automatically. The W3C accessibility tutorial on headings says headings communicate the organisation of the content on the page. A page whose top heading is an H2 is telling every parser, from a screen reader to a crawler, that its main section is missing.

The fix was one template change. It took pages with exactly one H1 from 9 of 39 to 30. That is a pattern worth looking for: a single shared cause behind a large share of broken pages, where one edit repairs many URLs at once.

Why did performance fall from 48 to 28?

Because removing the firewall rule took the CDN edge cache with it. Median time-to-first-byte went from 0.42s to 2.39s, and the performance score fell from 48 to 28.

We are publishing this because a case study that only shows rising lines is a sales sheet. Fixing crawler access had a real cost on this stack: removing the firewall rule that blocked OpenAI's and Anthropic's search crawlers also removed the CDN edge cache. Taking out the rule improved one score and damaged another.

Performance carries 10% of SEO Health, so the composite still rose from 46.55 to 67.45 despite the drop. That does not make the drop acceptable. A slow first byte hurts human visitors as well as crawlers. Our recommendation in a situation like this is to restore edge caching while keeping a narrow exception for named crawlers, then re-measure, rather than treating the composite gain as the end of the job.

What did not improve in this AI visibility case study?

AI review signals did not move: 18 before, 18 after. It is 10% of the AI Visibility score, and the work on this site did not change it.

Review signals depend on what customers and third parties publish about a business, not on what the business ships to its own server. Schema, crawler access, headings and llms.txt are things a site owner controls directly. Reviews are not. We report the flat line rather than hide it, because it shows where the remaining gap sits.

It is also worth being clear about what a score is. An AI Visibility score of 66.35 measures whether a site is reachable, parseable and well described for answer engines. It does not measure whether ChatGPT, Claude or Perplexity actually cite the site, and we do not promise that any of them will.

How can you run the same checks on your own site?

Start with the failures this engagement surfaced, in this order, because each one hides behind the next.

  1. Request your pages with each AI crawler's user agent and look at the status code. A 403 from a firewall will not show up in robots.txt.
  2. Check robots.txt separately. OpenAI's documentation describes OAI-SearchBot and GPTBot as independent settings, so allowing one does not allow the other.
  3. Count H1 elements per template, not per page. If one template is wrong, every page built from it is wrong.
  4. Score structured data and llms.txt as separate items, because they move independently.
  5. Record time-to-first-byte before and after any firewall or CDN change, so a caching loss is caught on the same day.
  6. Freeze your rubric before you change anything, and re-measure every sitemap URL with it.

Our free AI visibility checker covers a first pass at steps one and two. It reads robots.txt rules for 11 AI crawlers and requests your homepage once with each crawler's user agent. That is the checker's own request, not the real crawler's, and it covers the homepage only, so treat a pass as a good sign rather than proof. For the background on the training crawler versus the search crawler, see our GPTBot explainer.

This engagement ran on SEO Autopilot, our managed SEO and AI search visibility service: ₹20,000 a month (about US$230) for one site, no setup fee, no minimum term.

Frequently Asked Questions

What is an AI visibility score?

In our rubric it is a weighted score of six components: AI schema and structured data (25%), AI crawler access (20%), llms.txt (15%), AI content readability (15%), AI content gap (15%) and AI review signals (10%). It measures whether a site is reachable and well described for answer engines, not whether they cite it.

Why did the performance score drop in this case study?

Removing the firewall rule that blocked AI search crawlers also took the CDN edge cache with it. Median time-to-first-byte went from 0.42s to 2.39s, and performance fell from 48 to 28.

Can robots.txt show that AI crawlers can reach my site?

No. On this site a firewall rule returned 403 to OpenAI's and Anthropic's search crawlers. The monitoring tool reported all sixteen AI crawlers as accessible because it read the rules instead of sending requests.

Does a higher AI visibility score mean ChatGPT will cite my site?

No. The score measures whether your pages are reachable, structured and described clearly. Whether an answer engine cites a page is its own decision, and we do not promise citations.

Why does a missing H1 matter for AI search visibility?

Headings tell parsers how a page is organised. MDN says a page should generally have a single h1 that describes its content. On this site one template change took pages with exactly one H1 from 9 of 39 to 30.

Free AI Visibility Check

See what AI crawlers get from your homepage

The free checker reads robots.txt for 11 AI crawlers and requests your homepage once with each user agent. It is the checker's own request, homepage only.