RAG on a marketing site only pays off above ~50 pages of substantive content AND when visitor questions don't map cleanly to navigation

Threshold for when RAG pays off on a client marketing site:

  • 50+ pages of substantive content (knowledge base, docs, case studies).
  • User questions don't map cleanly to navigation (complex services, regulated industries).
  • Client has high support-ticket volume that could be deflected.

When traditional search wins:

  • Under 50 pages.
  • Strongly structured content (products with SKUs, locations, services with names).
  • Budget under $5k for the search feature alone.

Default RAG stack for SMB:

  • Embedding DB: pgvector in Postgres (Supabase, Neon, or self-hosted). Per Encore's pgvector benchmarks: "pgvector handles millions of vectors with HNSW indexing. Benchmarks show query times under 20ms at 1M vectors with recall rates above 95%."
  • Don't reach for Pinecone/Weaviate/Turbopuffer for SMB work — they're real wins above 10M vectors or with extreme multi-tenant requirements, neither of which apply to local-service businesses.
  • Embedding model: OpenAI text-embedding-3-small (1536 dim, cheap) or Voyage AI for higher quality.
  • LLM for generation: Claude Haiku for cost, Sonnet for quality.
  • Frontend: server-rendered chat island in Astro, streaming response via Cloudflare Worker.

For traditional search (preferred default): Pagefind (free, runs at build time, sub-300kB index for most SMB sites), Orama (in-browser, no backend), MiniSearch (lightweight JS), Algolia (when typo tolerance / analytics matter), Meilisearch (self-hosted, faceted).