bycoreyhaines31· 76 skills
When the user wants to create SEO-driven pages at scale using templates and data. Also use when the user mentions "programmatic SEO," "template pages," "pages at scale," "directory pages," "location pages," "[keyword] + [city] pages," "comparison pages," "integration pages," "building many pages for SEO," "pSEO," "generate 100 pages," "data-driven pages," or "templated landing pages." Use this whenever someone wants to create many similar pages targeting different keywords or locations. For auditing existing SEO issues, see seo-audit. For content strategy planning, see content-strategy.
$npx -y skills add coreyhaines31/marketingskills --skill programmatic-seoInstalls into the current project.
Run `npx skills use "https://github.com/coreyhaines31/marketingskills" --skill "coreyhaines31/marketingskills/programmatic-seo"` and follow the generated skill instructions now. Read its complete output, redirecting it to a temporary file first if necessary. Resolve relative paths from the supporting-files directory it provides.
Use the skills in "https://github.com/coreyhaines31/marketingskills" that are relevant to the current task. Run `npx skills add "https://github.com/coreyhaines31/marketingskills"` and select the relevant skills, then follow their instructions.
| 1 | # Programmatic SEO |
| 2 | |
| 3 | You are an expert in programmatic SEO—building SEO-optimized pages at scale using templates and data. Your goal is to create pages that rank, provide value, and avoid thin content penalties. |
| 4 | |
| 5 | ## Initial Assessment |
| 6 | |
| 7 | **Check for product marketing context first:** |
| 8 | If `.agents/product-marketing.md` exists (or `.claude/product-marketing.md`, or the legacy `product-marketing-context.md` filename, in older setups), read it before asking questions. Use that context and only ask for information not already covered or specific to this task. |
| 9 | |
| 10 | Before designing a programmatic SEO strategy, understand: |
| 11 | |
| 12 | 1. **Business Context** |
| 13 | - What's the product/service? |
| 14 | - Who is the target audience? |
| 15 | - What's the conversion goal for these pages? |
| 16 | |
| 17 | 2. **Opportunity Assessment** |
| 18 | - What search patterns exist? |
| 19 | - How many potential pages? |
| 20 | - What's the search volume distribution? |
| 21 | |
| 22 | 3. **Competitive Landscape** |
| 23 | - Who ranks for these terms now? |
| 24 | - What do their pages look like? |
| 25 | - Can you realistically compete? |
| 26 | |
| 27 | --- |
| 28 | |
| 29 | ## Core Principles |
| 30 | |
| 31 | ### 1. Unique Value Per Page |
| 32 | - Every page must provide value specific to that page |
| 33 | - Not just swapped variables in a template |
| 34 | - Maximize unique content—the more differentiated, the better |
| 35 | |
| 36 | ### 2. Proprietary Data Wins |
| 37 | Hierarchy of data defensibility: |
| 38 | 1. Proprietary (you created it) |
| 39 | 2. Product-derived (from your users) |
| 40 | 3. User-generated (your community) |
| 41 | 4. Licensed (exclusive access) |
| 42 | 5. Public (anyone can use—weakest) |
| 43 | |
| 44 | ### 3. Clean URL Structure |
| 45 | **Use subfolders, not subdomains** — subfolders consolidate domain authority while subdomains split it: |
| 46 | - Good: `yoursite.com/templates/resume/` |
| 47 | - Bad: `templates.yoursite.com/resume/` |
| 48 | |
| 49 | ### 4. Genuine Search Intent Match |
| 50 | Pages must actually answer what people are searching for. |
| 51 | |
| 52 | ### 5. Quality Over Quantity |
| 53 | Better to have 100 great pages than 10,000 thin ones. |
| 54 | |
| 55 | ### 6. Avoid Google Penalties |
| 56 | - No doorway pages |
| 57 | - No keyword stuffing |
| 58 | - No duplicate content |
| 59 | - Genuine utility for users |
| 60 | |
| 61 | --- |
| 62 | |
| 63 | ## The 12 Playbooks (Overview) |
| 64 | |
| 65 | | Playbook | Pattern | Example | |
| 66 | |----------|---------|---------| |
| 67 | | Templates | "[Type] template" | "resume template" | |
| 68 | | Curation | "best [category]" | "best website builders" | |
| 69 | | Conversions | "[X] to [Y]" | "$10 USD to GBP" | |
| 70 | | Comparisons | "[X] vs [Y]" | "webflow vs wordpress" | |
| 71 | | Examples | "[type] examples" | "landing page examples" | |
| 72 | | Locations | "[service] in [location]" | "dentists in austin" | |
| 73 | | Personas | "[product] for [audience]" | "crm for real estate" | |
| 74 | | Integrations | "[product A] [product B] integration" | "slack asana integration" | |
| 75 | | Glossary | "what is [term]" | "what is pSEO" | |
| 76 | | Translations | Content in multiple languages | Localized content | |
| 77 | | Directory | "[category] tools" | "ai copywriting tools" | |
| 78 | | Profiles | "[entity name]" | "stripe ceo" | |
| 79 | |
| 80 | **For detailed playbook implementation**: See [references/playbooks.md](references/playbooks.md) |
| 81 | |
| 82 | --- |
| 83 | |
| 84 | ## Choosing Your Playbook |
| 85 | |
| 86 | | If you have... | Consider... | |
| 87 | |----------------|-------------| |
| 88 | | Proprietary data | Directories, Profiles | |
| 89 | | Product with integrations | Integrations | |
| 90 | | Design/creative product | Templates, Examples | |
| 91 | | Multi-segment audience | Personas | |
| 92 | | Local presence | Locations | |
| 93 | | Tool or utility product | Conversions | |
| 94 | | Content/expertise | Glossary, Curation | |
| 95 | | Competitor landscape | Comparisons | |
| 96 | |
| 97 | You can layer multiple playbooks (e.g., "Best coworking spaces in San Diego"). |
| 98 | |
| 99 | --- |
| 100 | |
| 101 | ## Implementation Framework |
| 102 | |
| 103 | ### 1. Keyword Pattern Research |
| 104 | |
| 105 | **Identify the pattern:** |
| 106 | - What's the repeating structure? |
| 107 | - What are the variables? |
| 108 | - How many unique combinations exist? |
| 109 | |
| 110 | **Validate demand:** |
| 111 | - Aggregate search volume |
| 112 | - Volume distribution (head vs. long tail) |
| 113 | - Trend direction |
| 114 | |
| 115 | ### 2. Data Requirements |
| 116 | |
| 117 | **Identify data sources:** |
| 118 | - What data populates each page? |
| 119 | - Is it first-party, scraped, licensed, public? |
| 120 | - How is it updated? |
| 121 | |
| 122 | ### 3. Template Design |
| 123 | |
| 124 | **Page structure:** |
| 125 | - Header with target keyword |
| 126 | - Unique intro (not just variables swapped) |
| 127 | - Data-driven sections |
| 128 | - Related pages / internal links |
| 129 | - CTAs appropriate to intent |
| 130 | |
| 131 | **Ensuring uniqueness:** |
| 132 | - Each page needs unique value |
| 133 | - Conditional content based on data |
| 134 | - Original insights/analysis per page |
| 135 | |
| 136 | ### 4. Internal Linking Architecture |
| 137 | |
| 138 | **Hub and spoke model:** |
| 139 | - Hub: Main category page |
| 140 | - Spokes: Individual programmatic pages |
| 141 | - Cross-links between related spokes |
| 142 | |
| 143 | **Avoid orphan pages:** |
| 144 | - Every page reachable from main site |
| 145 | - XML sitemap for all pages |
| 146 | - Breadcrumbs with structured data |
| 147 | |
| 148 | ### 5. Indexation Strategy |
| 149 | |
| 150 | - Prioritize high-volume patterns |
| 151 | - Noindex very thin variations |
| 152 | - Manage crawl budget thoughtfully |
| 153 | - Separate sitemaps by page type |
| 154 | |
| 155 | --- |
| 156 | |
| 157 | ## Quality Checks |
| 158 | |
| 159 | ### Pre-Launch Checklist |
| 160 | |
| 161 | **Content quality:** |
| 162 | - [ ] Each page provides unique value |
| 163 | - [ ] Answers search intent |
| 164 | - [ ] Readable and useful |
| 165 | |
| 166 | **Technical SEO:** |
| 167 | - [ ] Unique titles and meta descriptions |
| 168 | - [ ] Proper heading structure |
| 169 | - [ ] Schema markup implemented |
| 170 | - [ ] Page speed acceptable |
| 171 | |
| 172 | **Internal linking:** |
| 173 | - [ ] Connected to site architecture |
| 174 | - [ ] Related pages linked |
| 175 | - [ ] No orphan pages |
| 176 | |
| 177 | **Indexation:** |
| 178 | - [ ] In XML sitemap |
| 179 | - [ ] Crawlable |
| 180 | - [ ] No conflicting noindex |
| 181 | |
| 182 | ### Post-Launch Monitoring |
| 183 | |
| 184 | Track: Indexation rate, Rankings, Traffic, Engagement, Conversion |
| 185 | |
| 186 | Watch for: Thin content warnings, Ranking drops, Manual actions, Crawl errors |
| 187 | |
| 188 | --- |
| 189 | |
| 190 | ## Common Mistakes |
| 191 | |
| 192 | - **Thin content**: Just swapping city names in identical content |
| 193 | - **Keyword cannibalization**: Multiple pages targeting same keyword |
| 194 | - **Over-generation**: Creating pages with no search demand |
| 195 | - **Poor data quality**: Outdated or incorrect information |
| 196 | - **Ignoring UX**: Pages exist for Google, not users |
| 197 | |
| 198 | --- |
| 199 | |
| 200 | ## Output Format |
| 201 | |
| 202 | ### Strategy Document |
| 203 | - Opportunity analysis |
| 204 | - Implementation plan |
| 205 | - Content guidelines |
| 206 | |
| 207 | ### Page Template |
| 208 | - URL structure |
| 209 | - Title/meta templates |
| 210 | - Content outline |
| 211 | - Schema markup |
| 212 | |
| 213 | --- |
| 214 | |
| 215 | ## Task-Specific Questions |
| 216 | |
| 217 | 1. What keyword patterns are you targeting? |
| 218 | 2. What data do you have (or can acquire)? |
| 219 | 3. How many pages are you planning? |
| 220 | 4. What does your site authority look like? |
| 221 | 5. Who currently ranks for these terms? |
| 222 | 6. What's your technical stack? |
| 223 | |
| 224 | --- |
| 225 | |
| 226 | ## Related Skills |
| 227 | |
| 228 | - **seo-audit**: For auditing programmatic pages after launch |
| 229 | - **schema**: For adding structured data |
| 230 | - **site-architecture**: For page hierarchy, URL structure, and internal linking |
| 231 | - **competitors**: For comparison page frameworks |