Quality-first programmatic SEO
How to publish programmatic pages that earn their place after the 2026 spam update, instead of thin pages that get demoted.
By Andrew J. Pyle
Programmatic SEO can build thousands of pages fast. After the 2026 Google spam update, most of those pages are a liability, not an asset. This is how I build programmatic pages that earn their place instead of getting demoted.
The update did not punish scale. It punished thin, near-duplicate, made-for-rankings pages at scale. The fix is not fewer pages. It is more real substance per indexed page.
01GET THIS RIGHT
What Google actually targets
The 2026 Google spam update did not punish scale, and it did not punish AI. It punished thin, near-duplicate, made-for-rankings pages produced at scale. The policy is method-agnostic. The offense is the low-value page, not the tool that made it.
Well-grounded, fact-checked, genuinely useful content still ranks regardless of how it was drafted. AI only became the villain in folk wisdom because it is the cheapest way to mass-produce the thin pages the policy targets.
The offense is thin and made-for-rankings at scale, not the tool that made it. Fix the page, not the byline.
02WHY I AM STRICT
The scar
I am strict about this because it cost me. One of my own networks was demoted after AI prose invented facts about real entities: fake quotes, awards that did not exist, details that were simply wrong.
That was demoted because it was three violations at once: fabricated, thin, and scaled. The AI was the vehicle for the fabrication, not the offense. The lesson is a guardrail born from bad output, not a restatement of policy: unverified AI prose about real things is radioactive. Grounded, verified content is fine.
03THE EARN-THE-INDEX BAR
Before you publish
Every page that goes into the sitemap with an index tag has to earn it. Before a page is indexed, it passes three questions.
- Does this page carry real data beyond the template? Not a unique line wrapped in a large shared shell, but genuine per-page substance.
- Is every claim verified? If a fact is not grounded, it is marked for verification and never guessed.
- Would a real person find this useful on its own? If the honest answer is no, it does not get indexed.
If a page cannot clear the bar, it is not deleted. It is set to noindex with follow, so it keeps passing link equity without adding to the thin indexed mass.
04THE STANDARD
The six build rules
- No thin, unoriginal, or fabricated content. That is the actual bar. AI assistance is allowed only when grounded, fact-checked, and genuinely useful.
- Every indexed page carries genuine per-page substance. If it cannot, noindex it. Never index thin near-duplicates.
- Differentiate at scale with real data grain and contextual internal-link hubs, not boilerplate replicated across pages.
- Quality-gate indexing. Index the differentiated subset first, then grow the indexed set as real substance is added.
- Retrofit existing sites too. Noindex the thin mass, remove or verify old AI prose, add contextual hubs.
- Diagnose ranking drops trigger-first. Cite real search-console queries, never from memory.
05DATA GRAIN AND LINK HUBS
Differentiate at scale
Scale is not the enemy. Sameness is. The way a large site stays indexable is real variation in the data plus internal-link hubs that give each page a genuine context.
| Thin at scale | Differentiated at scale |
|---|---|
| Name plus location plus one fact, template-swapped | Real coordinates plus distinctive attributes per entity |
| Every page is a sibling with the entity name changed | Each page sits in a by-state or nearby or related hub |
| One unique line in a large shared shell | The unique portion is a meaningful share of the page |
If a page's non-boilerplate content is materially identical to a sibling, it is a near-duplicate. Merge it, enrich it, or noindex the weaker one. Never ship clusters of them.
06QUALITY-GATE INDEXING
Curated subset, then grow
The temptation is to flip a whole programmatic tail to index at launch. That is exactly how a site gets demoted. Instead, launch the indexed subset that clears the bar, and add indexable pages in waves as real enrichment data lands.
A directory done right looks like this: the index-floor is real coordinates plus at least two distinctive attributes per entity. Entities that clear it get indexed. The thin tail stays noindex with follow. Nearby and related hubs give every page genuine local context. As enrichment lands, more pages cross the floor and join the indexed set.
07NOINDEX IS A FEATURE
The part nobody talks about
The hardest discipline is publishing fewer indexed pages than you could. Every programmatic builder feels the pull of a bigger number. The number that matters is indexed pages that earn their place, not pages that exist.
Noindex with follow is not a failure state. It is the tool that lets you build the whole site while only exposing the part that is ready. Patience over page count is the entire game after the spam update.
08CITE REAL QUERIES
Diagnose drops trigger-first
When rankings fall, the worst move is to guess from memory and start redesigning. Diagnose from real data first.
- Cliff or slide? A sharp drop on an update date is a different problem than a slow slide.
- Which pages lost impressions, in real search-console query data, not a hunch.
- What shipped near the drop? Line up the deploy and content timeline against the update calendar.
- What do the indexing reason buckets say, and are there any manual actions?
09NEXT STEPS
Where to start
- Define your index-floor in one sentence. What real data must a page carry to be indexed?
- Audit what you already index. Noindex the pages that cannot clear the floor.
- Add one contextual hub, by-state or nearby or related, so no page stands alone.
- Ship the differentiated subset, then grow in waves as enrichment data lands.