AI visibility study 2026: 107 small-business websites
Aggregate results of SeeGeo's August 2026 audit of 107 real small-business websites in seven countries: how many block AI crawlers (per bot, explicit and effective), how many carry structured data, how many state what the business does, llms.txt adoption, grade distribution and per-platform splits. Counts only — no site is named. CC BY 4.0.
| Download | see-geo.com/data/ai-visibility-study-2026.jsonapplication/json · 2782 bytes |
|---|---|
| Repository | github.com/Tunisian-Aaron/ai-visibility-study-2026 (methodology, findings, llms.txt classification) |
| License | CC BY 4.0 — reuse freely with attribution |
| Sample | 107 sites audited of 120 sampled, 7 countries, run 2026-08-17 |
| Published | 2026-08-17, updated 2026-09-08 |
| Cite as | SeeGeo, AI visibility study of 107 small-business websites, 2026. |
The figures are read out one per question on the statistics page and told as a story in the write-up. Both render from this same file, so the three can never disagree. Individual businesses are never named: the dataset is counts only.
Fields
| Key | Meaning |
|---|---|
| generatedAt | ISO timestamp of the aggregation run. |
| sampleSize | Candidate domains collected before exclusions. |
| audited | Sites actually audited; the denominator for every share. |
| exclusions | Why candidates were dropped: unreachable, moved, or blocked the checker (never counted as blocking AI). |
| robots.served | Sites that returned a robots.txt. |
| robots.blocksAnyAiExplicit | Sites whose robots.txt names and disallows at least one major AI crawler. |
| robots.blocksAnyAiEffective | Same, also counting wildcard rules that happen to catch AI bots. |
| robots.perBot | Explicit and effective block counts per crawler (GPTBot, ClaudeBot, PerplexityBot, Google-Extended, CCBot, OAI-SearchBot, Googlebot, Bingbot). |
| robots.causeBreakdown | Blocking sites split by whether CDN/WAF signals were also present. |
| cdn | Sites behind Cloudflare or showing WAF signals, where network-level blocking is possible regardless of robots.txt. |
| content.whatWeDoStatement | Homepages that plainly state what the business does near the top. |
| content.noJsContentMissing | Sites whose main content disappears without JavaScript. |
| schema | JSON-LD presence: none anywhere, on the homepage, beyond the homepage. |
| llmsTxt.present | Sites serving an llms.txt file. |
| platforms | Per-platform counts; blocksAnyAiExplicit and noSchema are null where n is too small to report (sufficient=false). |
| cloudflareSplit | Explicit AI blocking among Cloudflare-fronted vs other sites. |
| grades | Distribution of SeeGeo audit grades A–F across the audited sites. |
Using it
Fetch the file directly; it allows cross-origin requests, so a notebook or an agent can read it from anywhere.
curl https://see-geo.com/data/ai-visibility-study-2026.jsonThis page, the statistics page and every article are also available as markdown: append .md to the URL or request them with Accept: text/markdown. The whole site in one file is at see-geo.com/llms-full.txt.