GEO Verification: Check Fixes and Measure AI Visibility
A GEO verification loop connects a website change to an acceptance check and a separate round of AI measurement. This guide explains what each result can establish, how CiteAura handles verification, and how to report a change without overstating its cause.
A deployed fix and a better AI answer are different claims
GEO verification begins with a distinction: proving a website change is live is different from observing a change in AI answers. Both matter, but they require different evidence. A passing website check can establish that the requested condition holds; it cannot establish that another company’s model has read the change or will cite it.
Imagine a fictional product whose pricing page omits a feature limit. An engineer adds the approved limit, deploys the page, and checks the public response. That is a completed website correction. A later answer that repeats the old limit is a separate finding. It might refer to an older source, a different page, or no identifiable source. The response alone does not reveal which explanation is correct.
The verification loop keeps those observations connected without collapsing them into a single green status. Start from the ticket’s acceptance condition, preserve the deployment evidence, then collect a comparable answer sample. The result may be a verified page correction with unchanged AI visibility. That is still useful information.
Write the acceptance condition before changing the page
An acceptance condition should be narrow enough that another person can check it. “Make the page AI-friendly” is not testable. “The canonical pricing page displays the approved feature limit without requiring a sign-in” is.
Record the exact URL, the expected statement or behavior, the source of the approved fact, and the baseline evidence. For a content edit, preserve the relevant paragraph. For a crawl-access issue, record the observed response and applicable rule. A saved screenshot can show appearance, while a response capture or page inspection can establish what was actually delivered.
Choose a check that matches the defect. If the issue concerns a missing plan restriction, confirming HTTP 200 is insufficient. If it concerns a blocked page, finding the right words in a local development build does not prove public access. This is why a single “page passed” badge should always have a narrower explanation behind it.
For a site you manage, the following is a small manual inspection example. It downloads the final response after redirects so you can examine the deployed page:
curl --location --silent --show-error \
--dump-header /tmp/pricing-response-headers.txt \
--output /tmp/pricing-response.html \
--write-out 'HTTP %{http_code}\nFinal URL %{url_effective}\n' \
https://example.com/pricing
Replace the example URL with your public page and read the downloaded content. This command is not CiteAura’s verification implementation and does not simulate every crawler. It gives you a response from one client. Where a restriction affects a particular search provider, corroborate it using that provider’s documentation and available request logs.
A robots check also needs the correct user-agent group and path. Searching the file for the text Disallow: / can be misleading when another group applies to the crawler in question. OpenAI’s crawler documentation, for example, separates OAI-SearchBot from GPTBot. Search access and potential training use are not interchangeable acceptance conditions.
What CiteAura verification actually does
Run verification explicitly after deploying the selected changes. In Execution → Closed-Loop Verify, Run Verification re-crawls and audits the site, then evaluates ticket checks against the latest audit and existing metric files. Changing a ticket’s status to Done does not by itself start this verification process.
Ticket status and check verdict are separate. The workspace offers operational statuses such as To Do, In Progress, Done, Blocked, and Won’t Fix. A verification check produces a pass, fail, or manual-review verdict. The latter describes what the check established, rather than the project manager’s assessment of progress.
| Verdict | What it means | Ticket behavior |
|---|---|---|
| Pass | The configured check succeeded with the available evidence. | A ticket not already Done is marked Done. |
| Fail | The configured check did not meet its condition. | A previously Done ticket is reopened as To Do. |
| Manual review | The checker cannot reach an automated verdict. | The operational status is retained for review. |
Inspect the checker’s note and evidence, especially when a rule depends on metrics. Verification uses the available metric artifacts; it does not silently replace them with answers collected after deployment. A sampling-dependent result should therefore be read with the sample’s collection time and scope.
Some tasks need human judgment. A check can establish that a file exists, but that does not establish that every sentence in it is accurate. Similarly, detecting structured data does not establish that its claims match the visible page. Google’s structured-data guidance requires that correspondence. Review content facts as part of acceptance, not as an optional step after the badge turns green.
Collect new answers as a separate measurement
After website verification, run a new AI sample if you want evidence about answer behavior. Use the original questions and comparable provider settings, market, sampling mode, and conversation conditions. Record differences you cannot control, including any visible change to the model version.
A switch from an API response without retrieval to a consumer conversation with search enabled creates a different measurement. It may be valuable, but it should not be presented as a clean before-and-after comparison. OpenAI’s web-search API documentation describes sourced answers and citation annotations; those records are more informative than assuming that every URL mentioned in ordinary generated text is a retrieved citation.
Keep successful answers and failures separate. Check whether the brand is mentioned accurately, which URLs are cited, and whether those sources support the relevant statement. Inspect questions individually before averaging them: a gain on a low-priority discovery question can conceal an incorrect answer about a commercially important limitation.
Repeated observations help reveal variability, but they do not remove it. If the model or retrieval sources changed during the same period as your website, the measured difference has multiple plausible causes. Retaining an unchanged comparison page or question group can add context when practical; it does not turn an observational campaign into a randomized experiment.
Report the delta without claiming more than it shows
Here is a deliberately small hypothetical calculation, not a CiteAura customer result. In each round, the same questions produce 40 successful, eligible answers in one provider and sampling-mode cohort:
- Before the edit: 10 answers mention the brand, giving a mention rate of 25%.
- After the edit: 14 answers mention the brand, giving a mention rate of 35%.
- The observed difference is 10 percentage points. The relative increase is 40%, which expresses a different quantity.
Neither calculation proves the page edit caused the change. The sample is limited, answers can vary, and the two rounds may have encountered different source material. A responsible report states the counts and collection conditions, then treats the increase as an observation to assess through further comparable measurements.
Do not combine this mention-rate denominator with a source-domain share. CiteAura’s Citation Sources view aggregates distinct captured URLs by domain within a completed web-enabled sample run. Its domain share describes that captured source set, not the fraction of all AI answers on the internet that cite your site. A percentage is only interpretable when its denominator is named.
The same discipline applies to a flat result. If the approved limit is now visible on the pricing page but sampled answers have not changed, report both facts. Do not repeatedly rewrite a correct page just because one subsequent answer differs. First inspect which sources the answer cites and whether the question is actually asking for the fact you corrected.
Close the work without hiding what remains unknown
The handoff should let someone outside the project reconstruct the decision. Include the ticket, public URL, deployment date or revision, acceptance result, and any new sampling period. Link the raw evidence rather than relying on a chart whose underlying answers cannot be inspected.
For the fictional pricing correction, an honest handoff could say: “The approved plan limit is visible on the public page and the website check passed. A later comparable sample still contains two outdated descriptions. We have retained those answers and their citations for source review.” This communicates completed engineering work and unresolved answer quality in the same record.
CiteAura can compile the current diagnostic, tickets, evidence, and assets into a delivery pack. Review whether the package is intended for review, diagnosis, or implementation. A generated ZIP can include unfinished work and explicit limitations; producing it does not certify all assets as ready to deploy. See the verification and delivery documentation for the current workflow.
Scheduled monitoring can refresh crawls, samples, and reports, while verification remains an explicit step. Revisit affected checks after material site releases and investigate repeated answer changes in comparable cohorts. Google’s AI-feature guidance also makes clear that meeting requirements does not guarantee indexing or serving. There is no general waiting period after which a website pass becomes a guaranteed citation.
If the original finding is still vague, return to the brand diagnostic workflow before adding more automation. The loop is complete when the record explains what was changed, what was checked, what was observed, and what decision follows.