Programmatic SEO Analysis & Planning
Build and audit SEO pages generated at scale from structured data sources.
Enforces quality gates to prevent thin content penalties and index bloat.
Data Source Assessment
Evaluate the data powering programmatic pages:
- CSV/JSON files: Row count, column uniqueness, missing values
- API endpoints: Response structure, data freshness, rate limits
- Database queries: Record count, field completeness, update frequency
- Data quality checks:
- Each record must have enough unique attributes to generate distinct content
- Flag duplicate or near-duplicate records (>80% field overlap)
- Verify data freshness; stale data produces stale pages
Template Engine Planning
Design templates that produce unique, valuable pages:
- Variable injection points: Title, H1, body sections, meta description, schema
- Content blocks: Static (shared across pages) vs dynamic (unique per page)
- Conditional logic: Show/hide sections based on data availability
- Supplementary content: Related items, contextual tips, user-generated content
- Template review checklist:
- Each page must read as a standalone, valuable resource
- No "mad-libs" patterns (just swapping city/product names in identical text)
- Dynamic sections must add genuine information, not just keyword variations
URL Pattern Strategy
Common Patterns
/tools/[tool-name]: Tool/product directory pages
/[city]/[service]: Location + service pages
/integrations/[platform]: Integration landing pages
/glossary/[term]: Definition/reference pages
/templates/[template-name]: Downloadable template pages
URL Rules
- Lowercase, hyphenated slugs derived from data
- Logical hierarchy reflecting site architecture
- No duplicate slugs; enforce uniqueness at generation time
- Keep URLs under 100 characters
- No query parameters for primary content URLs
- Consistent trailing slash usage (match existing site pattern)
Internal Linking Automation
- Hub/spoke model: Category hub pages linking to individual programmatic pages
- Related items: Auto-link to 3-5 related pages based on data attributes
- Breadcrumbs: Generate BreadcrumbList schema from URL hierarchy
- Cross-linking: Link between programmatic pages sharing attributes (same category, same city, same feature)
- Anchor text: Use descriptive, varied anchor text. Avoid exact-match keyword repetition
- Link density: 3-5 internal links per 1000 words (match seo-content guidelines)
Thin Content Safeguards
Quality Gates
| Metric |
Threshold |
Action |
| Pages without content review |
100+ |
⚠️ WARNING: require content audit before publishing |
| Pages without justification |
500+ |
🛑 HARD STOP: require explicit user approval and thin content audit |
| Unique content per page |
<40% |
❌ Flag as thin content (likely penalty risk) |
| Word count per page |
<300 |
⚠️ Flag for review (may lack sufficient value) |
Scaled Content Abuse: Enforcement Context (2025-2026)
Google's Scaled Content Abuse policy (introduced March 2024) saw major enforcement escalation in 2025:
- June 2025: Wave of manual actions targeting websites with AI-generated content at scale
- August 2025: SpamBrain spam update enhanced pattern detection for AI-generated link schemes and content farms
- Result: Google reported 45% reduction in low-quality, unoriginal content in search results post-March 2024 enforcement
Enhanced quality gates for programmatic pages:
- Content differentiation: ≥30-40% of content must be genuinely unique between any two programmatic pages (not just city/keyword string replacement)
- Human review: Minimum 5-10% sample review of generated pages before publishing
- Progressive rollout: Publish in batches of 50-100 pages. Monitor indexing and rankings for 2-4 weeks before expanding. Never publish 500+ programmatic pages simultaneously without explicit quality review.
- Standalone value test: Each page should pass: "Would this page be worth publishing even if no other similar pages existed?"
- Site reputation abuse: If publishing programmatic content under a high-authority domain (not your own), this may trigger site reputation abuse penalties. Google began enforcing this aggressively in November 2024.
Recommendation: The WARNING gate at <40% unique content remains appropriate. Consider a HARD STOP at <30% unique content to prevent scaled content abuse risk.
Safe Programmatic Pages (OK at scale)
✅ Integration pages (with real setup docs, API details, screenshots)
✅ Template/tool pages (with downloadable content, usage instructions)
✅ Glossary pages (200+ word definitions with examples, related terms)
✅ Product pages (unique specs, reviews, comparison data)
✅ Data-driven pages (unique statistics, charts, analysis per record)
Penalty Risk (avoid at scale)
❌ Location pages with only city name swapped in identical text
❌ "Best [tool] for [industry]" without industry-specific value
❌ "[Competitor] alternative" without real comparison data
❌ AI-generated pages without human review and unique value-add
❌ Pages where >60% of content is shared template boilerplate
Uniqueness Calculation
Unique content % = (words unique to this page) / (total words on page) × 100
Measure against all other pages in the programmatic set. Shared headers, footers, and navigation are excluded from the calculation. Template boilerplate text IS included.
Canonical Strategy
- Every programmatic page must have a self-referencing canonical tag
- Parameter variations (sort, filter, pagination) canonical to the base URL
- Paginated series: canonical to page 1 or use rel=next/prev
- If programmatic pages overlap with manual pages, the manual page is canonical
- No canonical to a different domain unless intentional cross-domain setup
Sitemap Integration
- Auto-generate sitemap entries for all programmatic pages
- Split at 50,000 URLs per sitemap file (protocol limit)
- Use sitemap index if multiple sitemap files needed
<lastmod> reflects actual data update timestamp (not generation time)
- Exclude noindexed programmatic pages from sitemap
- Register sitemap in robots.txt
- Update sitemap dynamically as new records are added to data source
Index Bloat Prevention
- Noindex low-value pages: Pages that don't meet quality gates
- Pagination: Noindex paginated results beyond page 1 (or use rel=next/prev)
- Faceted navigation: Noindex filtered views, canonical to base category
- Crawl budget: For sites with >10k programmatic pages, monitor crawl stats in Search Console
- Thin page consolidation: Merge records with insufficient data into aggregated pages
- Regular audits: Monthly review of indexed page count vs intended count
Output
Programmatic SEO Score: XX/100
Assessment Summary
| Category |
Status |
Score |
| Data Quality |
✅/⚠️/❌ |
XX/100 |
| Template Uniqueness |
✅/⚠️/❌ |
XX/100 |
| URL Structure |
✅/⚠️/❌ |
XX/100 |
| Internal Linking |
✅/⚠️/❌ |
XX/100 |
| Thin Content Risk |
✅/⚠️/❌ |
XX/100 |
| Index Management |
✅/⚠️/❌ |
XX/100 |
Critical Issues (fix immediately)
High Priority (fix within 1 week)
Medium Priority (fix within 1 month)
Low Priority (backlog)
Recommendations
- Data source improvements
- Template modifications
- URL pattern adjustments
- Quality gate compliance actions
Error Handling
| Scenario |
Action |
| URL unreachable |
Report connection error with status code. Suggest verifying URL accessibility and checking for authentication requirements. |
| No programmatic pages detected |
Inform user that no template-generated or data-driven page patterns were found. Suggest checking if pages use client-side rendering or if the URL points to the correct section. |
| Thin content threshold exceeded |
Trigger quality gate warning. Report the unique content percentage and flag pages below 40% uniqueness. Require user acknowledgment before proceeding. |
| Quality gate violation |
Halt analysis at the HARD STOP threshold (500+ pages without justification or <30% unique content). Present findings and require explicit user approval to continue. |
1---2name: seo-programmatic3description: Programmatic SEO planning and analysis for pages generated at scale from data sources. Covers template engines, URL patterns, internal linking automation, thin content safeguards, and index bloat prevention. Use when user says "programmatic SEO", "pages at scale", "dynamic pages", "template pages", "generated pages", or "data-driven SEO".4license: MIT5---6
7# Programmatic SEO Analysis & Planning
8
9Build and audit SEO pages generated at scale from structured data sources.
10Enforces quality gates to prevent thin content penalties and index bloat.
11
12## Data Source Assessment
13
14Evaluate the data powering programmatic pages:
15- **CSV/JSON files**: Row count, column uniqueness, missing values
16- **API endpoints**: Response structure, data freshness, rate limits
17- **Database queries**: Record count, field completeness, update frequency
18- Data quality checks:
19 - Each record must have enough unique attributes to generate distinct content
20 - Flag duplicate or near-duplicate records (>80% field overlap)
21 - Verify data freshness; stale data produces stale pages
22
23## Template Engine Planning
24
25Design templates that produce unique, valuable pages:
26- **Variable injection points**: Title, H1, body sections, meta description, schema
27- **Content blocks**: Static (shared across pages) vs dynamic (unique per page)
28- **Conditional logic**: Show/hide sections based on data availability
29- **Supplementary content**: Related items, contextual tips, user-generated content
30- Template review checklist:
31 - Each page must read as a standalone, valuable resource
32 - No "mad-libs" patterns (just swapping city/product names in identical text)
33 - Dynamic sections must add genuine information, not just keyword variations
34
35## URL Pattern Strategy
36
37### Common Patterns
38- `/tools/[tool-name]`: Tool/product directory pages
39- `/[city]/[service]`: Location + service pages
40- `/integrations/[platform]`: Integration landing pages
41- `/glossary/[term]`: Definition/reference pages
42- `/templates/[template-name]`: Downloadable template pages
43
44### URL Rules
45- Lowercase, hyphenated slugs derived from data
46- Logical hierarchy reflecting site architecture
47- No duplicate slugs; enforce uniqueness at generation time
48- Keep URLs under 100 characters
49- No query parameters for primary content URLs
50- Consistent trailing slash usage (match existing site pattern)
51
52## Internal Linking Automation
53
54- **Hub/spoke model**: Category hub pages linking to individual programmatic pages
55- **Related items**: Auto-link to 3-5 related pages based on data attributes
56- **Breadcrumbs**: Generate BreadcrumbList schema from URL hierarchy
57- **Cross-linking**: Link between programmatic pages sharing attributes (same category, same city, same feature)
58- **Anchor text**: Use descriptive, varied anchor text. Avoid exact-match keyword repetition
59- Link density: 3-5 internal links per 1000 words (match seo-content guidelines)
60
61## Thin Content Safeguards
62
63### Quality Gates
64
65| Metric | Threshold | Action |
66|--------|-----------|--------|
67| Pages without content review | 100+ | ⚠️ WARNING: require content audit before publishing |
68| Pages without justification | 500+ | 🛑 HARD STOP: require explicit user approval and thin content audit |
69| Unique content per page | <40% | ❌ Flag as thin content (likely penalty risk) |
70| Word count per page | <300 | ⚠️ Flag for review (may lack sufficient value) |
71
72### Scaled Content Abuse: Enforcement Context (2025-2026)
73
74Google's Scaled Content Abuse policy (introduced March 2024) saw major enforcement escalation in 2025:
75
76- **June 2025:** Wave of manual actions targeting websites with AI-generated content at scale
77- **August 2025:** SpamBrain spam update enhanced pattern detection for AI-generated link schemes and content farms
78- **Result:** Google reported 45% reduction in low-quality, unoriginal content in search results post-March 2024 enforcement
79
80**Enhanced quality gates for programmatic pages:**
81- **Content differentiation:** ≥30-40% of content must be genuinely unique between any two programmatic pages (not just city/keyword string replacement)
82- **Human review:** Minimum 5-10% sample review of generated pages before publishing
83- **Progressive rollout:** Publish in batches of 50-100 pages. Monitor indexing and rankings for 2-4 weeks before expanding. Never publish 500+ programmatic pages simultaneously without explicit quality review.
84- **Standalone value test:** Each page should pass: "Would this page be worth publishing even if no other similar pages existed?"
85- **Site reputation abuse:** If publishing programmatic content under a high-authority domain (not your own), this may trigger site reputation abuse penalties. Google began enforcing this aggressively in November 2024.
86
87> **Recommendation:** The WARNING gate at `<40% unique content` remains appropriate. Consider a HARD STOP at `<30%` unique content to prevent scaled content abuse risk.
88
89### Safe Programmatic Pages (OK at scale)
90✅ Integration pages (with real setup docs, API details, screenshots)
91✅ Template/tool pages (with downloadable content, usage instructions)
92✅ Glossary pages (200+ word definitions with examples, related terms)
93✅ Product pages (unique specs, reviews, comparison data)
94✅ Data-driven pages (unique statistics, charts, analysis per record)
95
96### Penalty Risk (avoid at scale)
97❌ Location pages with only city name swapped in identical text
98❌ "Best [tool] for [industry]" without industry-specific value
99❌ "[Competitor] alternative" without real comparison data
100❌ AI-generated pages without human review and unique value-add
101❌ Pages where >60% of content is shared template boilerplate
102
103### Uniqueness Calculation
104Unique content % = (words unique to this page) / (total words on page) × 100
105
106Measure against all other pages in the programmatic set. Shared headers, footers, and navigation are excluded from the calculation. Template boilerplate text IS included.
107
108## Canonical Strategy
109
110- Every programmatic page must have a self-referencing canonical tag
111- Parameter variations (sort, filter, pagination) canonical to the base URL
112- Paginated series: canonical to page 1 or use rel=next/prev
113- If programmatic pages overlap with manual pages, the manual page is canonical
114- No canonical to a different domain unless intentional cross-domain setup
115
116## Sitemap Integration
117
118- Auto-generate sitemap entries for all programmatic pages
119- Split at 50,000 URLs per sitemap file (protocol limit)
120- Use sitemap index if multiple sitemap files needed
121- `<lastmod>` reflects actual data update timestamp (not generation time)
122- Exclude noindexed programmatic pages from sitemap
123- Register sitemap in robots.txt
124- Update sitemap dynamically as new records are added to data source
125
126## Index Bloat Prevention
127
128- **Noindex low-value pages**: Pages that don't meet quality gates
129- **Pagination**: Noindex paginated results beyond page 1 (or use rel=next/prev)
130- **Faceted navigation**: Noindex filtered views, canonical to base category
131- **Crawl budget**: For sites with >10k programmatic pages, monitor crawl stats in Search Console
132- **Thin page consolidation**: Merge records with insufficient data into aggregated pages
133- **Regular audits**: Monthly review of indexed page count vs intended count
134
135## Output
136
137### Programmatic SEO Score: XX/100
138
139### Assessment Summary
140| Category | Status | Score |
141|----------|--------|-------|
142| Data Quality | ✅/⚠️/❌ | XX/100 |
143| Template Uniqueness | ✅/⚠️/❌ | XX/100 |
144| URL Structure | ✅/⚠️/❌ | XX/100 |
145| Internal Linking | ✅/⚠️/❌ | XX/100 |
146| Thin Content Risk | ✅/⚠️/❌ | XX/100 |
147| Index Management | ✅/⚠️/❌ | XX/100 |
148
149### Critical Issues (fix immediately)
150### High Priority (fix within 1 week)
151### Medium Priority (fix within 1 month)
152### Low Priority (backlog)
153
154### Recommendations
155- Data source improvements
156- Template modifications
157- URL pattern adjustments
158- Quality gate compliance actions
159
160## Error Handling
161
162| Scenario | Action |
163|----------|--------|
164| URL unreachable | Report connection error with status code. Suggest verifying URL accessibility and checking for authentication requirements. |
165| No programmatic pages detected | Inform user that no template-generated or data-driven page patterns were found. Suggest checking if pages use client-side rendering or if the URL points to the correct section. |
166| Thin content threshold exceeded | Trigger quality gate warning. Report the unique content percentage and flag pages below 40% uniqueness. Require user acknowledgment before proceeding. |
167| Quality gate violation | Halt analysis at the HARD STOP threshold (500+ pages without justification or <30% unique content). Present findings and require explicit user approval to continue. |