Individual skill

keyword-cluster-builder

Collapses a raw keyword list into topic clusters and a pillar/cluster page architecture with one primary keyword and a prioritized build order per cluster. Use when you have a keyword export (CSV/GSC/keyword-tool dump) and need a content plan that says which pages to build, not a flat list. Do NOT use when labeling individual queries by intent or recommending page types - use search-intent-classifier instead; do NOT use when choosing internal links or anchor text between pages - use internal-linking-mapper instead.

skills/keyword-cluster-builder/SKILL.md

Read pinned source

Source commit 97a13607d669157a4a16d5ba79b77f208319f7b9

What was checked

Matches the observed repository HEAD
Yes
Scanner rules are current
No
Repository scan complete
No
Skill scan complete
Yes
Observed behavior
Not checked yet
Last checked
Nov 6, 2026

These are observations at the recorded commit, not a guarantee of safety. Review the source before running it.

Install this skill

Choose an agent in your Stack or copy a command below. Commands fetch the pinned commit and copy only this skill directory. Existing destinations are refused. Copying a command does not install anything.

An install command is unavailable: current rules, complete repository and skill scans, an eligible behavior level and a permitted license are required.

Repository context

Repository stars (not skill ratings)
24
Repository last updated
Oct 13, 2026
License
MIT

Observed agent integration: No specific integration evidence. Standard SKILL.md installation does not imply verified compatibility.

Files and excerpt

File metadata and permitted, redacted excerpts come from the recorded scan. Source links are pinned to that commit.

Browse files
Read excerpt
# Keyword Cluster Builder

Turn hundreds of queries into a small set of clusters, each earning ONE page, arranged so topical authority compounds. A keyword list is not a content plan: one thin page per keyword cannibalizes your own rankings and wastes crawl budget.

## Workflow

1. **Dedupe and discard.** Drop near-zero-volume singletons (under ~10 searches/month with no transactional intent), branded/navigational queries you cannot rank for, and queries whose SERP is pure ads/maps/widgets with no organic slot. Normalize obvious variants (plurals, word order, stop words).
2. **Cluster by shared SERP, not string similarity.** Group queries Google answers with the same page: if two queries share roughly 4 or more of the same top-10 organic URLs, they belong in one cluster; below ~3 shared URLs, keep them separate. Never split a cluster only because wording differs; never merge two queries that surface different result types just because they share words.
3. **Separate clusters that demand different page formats.** When a cluster's SERP is dominated by a different result type (a guide vs. a comparison vs. a product page), split it - one page cannot satisfy two formats. Treat the coarse intent signal as a grouping input only; do not produce per-query intent labels or page-type recommendations here (that is search-intent-classifier).
4. **Build the pillar/cluster topology.** For each topic, define one broad pillar targeting the head term and the cluster pages targeting long-tail subtopics that report to it - a healthy pillar typically supports 5-15 cluster pages. Record the parent→child structure (which clusters belong under which pillar). Define structure only - leave link selection and anchor text to internal-linking-mapper.
5. **Pick the primary keyword per cluster.** Choose the one keyword the page can realistically win (highest relevant volume at achievable difficulty), then list the secondary keywords the same page should also satisfy. State difficulty honestly; on a low-authority domain, favor long-tail clusters with keyword difficulty under ~30 (on the standard 0-100 tool scales) first.
6. **Output a prioritized build order.** Score each cluster by opportunity = (revenue relevance × winnability) ÷ current coverage. Flag overlaps where two existing pages compete for one cluster (consolidate). Flag gaps where a cluster has demand but no page.

## Worked example