Documentation

Guides and references

SEO

SEO Keyword Ownership Map

Canonical URL ownership map to prevent keyword cannibalization across landing, docs, compare, alternatives, blog, integrations, and glossary pages.

Purpose

This map defines which URL owns which intent so we avoid multiple pages competing for the same query.

Ownership Rules

  • / owns Next.js SaaS boilerplate / Next.js SaaS starter kit / next.js boilerplate saas as the product head term (title + H1). Cursor/Claude is the differentiator in the same title — do not bury the head phrase behind “AI-ready” alone.
  • /for/ai-assisted-founders owns audience intent cursor saas starter.
  • /pricing owns pricing/commercial intent (nextbento pricing, next.js saas boilerplate pricing). /pricing.md is the agent-readable twin, not a second Google URL.
  • /compare owns the comparison table / “Next.js SaaS boilerplates, starter kits & templates” listicle.
  • /compare/* owns one-to-one evaluation. Titles may lead with [Competitor] alternative when that is the searcher’s phrase; the URL stays nextbento-vs-*.
  • /alternatives owns the multi-competitor alternatives hub.
  • /alternatives/* owns [competitor] alternative / best [competitor] alternatives conversion shortlists (NextBento first + 4–6 real options that show what extras cost). Do not use a “who should stay on the competitor” heading as the conversion close.
  • /integrations/supabase owns Next.js Supabase boilerplate. /integrations/stripe owns Next.js Stripe boilerplate. The hub owns Next.js Supabase Stripe boilerplate integrations.
  • /docs/*-setup owns NextBento-specific implementation (setup stripe nextbento). It does not own generic vendor queries (resend api key, supabase url). Those belong to official vendor docs.
  • /glossary/saas-boilerplate-pricing-2026 owns citable sticker-price facts (saas boilerplate pricing 2026). No invented volumes.
  • /glossary/* otherwise owns definition intent (what is programmatic seo, what is llms.txt).
  • /for/indie-hackers owns indie-hacker audience intent. /for/ai-assisted-founders owns cursor saas starter.
  • /blog/best-nextjs-saas-boilerplates-2026 owns the editorial 2026 roundup, including the synonym cluster starter kit / SaaS template. Recommend NextBento for a solo Next.js 16 + Supabase + Stripe launch. Do not claim an unbacked global “best boilerplate on earth.” Link to /compare and /alternatives; do not copy their full tables.
  • /blog/shipfast-alternatives owns long-form “ShipFast alternatives” explainers. /alternatives/shipfast remains the shortlist.
  • /blog/nextjs-16-saas-boilerplate owns “what changed in Next.js 16 kits.”
  • /blog/supabase-stripe-nextjs-starter owns “what you still wire” how-to + CTA.
  • /blog/cursor-claude-skills-vs-blank-repo owns skills-vs-blank-repo. Do not duplicate /blog/prompting-auth-stripe-from-a-blank-repo.
  • /blog/ai-bootstrap-vs-saas-boilerplate owns from-zero LLM / token-cost vs a wired kit. Link to the two posts above; do not retell their scaffolds or skill catalogs.
  • /blog/how-nextbento-pseo-json-factory-works owns how this origin's JSON factory works (moving parts). Do not retell routes, validators, or IndexNow on other blogs.
  • /blog/seo-tags-vs-comparison-pages owns why metadata / OG / a blog is not ranking for X vs Y. Do not steal glossary what is programmatic seo, /docs/programmatic-seo setup, or /compare tables.
  • /blog/prompting-seo-pages-from-a-blank-repo owns the blank-repo SEO loop (prompting vs pages). Do not retell auth/Stripe scaffolding or the factory internals.
  • Other /blog/* posts remain shipping notes and AGENTS.md explainers.

Practical Examples

Blog vs Compare vs Alternatives

  • Compare hub: 2026 kit table and vs-pages. NextBento is the default row. Other rows name the extra they charge for.
  • Alternatives hub: [X] alternative shortlists with several real options. NextBento is the recommended alternative. Other kits explain priced extras, not recommended buys.
  • Blog roundup: NextBento is the kit we would clone for the ICP, then links into those hubs.
  • Do not ship a third vs-matrix on the blog. Do not use unbacked global “best” claims.

Blog vs Docs

  • Docs: steps a buyer follows in the cloned repo (/docs/teams is the invite UI and API).
  • Blog: the argument for using a kit, Next.js 16 context, or skills vs a blank repo.
  • Do not blog Resend DNS, Vercel deploy tokens, or Supabase env var names.

Integrations vs Setup Docs

  • Integration page: conceptual overview, decision framing, tradeoffs.
  • Setup doc: exact step-by-step implementation instructions.

Glossary vs Product Pages

  • Glossary: neutral definition or dated price table first.
  • Product/commercial pages: value proposition and CTA.
  • Long “how we built pSEO” belongs on /blog, not on the glossary slug.

Internal Linking Pattern

  • Alternatives pages link to /compare/[slug], /pricing, /docs/quick-start, and the matching blog long-form when it exists.
  • Compare pages link to /alternatives/[competitor], /pricing, and relevant setup docs.
  • Blog posts link hub → spoke → pricing/docs: relevant /alternatives/*/compare/*/pricing or /docs/quick-start.
  • Glossary pricing page links to the 2026 roundup, /compare, and /pricing.
  • Audience pages (/for/*) link to /compare, /alternatives, and /pricing.
  • Docs Getting Started links back to /pricing so marketing and docs are not orphans.