# Programmatic SEO

Builds large sets of search-targeted pages from a template and a dataset, the...

- Repository: https://github.com/cbrock84/headcount (2554 stars)
- Category: Data and ML
- License: MIT
- Last updated: 2026-10-18
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add cbrock84/headcount --skill programmatic-seo -g -a claude-code -y`
Codex: `npx skills add cbrock84/headcount --skill programmatic-seo -g -a codex -y`
Cursor: `npx skills add cbrock84/headcount --skill programmatic-seo -g -a cursor -y`
Gemini CLI: `npx skills add cbrock84/headcount --skill programmatic-seo -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add cbrock84/headcount`

## Description

Builds large sets of search-targeted pages from a template and a dataset, the location, comparison, integration, and use-case pages that capture long-tail demand at scale. Use this when there is a repeating query pattern with real volume, when a dataset could answer many similar searches, or to judge whether a programmatic approach is viable before building it.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Programmatic SEO

Done well, one template covers thousands of real searches. Done badly, it is a mass of thin pages
that damages the whole domain.

## Qualify before building

All four must hold:

1. **A real query pattern** with verified volume across many instances, not one popular term and a
   long tail of zeroes.
2. **Data you actually have**, at quality, for most instances. Missing data produces empty pages,
   and empty pages are the failure mode.
3. **Genuine per-page value.** If two pages differ only by a swapped noun, they are duplicates
   however they are generated.
4. **A reason to be better** than what ranks now. Usually completeness, freshness, or data nobody
   else has.

Fail any one and the answer is fewer, better pages.

## Building

- **Design the best single page first**, by hand, and confirm it is genuinely useful. Then find what
  in it is variable. Templating before you know the good page scales a mediocre one.
- **Vary the substance, not just the strings.** Each page needs data, comparisons, or context
  specific to it.
- **Set a minimum data threshold.** Below it, the page does not get generated. This single rule
  prevents most programmatic disasters.
- **Internal linking is not optional**, thousands of orphaned pages will not be crawled. Build hub
  pages and cross-links into the template.
- **Roll out in batches.** Publish a few hundred, wait for indexation and performance, then
  continue. A full launch that goes wrong is hard to unwind.

## Maintaining

Stale programmatic pages rot faster than editorial ones because there are so many. Set a refresh
cadence tied to the data source, and prune: pages with no impressions after two quarters should be
consolidated or removed. Volume is not the goal.

## Sources

The rest: https://github.com/cbrock84/headcount/blob/HEAD/plugins/demand-generation/skills/programmatic-seo/SKILL.md
