for business owners who work with an agency
Independent SEO and AI visibility vendor audit
Check your vendor’s technical claims against the website and a recorded measurement. Public technical checks can start without vendor cooperation. Business metrics and definitive indexation data require access to the relevant analytics, CRM or webmaster tools.
the checklist
Which vendor claims we check
| Vendor claim | How it is checked, from outside | What you get |
|---|---|---|
| “Indexation is fine” | Full crawl of the site; robots.txt, noindex, canonical, JavaScript-only rendering, sitemap compared with live pages | Count of pages blocked from search and why |
| “Schema is implemented” | Structured data read from each page type, validated, compared with what the page actually shows | List of mismatches (e.g. “in stock” on the page, “out of stock” in the markup) |
| “Site speed is good” | Mobile performance checks per template; field data where available, with lab results reported separately | Pass / fail per template |
| “Rankings improved” | Positions re-taken independently: same queries, same locations, dated | Real gain, or seasonal / platform-wide shift |
| “AI visibility is up” | Prompt set re-run with the repeated-runs method | Named / cited: yes or no, per engine and market |
| “Content is optimized” | Pages compared with the questions buyers ask and with the sources AI engines actually cite | Gap list: questions no page answers |
Example from a current client: 244 product pages were affected by five concurrent crawling and indexing issues — a robots.txt rule, a noindex tag on the page, a canonical pointing to the home page, absence from the sitemap, and no HTML links to the pages (they were drawn by a script). Addressing only one issue would have left the others unresolved. The vendor's report said “indexation OK”.
the scorecard
A scorecard with defined metrics and sources
Each line has a written definition, so a number cannot drift when the vendor changes.
| Metric | Source | Computed as | Cadence |
|---|---|---|---|
| Signed deals / cases from organic | CRM + call tracking | Deals whose first touch was organic search or an AI answer; attribution rule written down | Monthly |
| Cost per signed deal | Vendor invoices + CRM | Total search spend ÷ signed deals, trailing 3 months | Quarterly |
| Non-branded organic clicks | Search Console | Clicks on queries without your brand name; by service line and market | Monthly |
| AI visibility | Prompt-set runs | Questions where you are named or cited in ≥2 runs, per engine, per market | Monthly |
| Position in strong markets | Independent rank snapshots | Share of core queries in the top 3, by city; same queries each time | Monthly |
| Technical health | Crawl | Pages blocked, schema mismatches, Core Web Vitals fails per template | Quarterly |
the report-out
Quarterly summary: results, causes and decisions
Number, last quarter's number, source
Each line is checkable: “non-branded organic sessions in [market]: [__] vs [__]; Search Console”.
Fact, likely cause, whose it is
Observed fact first, then the probable reason, then whether it is the vendor's, the platform's or yours. Platform-wide shifts are named as such.
At most three
Each with the cost of deciding and of not deciding: “extend vendor scope to [__] pages — yes / no by [date]”. Plain English; the technical appendix is separate.
Typical shape of an engagement
First 90 days: 20–40 hours, concentrated at the start — vendor evaluation, baseline measurement, scorecard definition. Ongoing: 4–6 hours a month — report-outs, vendor calls, prompt-set maintenance. Fixed price, agreed up front. Ask for a proposal →