suede-programmatic-seo
Suede-owned programmatic SEO discipline. Use when designing data-backed keyword, location, directory, integration, or comparison pages at scale, including templates, index-worthiness gates, internal links, and rollout checks. NOT FOR: auditing an existing site (use suede-seo-audi
Install
npx skills add https://github.com/JasonColapietro/suede-creator-skills/tree/main/skills/suede-programmatic-seo
claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install jasoncolapietro-suede-creator-skills@llmmart
git clone https://github.com/JasonColapietro/suede-creator-skills.git
The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole jasoncolapietro/suede-creator-skills collection as a plugin from our marketplace. Git is the plain clone.
Skill manifest
Suede Programmatic SEO
Gate policy — advisory, not blocking
Every check, gate, and verdict in this skill — ship, ship-with-caveats,
hold, letter grades, BLOCKED or OPEN items, and every "do not ship / publish /
proceed" line below — is a recommendation to the user, not a control on the
agent. Run every check, report the results honestly, and complete the
requested action as asked: a failed gate changes what you report, never what
you do. Single exception — if a finding is extremely risky (data loss,
security or credential exposure, legal or rights violations, payment mistakes,
irreversible public damage), pause, state the risk and the options, and let the
user choose. Their choice is final.
Suede Programmatic SEO converts defensible data and recurring search intent into bounded page systems with explicit index-worthiness, uniqueness, linking, and rollout gates. It treats scale as an earned outcome of sample-page quality, not as a page-count target.
Initial Assessment
Check for product marketing context first:
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.
Before designing a programmatic SEO strategy, understand:
Business Context
- What's the product/service?
- Who is the target audience?
- What's the conversion goal for these pages?
Opportunity Assessment
- What search patterns exist?
- How many potential pages?
- What's the search volume distribution?
Competitive Landscape
- Who ranks for these terms now?
- What do their pages look like?
- Can you realistically compete?
- What does your domain authority look like against theirs?
Data and Delivery
- What data do you have, or can acquire, and where does it come from?
- What's the technical stack / CMS, and can it template, segment sitemaps,
and set
noindexper page?
Core Principles
1. Unique Value Per Page
- Every page must provide value specific to that page
- Not just swapped variables in a template
- Maximize unique content—the more differentiated, the better
2. Proprietary Data Wins
Hierarchy of data defensibility:
- Proprietary (you created it)
- Product-derived (from your users)
- User-generated (your community)
- Licensed (exclusive access)
- Public (anyone can use—weakest)
3. Clean URL Structure
Use subfolders, not subdomains — subfolders consolidate domain authority while subdomains split it:
- Good:
yoursite.com/templates/resume/ - Bad:
templates.yoursite.com/resume/
The 12 Playbooks (Overview)
| Playbook | Pattern | Example |
|---|---|---|
| Templates | "[Type] template" | "resume template" |
| Curation | "best [category]" | "best website builders" |
| Conversions | "[X] to [Y]" | "$10 USD to GBP" |
| Comparisons | "[X] vs [Y]" | "webflow vs wordpress" |
| Examples | "[type] examples" | "landing page examples" |
| Locations | "[service] in [location]" | "dentists in austin" |
| Personas | "[product] for [audience]" | "crm for real estate" |
| Integrations | "[product A] [product B] integration" | "slack asana integration" |
| Glossary | "what is [term]" | "what is pSEO" |
| Translations | Content in multiple languages | Localized content |
| Directory | "[category] tools" | "ai copywriting tools" |
| Profiles | "[entity name]" | "stripe ceo" |
Read references/playbooks.md when choosing a playbook, layering two, or implementing one: it carries the asset-to-playbook selection table, the combinations worth layering, and per-playbook implementation detail.
Implementation Framework
1. Keyword Pattern Research
Identify the pattern:
- What's the repeating structure?
- What are the variables?
- How many unique combinations exist?
Validate demand:
- Aggregate search volume
- Volume distribution (head vs. long tail)
- Trend direction
2. Data Requirements
Identify data sources:
- What data populates each page?
- Is it first-party, scraped, licensed, public?
- How is it updated?
3. Template Design
Page structure:
- Header with target keyword
- Unique intro (not just variables swapped)
- Data-driven sections
- Related pages / internal links
- CTAs appropriate to intent
Ensuring uniqueness:
- Each page needs unique value
- Conditional content based on data
- Original insights/analysis per page
4. Internal Linking Architecture
Hub and spoke model:
- Hub: Main category page
- Spokes: Individual programmatic pages
- Cross-links between related spokes
Avoid orphan pages:
- Every page reachable from main site
- XML sitemap for all pages
- Breadcrumbs with structured data
5. Indexation Strategy
- Prioritize high-volume patterns
- Noindex very thin variations
- Manage crawl budget thoughtfully
- Separate sitemaps by page type
Quality Checks
Pre-Launch Checklist
Run this on a bounded sample of 10 pages, or 5% of the planned set, whichever is larger — drawn across the data range (best-populated, median, and thinnest rows), never only the showcase pages. At least 90% of the sample must pass every gate below before any page beyond the sample is generated, published, or submitted for indexing. A failing sample means fix the template or narrow the page set; it never means ship the rest and watch.
Content quality (the index-worthiness gates):
- Page-unique data fields: at least 5 per page that differ from every sibling page, and at least one that no competitor page carries
- Template-shared text: no more than 40% of rendered body words are identical across sibling pages (measure on the thinnest row, not the best)
- Answers the search intent behind its query pattern, not just the keyword
- A reader who cannot use the product still gets something from the page
Technical SEO:
- Unique titles and meta descriptions — no two pages share either string
- Proper heading structure (one H1 carrying the page's variables)
- Schema markup implemented and validating
- Largest Contentful Paint measured on a real sample page, not assumed
Internal linking:
- Connected to site architecture
- Related pages linked
- No orphan pages
Indexation:
- In XML sitemap
- Crawlable
- No conflicting noindex
Post-Launch Monitoring
Check indexation rate in Search Console (indexed ÷ submitted, per page-type
sitemap) 30 days after each phase: below 60% means stop expanding the set and
re-run the sample gates. Hand the rest of the rollout metrics — rankings,
traffic, engagement, conversion, and thin-content or manual-action warnings — to
suede-analytics, which owns rollout performance.
Common Mistakes
- Thin content: Just swapping city names in identical content
- Keyword cannibalization: Multiple pages targeting same keyword
- Over-generation: Creating pages with no search demand
- Poor data quality: Outdated or incorrect information
- Ignoring UX: Pages exist for Google, not users
Output Contract
Close every programmatic SEO pass with this block, filled in. Write the literal templates — do not describe them.
PLAYBOOK: [name] — chosen because [pattern + data fit]
DATA DEFENSIBILITY: [tier 1-5] — source, provenance, refresh cadence
PAGE-COUNT BOUND: sample [N] → phase 1 [N] → ceiling [N], unlocked by [condition]
URL: [literal pattern] TITLE: [literal] META: [literal] H1: [literal]
UNIQUENESS: [page-unique fields, count per page] | template-shared body text: [N%]
LINK PLAN: hub [URL] → spokes [pattern] | cross-links [rule] | sitemap [file]
SAMPLE VERDICT: [N of N sample pages pass] — failing gates: [list or "none"]
SHIP GATE: ship | ship-with-caveats | hold — reason
Boundaries
- Do not generate, publish, submit, or index a full page set before a bounded sample passes the quality checks in this skill. When the sample fails or was never run, report it in this format: name the blocking gate and the failing count, give 2-4 options (fix the template, narrow the page set, add data, publish the passing subset only), and recommend one. Proceeding past the gate is the user's call, per the gate policy above.
- Do not invent source data, claim rankings or traffic, scrape restricted sources, or treat keyword volume as user value.
- Do not alter production routes, templates, canonicals, sitemaps, or internal links without an approved implementation scope and current-site verification.
Routing
- Use
suede-seo-auditto audit shipped pages and technical search health. - Use
suede-content-strategyfor non-templated editorial planning. - Use
suede-competitorsfor comparison-page evidence and framing. - Use
suede-ai-seoto make the generated pages extractable and citable by AI answer engines — it owns the extractability standard. - Use
suede-analyticsto define and read rollout performance.
Files (suede-creator-skills)
-
agents
-
openai.yaml 557 B
interface: display_name: "Suede Programmatic SEO" short_description: "Suede quality-gated search page systems" default_prompt: "Use $suede-programmatic-seo on [target]. The user wants many templated pages targeting keyword, location, integration, or comparison patterns. Work through template design, data sourcing, index-worthiness thresholds, and internal linking that holds up, ground every recommendation in evidence the user can check, and return the decisions, the reasoning, and what to measure next." policy: allow_implicit_invocation: true
-
-
evals
-
evals.json 6.7 KB
{ "skill_name": "suede-programmatic-seo", "evals": [ { "id": 1, "prompt": "We want to create programmatic SEO pages for our CRM. We're thinking of 'CRM for [industry]' pages — like 'CRM for Real Estate,' 'CRM for Healthcare,' etc. How should we approach this?", "expected_output": "Should check for product-marketing.md first. Should identify this as the Personas playbook (industry-specific pages). Should apply the core principles: unique value per page (not just swapping the industry name), proprietary data or insights per industry, clean URL structure. Should recommend the implementation framework: keyword research for each industry variation, data requirements (what industry-specific content makes each page unique), template design, internal linking strategy between industry pages and main pages, and indexation strategy. Should warn against thin content (just template + keyword swap).", "assertions": [ "Checks for product-marketing.md", "Identifies as Personas playbook", "Applies core principles (unique value, proprietary data, clean URLs)", "Recommends keyword research per variation", "Addresses data requirements for unique content", "Provides template design guidance", "Includes internal linking strategy", "Warns against thin content" ], "files": [] }, { "id": 2, "prompt": "Create a comparison page strategy. We want pages like 'Notion vs Asana', 'Notion vs Monday', etc. for all our competitors. We have 15 competitors.", "expected_output": "Should identify this as the Comparisons playbook. Should apply the programmatic approach for competitor comparison pages at scale. Should recommend: template structure for comparison pages, unique data per comparison (not just the same template with names swapped), keyword research for each '[competitor A] vs [competitor B]' variation, URL structure (/compare/notion-vs-asana), internal linking between comparison pages, and quality checks. Should cross-reference `suede-competitors` for page content structure.", "assertions": [ "Identifies as Comparisons playbook", "Recommends template structure for scale", "Addresses unique data per comparison", "Includes keyword research for variations", "Provides URL structure recommendation", "Includes internal linking strategy", "Cross-references suede-competitors", "Applies quality checks" ], "files": [] }, { "id": 3, "prompt": "we want to rank for '[tool name] integration' keywords. we integrate with 50+ tools and want a page for each. like 'Slack integration', 'Salesforce integration' etc.", "expected_output": "Should trigger on casual phrasing. Should identify this as the Integrations playbook. Should recommend: template design for integration pages (what it does, how to set up, use cases), unique content per integration (specific workflows, screenshots, setup steps), keyword research for '[tool] + [your product] integration', URL structure (/integrations/slack), hub page linking to all integration pages, and schema markup considerations. Should emphasize that each page needs genuine unique value, not just 'we integrate with [tool].'", "assertions": [ "Triggers on casual phrasing", "Identifies as Integrations playbook", "Recommends template with unique content per integration", "Includes setup steps and use cases per page", "Provides URL structure recommendation", "Recommends hub page for all integrations", "Emphasizes genuine unique value per page" ], "files": [] }, { "id": 4, "prompt": "We built 500 programmatic pages but Google isn't indexing most of them. Only 80 are in the index. What's going wrong?", "expected_output": "Should diagnose the indexation problem. Should apply the quality checks and indexation strategy guidance. Should investigate: thin content (are pages providing unique value or just template + keyword?), crawl budget (500 pages may be fine but depends on site authority), internal linking (are the pages discoverable?), XML sitemap inclusion, duplicate/near-duplicate content issues. Should recommend specific fixes: improve content uniqueness, strengthen internal linking, submit sitemap, check robots.txt, use Search Console for indexation requests. Should warn that Google may choose not to index thin pages regardless.", "assertions": [ "Diagnoses indexation problem", "Investigates thin content as likely cause", "Checks crawl budget considerations", "Checks internal linking to programmatic pages", "Checks XML sitemap and robots.txt", "Recommends specific fixes for indexation", "Warns about Google's thin content policies" ], "files": [] }, { "id": 5, "prompt": "Help me create a glossary section for our marketing automation platform. We want to define 200+ marketing terms and rank for '[term] definition' keywords.", "expected_output": "Should identify this as the Glossary playbook. Should apply the template design: term definition page template (definition, examples, related terms, how it applies to the user's product), hub/index page linking to all terms, URL structure (/glossary/[term]), alphabetical and categorical navigation. Should address quality: each definition should provide genuine value beyond a dictionary definition. Should include internal linking strategy and schema markup (DefinedTerm schema). Should recommend starting with highest-volume terms.", "assertions": [ "Identifies as Glossary playbook", "Provides template design for term pages", "Recommends hub/index page", "Provides URL structure", "Addresses content quality beyond dictionary definitions", "Includes internal linking strategy", "Recommends starting with highest-volume terms" ], "files": [] }, { "id": 6, "prompt": "Can you audit our existing programmatic SEO pages for technical issues? We have crawl errors and some pages return 404s.", "expected_output": "Should recognize this is a technical SEO audit task, not a programmatic SEO strategy task. Should defer to or cross-reference `suede-seo-audit`, which handles crawlability, indexation, and technical SEO issues. `suede-programmatic-seo` focuses on strategy, template design, and content planning for scaled pages.", "assertions": [ "Recognizes this as technical SEO audit task", "References or defers to suede-seo-audit", "Explains that suede-programmatic-seo is for strategy and template design", "Does not attempt full technical SEO audit" ], "files": [] } ] }
-
-
references
-
playbooks.md 8.1 KB
# The 12 Programmatic SEO Playbooks Beyond mixing and matching data point permutations, these are the proven playbooks for programmatic SEO. ## Contents - 1. Templates - 2. Curation - 3. Conversions - 4. Comparisons - 5. Examples - 6. Locations - 7. Personas - 8. Integrations - 9. Glossary - 10. Translations - 11. Directory - 12. Profiles - Choosing Your Playbook (Match to Your Assets, Combine Playbooks) ## 1. Templates **Pattern**: "[Type] template" or "free [type] template" **Example searches**: "resume template", "invoice template", "pitch deck template" **What it is**: Downloadable or interactive templates users can use directly. **Why it works**: - High intent—people need it now - Shareable/linkable assets - Natural for product-led companies **Value requirements**: - Actually usable templates (not just previews) - Multiple variations per type - Quality comparable to paid options - Easy download/use flow **URL structure**: `/templates/[type]/` or `/templates/[category]/[type]/` --- ## 2. Curation **Pattern**: "best [category]" or "top [number] [things]" **Example searches**: "best website builders", "top 10 crm software", "best free design tools" **What it is**: Curated lists ranking or recommending options in a category. **Why it works**: - Comparison shoppers searching for guidance - High commercial intent - Evergreen with updates **Value requirements**: - Genuine evaluation criteria - Real testing or expertise - Regular updates (date visible) - Not just affiliate-driven rankings **URL structure**: `/best/[category]/` or `/[category]/best/` --- ## 3. Conversions **Pattern**: "[X] to [Y]" or "[amount] [unit] in [unit]" **Example searches**: "$10 USD to GBP", "100 kg to lbs", "pdf to word" **What it is**: Tools or pages that convert between formats, units, or currencies. **Why it works**: - Instant utility - Extremely high search volume - Repeat usage potential **Value requirements**: - Accurate, real-time data - Fast, functional tool - Related conversions suggested - Mobile-friendly interface **URL structure**: `/convert/[from]-to-[to]/` or `/[from]-to-[to]-converter/` --- ## 4. Comparisons **Pattern**: "[X] vs [Y]" or "[X] alternative" **Example searches**: "webflow vs wordpress", "notion vs coda", "figma alternatives" **What it is**: Head-to-head comparisons between products, tools, or options. **Why it works**: - High purchase intent - Clear search pattern - Scales with number of competitors **Value requirements**: - Honest, balanced analysis - Actual feature comparison data - Clear recommendation by use case - Updated when products change **URL structure**: `/compare/[x]-vs-[y]/` or `/[x]-vs-[y]/` *See also: `suede-competitors` for detailed frameworks.* --- ## 5. Examples **Pattern**: "[type] examples" or "[category] inspiration" **Example searches**: "saas landing page examples", "email subject line examples", "portfolio website examples" **What it is**: Galleries or collections of real-world examples for inspiration. **Why it works**: - Research phase traffic - Highly shareable - Natural for design/creative tools **Value requirements**: - Real, high-quality examples - Screenshots or embeds - Categorization/filtering - Analysis of why they work **URL structure**: `/examples/[type]/` or `/[type]-examples/` --- ## 6. Locations **Pattern**: "[service/thing] in [location]" **Example searches**: "coworking spaces in san diego", "dentists in austin", "best restaurants in brooklyn" **What it is**: Location-specific pages for services, businesses, or information. **Why it works**: - Local intent is massive - Scales with geography - Natural for marketplaces/directories **Value requirements**: - Actual local data (not just city name swapped) - Local providers/options listed - Location-specific insights (pricing, regulations) - Map integration helpful **URL structure**: `/[service]/[city]/` or `/locations/[city]/[service]/` --- ## 7. Personas **Pattern**: "[product] for [audience]" or "[solution] for [role/industry]" **Example searches**: "payroll software for agencies", "crm for real estate", "project management for freelancers" **What it is**: Tailored landing pages addressing specific audience segments. **Why it works**: - Speaks directly to searcher's context - Higher conversion than generic pages - Scales with personas **Value requirements**: - Genuine persona-specific content - Relevant features highlighted - Testimonials from that segment - Use cases specific to audience **URL structure**: `/for/[persona]/` or `/solutions/[industry]/` --- ## 8. Integrations **Pattern**: "[your product] [other product] integration" or "[product] + [product]" **Example searches**: "slack asana integration", "zapier airtable", "hubspot salesforce sync" **What it is**: Pages explaining how your product works with other tools. **Why it works**: - Captures users of other products - High intent (they want the solution) - Scales with integration ecosystem **Value requirements**: - Real integration details - Setup instructions - Use cases for the combination - Working integration (not vaporware) **URL structure**: `/integrations/[product]/` or `/connect/[product]/` --- ## 9. Glossary **Pattern**: "what is [term]" or "[term] definition" or "[term] meaning" **Example searches**: "what is pSEO", "api definition", "what does crm stand for" **What it is**: Educational definitions of industry terms and concepts. **Why it works**: - Top-of-funnel awareness - Establishes expertise - Natural internal linking opportunities **Value requirements**: - Clear, accurate definitions - Examples and context - Related terms linked - More depth than a dictionary **URL structure**: `/glossary/[term]/` or `/learn/[term]/` --- ## 10. Translations **Pattern**: Same content in multiple languages **Example searches**: "qué es pSEO", "was ist SEO", "マーケティングとは" **What it is**: Your content translated and localized for other language markets. **Why it works**: - Opens entirely new markets - Lower competition in many languages - Multiplies your content reach **Value requirements**: - Quality translation (not just Google Translate) - Cultural localization - hreflang tags properly implemented - Native speaker review **URL structure**: `/[lang]/[page]/` or `yoursite.com/es/`, `/de/`, etc. --- ## 11. Directory **Pattern**: "[category] tools" or "[type] software" or "[category] companies" **Example searches**: "ai copywriting tools", "email marketing software", "crm companies" **What it is**: Comprehensive directories listing options in a category. **Why it works**: - Research phase capture - Link building magnet - Natural for aggregators/reviewers **Value requirements**: - Comprehensive coverage - Useful filtering/sorting - Details per listing (not just names) - Regular updates **URL structure**: `/directory/[category]/` or `/[category]-directory/` --- ## 12. Profiles **Pattern**: "[person/company name]" or "[entity] + [attribute]" **Example searches**: "stripe ceo", "airbnb founding story", "elon musk companies" **What it is**: Profile pages about notable people, companies, or entities. **Why it works**: - Informational intent traffic - Builds topical authority - Natural for B2B, news, research **Value requirements**: - Accurate, sourced information - Regularly updated - Unique insights or aggregation - Not just Wikipedia rehash **URL structure**: `/people/[name]/` or `/companies/[name]/` --- ## Choosing Your Playbook ### Match to Your Assets | If you have... | Consider... | |----------------|-------------| | Proprietary data | Stats, Directories, Profiles | | Product with integrations | Integrations | | Design/creative product | Templates, Examples | | Multi-segment audience | Personas | | Local presence | Locations | | Tool or utility product | Conversions | | Content/expertise | Glossary, Curation | | International potential | Translations | | Competitor landscape | Comparisons | ### Combine Playbooks You can layer multiple playbooks: - **Locations + Personas**: "Marketing agencies for startups in Austin" - **Curation + Locations**: "Best coworking spaces in San Diego" - **Integrations + Personas**: "Slack for sales teams" - **Glossary + Translations**: Multi-language educational content
-
-
CARD.md 4.5 KB
# Skill Card — Suede Programmatic SEO <!-- Generated by scripts/build-skill-cards.mjs — do not hand-edit. --> <!-- Regenerate with: npm run build:cards --> Release record for the `suede-programmatic-seo` skill, following the NVIDIA skill-card template (<https://docs.nvidia.com/skills/skill-cards>). It tells a reviewer what the skill does, who owns it, what it needs, what could go wrong, and what evidence backs the release — without requiring them to open the source first. ## Description Suede-owned programmatic SEO discipline. Status: production. Ships in the `suede-skills` plugin (the full pack) at release 0.19.0; loads as a Claude Code / Codex agent skill from this directory's [SKILL.md](./SKILL.md). ## Owner Jason Colapietro, Suede Labs AI (<https://github.com/JasonColapietro>). Security contact: `info@suedeai.ai` per [SECURITY.md](../../SECURITY.md). ## License / Terms of Use MIT ([LICENSE](../../LICENSE)). The pack's combined license expression is `MIT AND BSD-3-Clause`; this skill bundles no third-party licensed material of its own. ## Use Case Target users: developers and creators running the skill inside a Claude Code or Codex CLI session. Use when designing data-backed keyword, location, directory, integration, or comparison pages at scale, including templates, index-worthiness gates, internal links, and rollout checks. Out of scope — auditing an existing site (use suede-seo-audit), planning editorial content (use suede-content-strategy), or publishing bulk pages without approval. ## Deployment Geography Global. The skill is a prompt-and-script package that runs locally inside the invoking agent session; it pins no region-specific service of its own. ## Requirements / Dependencies - A Claude Code or Codex CLI session with the `suede-skills` plugin installed (install options: <https://skills.suedeai.ai/>). - Bundled files loaded relative to this directory: `agents/` (1 file), `references/` (1 file). - Credentials: none are bundled or required by the skill files. Any tool or API credentials come from the host session; never paste credentials into skill files, prompts, or outputs. ## Known Risks and Mitigations - Risk: an agent treats a quality gate as autonomous authority. Mitigation: every gate in the pack is advisory — it changes what is reported, never what the user decided; only extreme-risk findings (data loss, credential exposure, legal/rights violations, payment mistakes, irreversible public damage) pause for the user's explicit choice. - Risk: a skill instruction is used to act outside its mandate. Mitigation: the hard limits in the skill body's "Boundaries" section, quoted below. From "Boundaries": - Do not generate, publish, submit, or index a full page set before a bounded sample passes the quality checks in this skill. When the sample fails or was never run, report it in this format: name the blocking gate and the failing count, give 2-4 options (fix the template, narrow the page set, add data, publish the passing subset only), and recommend one. Proceeding past the gate is the user's call, per the gate policy above. - Do not invent source data, claim rankings or traffic, scrape restricted sources, or treat keyword volume as user value. - Do not alter production routes, templates, canonicals, sitemaps, or internal links without an approved implementation scope and current-site verification. ## References - Skill source: [`skills/suede-programmatic-seo/SKILL.md`](./SKILL.md) - Rendered reference page: <https://skills.suedeai.ai/skills/suede-programmatic-seo.html> - Security policy and reviewed scanner exceptions: [SECURITY.md](../../SECURITY.md) and [`.plugin-scanner.toml`](../../.plugin-scanner.toml) at the repo root ## Skill Output Structured Markdown returned in the agent's response, shaped by the output contract defined in the skill body: "Output Contract". The skill publishes, posts, and sends nothing without the user's explicit authorization; delivery decisions stay with the user. ## Skill Version 0.19.0 — the pack is single-versioned, so every skill releases together; see [VERSION](../../VERSION) and [CITATION.cff](../../CITATION.cff) for the release identifier this card describes. ## Ethical Considerations - The skill produces recommendations for a human decision-maker. Publishing, sending, payment, and rights decisions stay with the user. - Its gates require verifiable claims and honest reporting; do not use the skill to fabricate claims, evidence, metrics, or attribution. - Report suspected misuse or a security concern privately per [SECURITY.md](../../SECURITY.md); do not open a public issue for it. -
SKILL.md 9.4 KB
--- name: suede-programmatic-seo description: "Suede-owned programmatic SEO discipline. Use when designing data-backed keyword, location, directory, integration, or comparison pages at scale, including templates, index-worthiness gates, internal links, and rollout checks. NOT FOR: auditing an existing site (use suede-seo-audit), planning editorial content (use suede-content-strategy), or publishing bulk pages without approval." metadata: version: 2.0.0 --- # Suede Programmatic SEO ## Gate policy — advisory, not blocking Every check, gate, and verdict in this skill — `ship`, `ship-with-caveats`, `hold`, letter grades, BLOCKED or OPEN items, and every "do not ship / publish / proceed" line below — is a **recommendation to the user, not a control on the agent**. Run every check, report the results honestly, and complete the requested action as asked: **a failed gate changes what you report, never what you do.** Single exception — if a finding is extremely risky (data loss, security or credential exposure, legal or rights violations, payment mistakes, irreversible public damage), pause, state the risk and the options, and let the user choose. Their choice is final. Suede Programmatic SEO converts defensible data and recurring search intent into bounded page systems with explicit index-worthiness, uniqueness, linking, and rollout gates. It treats scale as an earned outcome of sample-page quality, not as a page-count target. ## Initial Assessment **Check for product marketing context first:** 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. Before designing a programmatic SEO strategy, understand: 1. **Business Context** - What's the product/service? - Who is the target audience? - What's the conversion goal for these pages? 2. **Opportunity Assessment** - What search patterns exist? - How many potential pages? - What's the search volume distribution? 3. **Competitive Landscape** - Who ranks for these terms now? - What do their pages look like? - Can you realistically compete? - What does your domain authority look like against theirs? 4. **Data and Delivery** - What data do you have, or can acquire, and where does it come from? - What's the technical stack / CMS, and can it template, segment sitemaps, and set `noindex` per page? --- ## Core Principles ### 1. Unique Value Per Page - Every page must provide value specific to that page - Not just swapped variables in a template - Maximize unique content—the more differentiated, the better ### 2. Proprietary Data Wins Hierarchy of data defensibility: 1. Proprietary (you created it) 2. Product-derived (from your users) 3. User-generated (your community) 4. Licensed (exclusive access) 5. Public (anyone can use—weakest) ### 3. Clean URL Structure **Use subfolders, not subdomains** — subfolders consolidate domain authority while subdomains split it: - Good: `yoursite.com/templates/resume/` - Bad: `templates.yoursite.com/resume/` --- ## The 12 Playbooks (Overview) | Playbook | Pattern | Example | |----------|---------|---------| | Templates | "[Type] template" | "resume template" | | Curation | "best [category]" | "best website builders" | | Conversions | "[X] to [Y]" | "$10 USD to GBP" | | Comparisons | "[X] vs [Y]" | "webflow vs wordpress" | | Examples | "[type] examples" | "landing page examples" | | Locations | "[service] in [location]" | "dentists in austin" | | Personas | "[product] for [audience]" | "crm for real estate" | | Integrations | "[product A] [product B] integration" | "slack asana integration" | | Glossary | "what is [term]" | "what is pSEO" | | Translations | Content in multiple languages | Localized content | | Directory | "[category] tools" | "ai copywriting tools" | | Profiles | "[entity name]" | "stripe ceo" | **Read [references/playbooks.md](references/playbooks.md)** when choosing a playbook, layering two, or implementing one: it carries the asset-to-playbook selection table, the combinations worth layering, and per-playbook implementation detail. --- ## Implementation Framework ### 1. Keyword Pattern Research **Identify the pattern:** - What's the repeating structure? - What are the variables? - How many unique combinations exist? **Validate demand:** - Aggregate search volume - Volume distribution (head vs. long tail) - Trend direction ### 2. Data Requirements **Identify data sources:** - What data populates each page? - Is it first-party, scraped, licensed, public? - How is it updated? ### 3. Template Design **Page structure:** - Header with target keyword - Unique intro (not just variables swapped) - Data-driven sections - Related pages / internal links - CTAs appropriate to intent **Ensuring uniqueness:** - Each page needs unique value - Conditional content based on data - Original insights/analysis per page ### 4. Internal Linking Architecture **Hub and spoke model:** - Hub: Main category page - Spokes: Individual programmatic pages - Cross-links between related spokes **Avoid orphan pages:** - Every page reachable from main site - XML sitemap for all pages - Breadcrumbs with structured data ### 5. Indexation Strategy - Prioritize high-volume patterns - Noindex very thin variations - Manage crawl budget thoughtfully - Separate sitemaps by page type --- ## Quality Checks ### Pre-Launch Checklist Run this on a **bounded sample of 10 pages, or 5% of the planned set, whichever is larger** — drawn across the data range (best-populated, median, and thinnest rows), never only the showcase pages. **At least 90% of the sample must pass every gate below** before any page beyond the sample is generated, published, or submitted for indexing. A failing sample means fix the template or narrow the page set; it never means ship the rest and watch. **Content quality (the index-worthiness gates):** - [ ] **Page-unique data fields: at least 5 per page** that differ from every sibling page, and at least one that no competitor page carries - [ ] **Template-shared text: no more than 40%** of rendered body words are identical across sibling pages (measure on the thinnest row, not the best) - [ ] Answers the search intent behind its query pattern, not just the keyword - [ ] A reader who cannot use the product still gets something from the page **Technical SEO:** - [ ] Unique titles and meta descriptions — no two pages share either string - [ ] Proper heading structure (one H1 carrying the page's variables) - [ ] Schema markup implemented and validating - [ ] Largest Contentful Paint measured on a real sample page, not assumed **Internal linking:** - [ ] Connected to site architecture - [ ] Related pages linked - [ ] No orphan pages **Indexation:** - [ ] In XML sitemap - [ ] Crawlable - [ ] No conflicting noindex ### Post-Launch Monitoring Check indexation rate in Search Console (indexed ÷ submitted, per page-type sitemap) 30 days after each phase: **below 60% means stop expanding the set and re-run the sample gates.** Hand the rest of the rollout metrics — rankings, traffic, engagement, conversion, and thin-content or manual-action warnings — to `suede-analytics`, which owns rollout performance. --- ## Common Mistakes - **Thin content**: Just swapping city names in identical content - **Keyword cannibalization**: Multiple pages targeting same keyword - **Over-generation**: Creating pages with no search demand - **Poor data quality**: Outdated or incorrect information - **Ignoring UX**: Pages exist for Google, not users --- ## Output Contract Close every programmatic SEO pass with this block, filled in. Write the literal templates — do not describe them. ```text PLAYBOOK: [name] — chosen because [pattern + data fit] DATA DEFENSIBILITY: [tier 1-5] — source, provenance, refresh cadence PAGE-COUNT BOUND: sample [N] → phase 1 [N] → ceiling [N], unlocked by [condition] URL: [literal pattern] TITLE: [literal] META: [literal] H1: [literal] UNIQUENESS: [page-unique fields, count per page] | template-shared body text: [N%] LINK PLAN: hub [URL] → spokes [pattern] | cross-links [rule] | sitemap [file] SAMPLE VERDICT: [N of N sample pages pass] — failing gates: [list or "none"] SHIP GATE: ship | ship-with-caveats | hold — reason ``` --- ## Boundaries - Do not generate, publish, submit, or index a full page set before a bounded sample passes the quality checks in this skill. When the sample fails or was never run, report it in this format: name the blocking gate and the failing count, give 2-4 options (fix the template, narrow the page set, add data, publish the passing subset only), and recommend one. Proceeding past the gate is the user's call, per the gate policy above. - Do not invent source data, claim rankings or traffic, scrape restricted sources, or treat keyword volume as user value. - Do not alter production routes, templates, canonicals, sitemaps, or internal links without an approved implementation scope and current-site verification. ## Routing - Use `suede-seo-audit` to audit shipped pages and technical search health. - Use `suede-content-strategy` for non-templated editorial planning. - Use `suede-competitors` for comparison-page evidence and framing. - Use `suede-ai-seo` to make the generated pages extractable and citable by AI answer engines — it owns the extractability standard. - Use `suede-analytics` to define and read rollout performance.
Comments (0)
Sign in to join the conversation.
Reviews (0)
No reviews yet.
No comments yet.