The finding
Her website platform was serving Disallow: / to eight AI crawlers by name.
GPTBot. ClaudeBot. Google-Extended. PerplexityBot. Applebot-Extended. CCBot. meta-externalagent. Amazonbot. Every major answer engine, explicitly instructed not to read a single page. On top of that, a content signal declaring the site off-limits for AI use entirely.
She had not chosen any of this. It was a platform default, applied at the CDN layer, invisible from the site editor she used every week. There was no setting in her dashboard that said "block AI." There was nothing to notice.
yourdomain.com/robots.txt in a browser. If you see GPTBot or ClaudeBot next to the word Disallow, no amount of content, reviews or schema will get you cited, because nothing is being read.
What else the audit turned up
Zero schema markup anywhere on the site. No business entity, no services, no prices, no location. Nothing structured for an engine to parse.
The homepage h1 was the words "INQUIRY FORM." The single most important heading on the site, describing a form rather than a photographer or a city.
The pricing page had eighteen h1 tags. Which is functionally the same as having none: no heading carries weight if every heading does.
Gallery pages were image-only. No text at all, on the pages carrying the actual product.
Leftover template copy described her solo business as having "our expert planners." Boilerplate from the theme, never removed, quietly contradicting the personal service she actually sells.
What we built
A complete eight-page replacement: home, four service pages, an investment page, about, and inquire. No page builder, no platform, no monthly fee.
Schema on every page, and not the token kind. A business entity carrying real prices, contact details and service areas. Service and FAQ schema per service page. An offer catalogue on pricing. A person entity on the about page. A contact page entity on inquire. All joined so an engine reads one photographer rather than eight loose documents.
A robots.txt that explicitly allows every one of the eight crawlers that had been blocked, plus a signal permitting full AI use. A generated sitemap. Sixty-six photographs resized and served from the site itself rather than loaded from her old platform or gallery host, so cancelling either subscription cannot break the site. Total image weight went from 42 MB to 12 MB.
Why this one matters more than it looks
Most GEO work is incremental. You improve signals that were weak and hope to move up a list.
This was a switch that was off. Every hour she had put into her portfolio, her reviews and her copy was invisible to every AI assistant on the internet, and would have stayed invisible indefinitely, because the block was in a file she had no reason to know existed.
We check robots.txt on the first day of every engagement now. It takes about ninety seconds and it is the only finding we have ever made that can single-handedly explain a total absence.
What has not happened yet
The rebuilt site is finished but not yet live. DNS still points at her old platform, and it will stay that way until the new site is verified, because cutting over first and checking afterwards is how people lose a working website.
The before-and-after AI visibility measurement will be run after launch, using the same 240-test simulation we run monthly for clients. Until that exists, there is no result to report, and this page will not claim one.