Case Studies
I Spent Five Months Building a Content-Rich Recipe Site. Google Had Indexed 7% of It.
How I found out, what was actually wrong, and why your SEO vendor probably can't see it either.
In late 2025, I started building ChiliStation, a curated chili recipe community at chilistation.com. Real money went into it: original food photography, schema-marked recipe pages, a 30+ article blog series, internal linking, SSR, and clean canonicals.
Five months in, traffic was flat. I assumed I needed more time. Then I ran Beacon.
Beacon
Beacon is a self-hosted indexing diagnostic tool: it pulls every URL in a sitemap, checks Google URL Inspection API status, and reports the gap between published and indexed URLs.
Scan result on ChiliStation:
- 170 URLs in sitemap
- 12 indexed
- 143 Unknown (Google did not know they existed)
- 0 Discovered at first pass
- 0 technical errors
This was not a rendering or robots failure. The pages worked. They just were not reaching index state.
The Gap Between Published and Findable
A URL can be Published, Submitted, Crawled, or Indexed. Only Indexed creates search demand capture. Most SEO reporting starts after indexing and hides stage-zero failure.
If pages are submitted but not indexed, spend on rankings and backlink optimization often does not move outcomes.
What Was Actually Wrong (Three Distinct Problems)
1) Sitemap composition was poisoning the property
The sitemap mixed roughly 100 attributed-derivative recipe pages with 30 original editorial posts and 40 hub/category pages. Property-level quality and originality signals were likely being blended.
2) Outbound equity was bleeding to competitors
Attribution links used rel="noopener noreferrer" but not nofollow, so authority flowed to already-dominant sources.
3) Schema was lying
JSON-LD contained an aggregateRating count while the visible page showed zero reviews. Structured-data mismatch introduced trust friction.
Fix Path
- Split sitemap into blog/pages/recipes and submit separately in GSC.
- Add
rel="nofollow"on source-attribution outbound links. - Emit
aggregateRatingonly when real reviews exist. - Move original blog content above recipe grid on homepage.
- Manually request indexing for highest-value URLs.
What Happened Next
A follow-up scan two days later showed movement:
- Indexed increased from 12 to 17
- Unknown dropped from 143 to 61
- Discovered rose from 0 to 79
Google was evaluating the site, but conversion from discovered to indexed still depended on quality and site-level signals.
The Lesson That Generalizes
Check stage zero before stage three: of the URLs in your sitemap, what percentage are indexed right now? If the answer is low, pause optimization spend and fix indexing diagnosis first.
What Beacon Is
Beacon is free, self-hosted, and open source. It compares sitemap reality to Google index reality so teams can measure visibility before buying more SEO work.
Install: beacon.brianonai.com

About Brian Diamond
Brian Diamond is a fractional Chief AI Officer working with companies on AI governance, infrastructure, and SaaS strategy. He writes The CAIO Brief and builds Onaro.