Programmatic SEO: how it works and when it fails

Programmatic SEO builds many pages from one template and a dataset. How to find a pattern, check demand, avoid thin content and use agents.

By Denis Veisllari

Programmatic SEO means publishing many pages from one template and a dataset, each page targeting one variation of a repeating search pattern, such as "[tool] alternatives", "[city] coworking" or "convert [currency] to [currency]". It works when every page holds data a searcher cannot get faster elsewhere. It fails, often badly, when the pages differ only by the word swapped into the title.

This guide covers how to find a pattern worth building, how to test it before you publish thousands of URLs, and where an AI agent saves real time.

When programmatic SEO works

Three things have to be true:

  1. A repeating search pattern with real demand. Many people search the same shape of query with different values, and enough of the variations have volume.
  2. Data that makes each page different. Prices, listings, specs, reviews, schedules, conversions: something unique per page. If you do not own or cannot build this data, stop here.
  3. A page that satisfies the search. Look at what ranks for a few variations. If the top results are tools, a text page will not beat them. If they are lists, a single fact will not.

Well known examples are travel and real estate listings, comparison pages built on product data, and integration pages for software ("connect X to Y") where each page describes a real integration. SEO for SaaS covers integration and comparison pages built by hand, which is where most software companies should start.

The thin content risk

Google's spam policies name "scaled content abuse": producing many pages mainly to manipulate rankings rather than help users, whether written by people, templates or AI. Sites that publish thousands of near-identical pages can see those pages dropped from the index, and in bad cases the whole site loses visibility.

Warning signs before you launch:

  • Two random pages from your set would read the same with the city or product name blanked out.
  • Most variations have no search volume and exist only to fill out the grid.
  • The data on the page is copied from one public source that already ranks.
  • You would not link to these pages from your own navigation.

Warning signs after launch, in Search Console's Pages report: a growing share of the set in "Crawled, currently not indexed" or "Discovered, currently not indexed". That is Google telling you it does not think the pages are worth keeping.

How to research a pattern

  1. Start from a head term and look for modifiers. Pull keyword ideas for the seed and sort them by the repeating part (how to do keyword research covers the basics). "best crm for" followed by an industry is a pattern; one-off phrasings are not.
  2. Size the pattern. List the variations and their monthly volume. Expect a long tail where most variations are small; check that the total is worth the build.
  3. Check intent on a sample. Look at the results page for five to ten variations across high, medium and low volume. If intent changes across the set, you need more than one template.
  4. Check who ranks. If the same large site holds every top spot, you need better data than it has, not just more pages.
  5. Map variations to pages. Variations that mean the same thing ("crm for dentists" and "dental crm") belong on one page, not two.
  6. Launch a small batch. Publish 20 to 50 of the strongest pages, link them from a hub page, and watch indexing and clicks for a few weeks before you scale.

Where agents help

The research steps above are repetitive: many keyword lookups, grouping by pattern, checking results pages. That is what an agent with SEO tools does well (see SEO agents for how that setup works). With zaDojo connected, you can ask:

/zadojo:keyword-research Find repeating keyword patterns around "invoice template".
Group the variations by modifier and show volume per group.

Then group the variations into pages:

/zadojo:keyword-clustering Cluster these variations by intent and tell me which
ones can share a page.

The Keyword Research skill pulls ideas and metrics and saves the promising terms to your project; the Keyword Clustering skill groups them by intent and maps them to existing or proposed pages. Keyword research costs about €0.07 a search, as listed in the MCP guide, so sizing a pattern takes a handful of searches rather than a large budget.

What an agent should not do is write the pages for you from nothing. Generating thousands of pages of AI text on a thin template is exactly the pattern spam policies target. Use the agent for the research and the checks; put your real data on the pages.

After launch, Search Console tells you which pages get impressions and which never get indexed; the Search Console dashboard guide shows where to look. An agent can read that through zaDojo at no credit cost and point out the templates or variations to prune.

Questions people ask

Is programmatic SEO considered spam?

Not by itself. Template-built pages are fine when each one helps the searcher. It becomes scaled content abuse when pages exist mainly to rank and add nothing over each other or over existing results.

How many pages should I start with?

Start small: enough to test indexing and intent, often a few dozen of your best variations. Scale only once those pages are indexed and earning impressions.