How to Run an AI Visibility Test Without Fooling Yourself

CrawlTide Team
8 min read
A painted brass pendulum frame with one dark sphere in focus and four ghosted swing positions behind it, a calibrated brass scale at the right and a white marble block on the base
Table of Contents

We changed structured data coverage on our own site from 40% to 98%, re-measured, and watched AI visibility barely move. That was an AI visibility test. It returned close to nothing, and the nothing was the most useful result we got all quarter.

Most people would not have called it a test. They would have called it a fix, shipped it, and quietly assumed it worked. The difference between those two framings is whether you find out you were wrong.

The obvious test design fails for a reason that has nothing to do with SEO

Here is the design almost everyone reaches for first. Measure whether an AI engine mentions you. Change the page. Measure again. Compare.

It does not work, because the thing you are measuring is not stable. Ask the same model the same question twice and you can still get different answers, or different sources, with nothing on your site changed. Generated responses are not guaranteed to be deterministic, and search-enabled systems can vary both in what they retrieve and in how they build the answer from it.

So a single before-and-after reading is not a comparison. It is two draws from a noisy process, and the gap between them tells you almost nothing about your page. If you measure once, ship a change, measure once more and see improvement, the honest interpretation is that you have no idea whether the change did anything.

This is one difference between an AI visibility test and a conventional rank check. A traditional ranking is at least easier to observe as a discrete position, though it still varies by location, device, time, personalisation and ranking updates. Generated answers add a second layer, because the answer itself and the sources chosen for it can both change between runs.

How many times should you measure the same prompt?

More than once, and the exact number matters less than the fact that you are sampling at all. A handful of runs of the same prompt, on the same day, before you change anything, will tell you how noisy your baseline is.

That spread is the number you actually need. If your brand shows up in three runs out of five before the change and four out of five after it, that difference is too small a sample to treat as evidence of an effect. If it goes from zero out of five to five out of five, you have something worth taking seriously. Be honest that a handful of runs on a single day is a rough baseline: it misses day-to-day variation, index changes and platform updates.

Run your baseline sample first and look at the variance before you touch the page. If the variance is wider than the effect you are hoping for, the test cannot detect what you are looking for, and you should either accept that or change the test.

Our test had no control, which is why it could only produce a null

We fixed identity schema in one shared component in the footer layout. It rendered everywhere at once, which was the right engineering decision and the wrong experimental one.

Every page changed on the same day. There was no holdout. When the numbers came back flat, we could say the change did not produce an obvious lift, and we could not say much else. We could not rule out that it helped a little and something else offset it. We could not isolate which page types responded.

If we had left a slice of comparable pages untouched for two weeks, the same flat result would have carried real information. The fix would have shipped a fortnight later on part of the site, which is a genuinely small price for knowing whether your own advice works. The full account of what we changed and what came back is in our write-up of auditing our own site.

Test one variable, on a page group you chose in advance

The unit of a useful test is a group of comparable pages, not your whole site and not a single page. One page gives you a sample size of one against a noisy measurement. The whole site gives you no control.

Pick pages that are alike in the ways that matter: similar depth, similar age, similar traffic, similar template. Split them. Change one thing in one group.

One thing is strict. Rewriting the intro, adding a summary block, restructuring the headings and adding schema is four changes, and a result tells you nothing about which of them mattered. That is fine if you only want the outcome. It is useless if you want a rule you can apply to the next two hundred pages, which is usually the actual goal.

Write down what would count as a failure, before you look

Decide in advance what result would make you abandon the change. Then look.

Without that, a flat result gets reinterpreted as "it needs more time", a small negative gets attributed to the engine changing, and the change stays shipped forever on the strength of nobody having disproved it. Most content teams have a stack of these.

The written version does not need to be formal. One line is enough. If mentions across our sample do not improve by more than the baseline spread within four weeks, we treat this as no effect.

How long do you wait before reading the result?

Long enough for the engines to have re-retrieved your pages, and there is no single schedule to wait for.

  • Retrieval-based answers can change once the relevant crawler, index or search provider refreshes the source. The delay may come from crawling, indexing, caching, retrieval behaviour, or some combination, and none of those publish a timetable.
  • Answers coming from learned model knowledge will not change because you edited a page. Editing your site does not rewrite weights that are already trained. The correction has to arrive through retrieval or through a later model or provider update.
  • Indexed and cached layers in between add their own lag, and publishers generally cannot see when those refresh.

There is no universal waiting period that holds across engines and sites, so resist the urge to invent one. Confirm the changed page has actually been re-crawled, then use an observation window you committed to in advance, long enough to collect enough repeat measurements to compare against your baseline spread.

Does structured data move AI visibility?

On our data, it moved readiness and it did not move citations. That is a narrow finding from one site and one change, and it is the honest version of what we saw.

One caveat we owe you, because it weakens our own result: structured data coverage is itself one of the factors our readiness audit scores. So the readiness increase is partly true by construction, and it is not independent proof that any external AI system understood the site differently. The citation result is the part that carried real information.

The useful way to hold it: schema is legibility, not endorsement. It provides explicit machine-readable clues about your identity to systems that parse the markup, rather than leaving them to infer it from prose. It does not guarantee that a given system reads those clues, trusts them, or resolves conflicts in your favour, and it does not establish authority or make a model decide you are the right answer. Those are different problems, and conflating them is how a coverage number turns into a false sense of progress. There is more on the distinction in what AI visibility actually measures.

A null result is a finding, and most teams throw it away

The flat result changed how we describe AI visibility to customers, which is a larger outcome than a lift would have been. A lift would have confirmed what we already believed and taught us nothing.

The failure mode is treating a null as a measurement problem. Sometimes it is. Far more often the change genuinely did not do what you hoped, and the temptation is to keep adjusting the measurement until the number cooperates. If you set your failure condition in advance, that temptation is much easier to notice.

Record the test either way: what you changed, which pages, what the baseline spread was, what you predicted, what came back. Six months of those is a real body of knowledge about your own site. Six months of shipped changes with no recorded predictions is a pile of assumptions.

What to run first

Start with a baseline you trust before you optimise anything. Sample your core prompts several times, on more than one engine, and write down the spread. Most of the value of an AI visibility test is in having an honest baseline, because that is the thing almost nobody has.

From there, pick one page group and one variable, set the failure condition, and hold the observation window you committed to instead of peeking early and reading crawl lag as a result. You can see what the engines currently say about you with our free AI visibility check, and AI visibility tracking reruns your configured prompts across supported engines on a schedule, giving you a consistent observation cadence. Month-to-month comparisons are still only as good as the consistency of your prompt set and test conditions.

CrawlTide Team

CrawlTide is an AI-powered SEO platform that helps teams find and fix technical SEO issues, track keyword rankings, and optimize search performance.