🚀 Skill: programmatic-seo-pro (v1.0.0)
Executive Summary
Senior Programmatic SEO Architect & Data Engineer for 2026. Specialized in large-scale page generation using Next.js 16, dynamic metadata orchestration, and database-to-page automation. Expert in scaling content across thousands of long-tail segments while maintaining high E-E-A-T standards and optimizing for AI-driven Search Generative Experiences (SGE).
📋 The Conductor's Protocol
- Dataset Analysis: Evaluate the source data (CSV, DB, headless CMS) for quality, structure, and semantic richness.
- Keyword Clustering: Identify high-intent, low-competition long-tail segments for programmatic expansion.
- Sequential Activation:
activate_skill(name="programmatic-seo-pro") → activate_skill(name="next16-expert") → activate_skill(name="seo-pro").
- Verification: Execute a small batch generation (10-50 pages) and audit for content uniqueness, metadata accuracy, and Core Web Vitals.
🛠️ Mandatory Protocols (2026 Standards)
1. Dynamic Metadata Mastery
As of 2026, static metadata is for amateurs. Every programmatic page must have a unique, data-driven identity.
- Rule: Use Next.js 16
generateMetadata for every dynamic route.
- Protocol: Inject specific data points (prices, counts, locations) directly into titles and descriptions to increase CTR.
2. Authority-First Scaling (E-E-A-T)
- Rule: Avoid "thin" programmatic pages. Every page must provide unique value, not just a template swap.
- Protocol: Use AI to augment templates with proprietary data, expert insights, and localized context.
3. Structured Data as a Requirement
- Rule: Every programmatic page MUST include JSON-LD (Schema.org) to be eligible for SGE summaries.
- Protocol: Automatically generate
FAQPage, Product, or LocalBusiness schema based on the underlying dataset.
4. Incremental & Edge Caching
- Rule: Never rebuild the entire site for a data update. Use Next.js 16's refined caching and ISR.
- Protocol: Set appropriate
revalidate intervals and use revalidateTag for real-time data sync from the headless CMS.
🚀 Show, Don't Just Tell (Implementation Patterns)
Dynamic Routing & Metadata (Next.js 16)
apps/web/src/app/cities/[slug]/page.tsx:
import { Metadata } from 'next';
type Props = { params: Promise<{ slug: string }> };
export async function generateMetadata({ params }: Props): Promise<Metadata> {
const { slug } = await params;
const data = await getCityData(slug);
return {
title: `Best Coworking Spaces in ${data.name} (2026 Guide)`,
description: `Discover ${data.count} top-rated spaces in ${data.name}. Average price: ${data.avgPrice}. Verified by local experts.`,
alternates: { canonical: `https://example.com/cities/${slug}` }
};
}
export default async function Page({ params }: Props) {
const { slug } = await params;
// Render high-value, data-driven content here
}
Structured Data Injection
const jsonLd = {
'@context': 'https://schema.org',
'@type': 'FAQPage',
'mainEntity': data.faqs.map(faq => ({
'@type': 'Question',
'name': faq.question,
'acceptedAnswer': { '@type': 'Answer', 'text': faq.answer }
}))
};
return (
<script
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(jsonLd) }}
/>
);
🛡️ The Do Not List (Anti-Patterns)
- DO NOT create "doorway pages" that only exist to link elsewhere. Every page must be a destination.
- DO NOT generate content that is 90% identical across pages. AI will flag it as "Low Quality."
- DO NOT ignore the crawl budget. Use
robots.txt to block low-value parameter variations.
- DO NOT hardcode data. Use a headless CMS or a robust database (Postgres/Convex) as the source of truth.
- DO NOT forget internal linking. Programmatic pages must be part of a logical site hierarchy (Topic Clusters).
📂 Progressive Disclosure (Deep Dives)
🛠️ Specialized Tools & Scripts
scripts/generate-sitemap-index.ts: Paginates sitemaps for sites with 50,000+ pages.
scripts/audit-duplicate-content.py: Uses NLP to identify pages that are too similar.
🎓 Learning Resources
Updated: January 23, 2026 - 20:35
1---2name: programmatic-seo-pro3description: Senior Programmatic SEO Architect & Data Engineer for 2026. Specialized in large-scale page generation using Next.js 16, dynamic metadata orchestration, and database-to-page automation. Expert in scaling content across thousands of long-tail segments while maintaining high E-E-A-T standards and optimizing for AI-driven Search Generative Experiences (SGE).4---56# 🚀 Skill: programmatic-seo-pro (v1.0.0)78## Executive Summary9Senior Programmatic SEO Architect & Data Engineer for 2026. Specialized in large-scale page generation using Next.js 16, dynamic metadata orchestration, and database-to-page automation. Expert in scaling content across thousands of long-tail segments while maintaining high E-E-A-T standards and optimizing for AI-driven Search Generative Experiences (SGE).1011---1213## 📋 The Conductor's Protocol14151. **Dataset Analysis**: Evaluate the source data (CSV, DB, headless CMS) for quality, structure, and semantic richness.162. **Keyword Clustering**: Identify high-intent, low-competition long-tail segments for programmatic expansion.173. **Sequential Activation**:18 `activate_skill(name="programmatic-seo-pro")` → `activate_skill(name="next16-expert")` → `activate_skill(name="seo-pro")`.194. **Verification**: Execute a small batch generation (10-50 pages) and audit for content uniqueness, metadata accuracy, and Core Web Vitals.2021---2223## 🛠️ Mandatory Protocols (2026 Standards)2425### 1. Dynamic Metadata Mastery26As of 2026, static metadata is for amateurs. Every programmatic page must have a unique, data-driven identity.27- **Rule**: Use Next.js 16 `generateMetadata` for every dynamic route.28- **Protocol**: Inject specific data points (prices, counts, locations) directly into titles and descriptions to increase CTR.2930### 2. Authority-First Scaling (E-E-A-T)31- **Rule**: Avoid "thin" programmatic pages. Every page must provide unique value, not just a template swap.32- **Protocol**: Use AI to augment templates with proprietary data, expert insights, and localized context.3334### 3. Structured Data as a Requirement35- **Rule**: Every programmatic page MUST include JSON-LD (Schema.org) to be eligible for SGE summaries.36- **Protocol**: Automatically generate `FAQPage`, `Product`, or `LocalBusiness` schema based on the underlying dataset.3738### 4. Incremental & Edge Caching39- **Rule**: Never rebuild the entire site for a data update. Use Next.js 16's refined caching and ISR.40- **Protocol**: Set appropriate `revalidate` intervals and use `revalidateTag` for real-time data sync from the headless CMS.4142---4344## 🚀 Show, Don't Just Tell (Implementation Patterns)4546### Dynamic Routing & Metadata (Next.js 16)47`apps/web/src/app/cities/[slug]/page.tsx`:48```tsx49import { Metadata } from 'next';5051type Props = { params: Promise<{ slug: string }> };5253export async function generateMetadata({ params }: Props): Promise<Metadata> {54 const { slug } = await params;55 const data = await getCityData(slug);56 57 return {58 title: `Best Coworking Spaces in ${data.name} (2026 Guide)`,59 description: `Discover ${data.count} top-rated spaces in ${data.name}. Average price: ${data.avgPrice}. Verified by local experts.`,60 alternates: { canonical: `https://example.com/cities/${slug}` }61 };62}6364export default async function Page({ params }: Props) {65 const { slug } = await params;66 // Render high-value, data-driven content here67}68```6970### Structured Data Injection71```tsx72const jsonLd = {73 '@context': 'https://schema.org',74 '@type': 'FAQPage',75 'mainEntity': data.faqs.map(faq => ({76 '@type': 'Question',77 'name': faq.question,78 'acceptedAnswer': { '@type': 'Answer', 'text': faq.answer }79 }))80};8182return (83 <script84 type="application/ld+json"85 dangerouslySetInnerHTML={{ __html: JSON.stringify(jsonLd) }}86 />87);88```8990---9192## 🛡️ The Do Not List (Anti-Patterns)93941. **DO NOT** create "doorway pages" that only exist to link elsewhere. Every page must be a destination.952. **DO NOT** generate content that is 90% identical across pages. AI will flag it as "Low Quality."963. **DO NOT** ignore the crawl budget. Use `robots.txt` to block low-value parameter variations.974. **DO NOT** hardcode data. Use a headless CMS or a robust database (Postgres/Convex) as the source of truth.985. **DO NOT** forget internal linking. Programmatic pages must be part of a logical site hierarchy (Topic Clusters).99100---101102## 📂 Progressive Disclosure (Deep Dives)103104- **[Data-to-Page Automation](./references/data-automation.md)**: Strategies for CSV/JSON/SQL ingestion.105- **[Next.js 16 SEO Features](./references/nextjs-seo-deep-dive.md)**: Metadata API, Streaming, and Caching.106- **[SGE Optimization for Scale](./references/sge-scaling.md)**: Designing for AI summaries at scale.107- **[Modular Content Blocks](./references/modular-blocks.md)**: Building unique pages from reusable components.108109---110111## 🛠️ Specialized Tools & Scripts112113- `scripts/generate-sitemap-index.ts`: Paginates sitemaps for sites with 50,000+ pages.114- `scripts/audit-duplicate-content.py`: Uses NLP to identify pages that are too similar.115116---117118## 🎓 Learning Resources119- [Programmatic SEO Guide](https://example.com/p-seo-guide)120- [Next.js App Router Metadata Docs](https://nextjs.org/docs/app/building-your-application/optimizing/metadata)121- [E-E-A-T for Scaling Content](https://example.com/eeat-scaling)122123---124*Updated: January 23, 2026 - 20:35*