Guide

AI visibility audit for local businesses: what we check and why.

Twelve checks, each with a reason. Nothing on this list is a score, a grade or a promise. Each one is a question about your site that has a yes, a no, or a could not tell.

Three verdicts

What the results mean before you read them.

Pass

The check ran against your live site and the condition held. A pass is evidence about that page on that day. It is not evidence that an assistant names you; that is a separate measurement with a separate instrument.

Fail

The check ran and the condition did not hold. Every fail on this list has a specific repair, and the repair is named in the result. A fail is the most useful outcome of the audit because it is the one that changes what you do next.

Could not measure

The check could not reach a verdict, usually because the page could not be fetched or timed out. This is reported as itself and never folded into a fail, because a broken instrument reporting zero is worse than one reporting unmeasured. If most checks land here, the first fix is reachability.

The checks

Twelve questions, grouped by what they protect.

CheckWhy it exists
Page states who you are and what you sell in plain textAn assistant reads text. If the answer to what do you do lives in a hero image or a tagline graphic, it reads nothing.
Business name, address and phone are machine-readableLocal answers hinge on where you are. A phone number in an image or a map embed is invisible.
Organization schema present and validStructured data removes doubt about which entity the page describes when several businesses share a name.
Service or Product schema describes what you sellSame reason, applied to the thing a customer is actually asking for.
Headings describe the content beneath themRetrieval systems use headings to find the passage that answers the question. A heading that says Welcome answers nothing.
Answers appear as text, not only inside imagesMenus, price lists and service areas published as images are common and unreadable.
Canonical URL declaredWithout it, the same page at four addresses splits whatever trust it has earned four ways.
robots.txt permits AI retrieval crawlersThe most common single cause of absence. A rule written to stop scrapers often stops the answer engine too.
Sitemap reachable and currentA positive list of what you want fetched. Stale entries send crawlers to pages that no longer exist.
Page reachable without running JavaScriptThe retrieval client does not run your app. If the served HTML is an empty shell, the page is empty to it.
Titles and descriptions unique per pageDuplicate titles make every page look like the same page, so none of them is the best answer for anything.
Contact route reachable in one stepWhen an assistant does name you, the customer still has to reach you. A contact path buried three clicks deep leaks the lead.
What is not on the list

And why.

  • Whether ChatGPT names you. That is answer presence, and it is sampled on a schedule with a stated denominator rather than checked once. The instrument for it is Citability; the audit here covers what you can fix on your own site before that measurement means anything.
  • A visibility score out of 100. Twelve checks with three possible verdicts do not become a percentage without hiding the could-not-measure column, and hiding that column is how a broken site gets reported as a healthy one.
  • Review counts and star ratings. They matter for the map pack and they are not something a website audit can repair.

The audit is free because the diagnosis is the cheap part. What you do with a fail is described on the services page, and the first conversation about it happens after the results, not before.

Run the twelve checks on your site.

About a minute. Each check reports as pass, fail or could not measure, with the repair named next to every fail.