SemanticSearchBenchmark

StatusTesting
Stackpgvector, Pinecone, Qdrant

Comparing vector databases for sub-50ms semantic search on large product catalogues.

Three identical indices built across pgvector (Supabase), Pinecone (managed), and Qdrant (self-hosted). Each contains 500,000 product embeddings generated from real e-commerce descriptions using OpenAI text-embedding-3-small. A test harness runs 1,000 queries per provider and measures: recall@10 (did the top 10 results contain the right products?), p95 latency, and cost per 1M queries.

pgvectorPineconeQdrant

Current results at 500k items: pgvector achieves 42ms p95 latency with HNSW indexing (recall@10: 0.91). Pinecone hits 28ms p95 (recall@10: 0.93) but costs 4x more. Qdrant self-hosted achieves 31ms p95 (recall@10: 0.94) with the best accuracy but requires infrastructure management. For most BRVO clients, pgvector on Supabase wins — good enough latency, best cost, zero extra infrastructure.

These benchmarks determine which vector database BRVO recommends per project. Small catalogues (under 50k items) always use pgvector. Large catalogues with strict latency requirements get Pinecone. The benchmark data backs every recommendation with real numbers.

Fashion marketplace

A platform with 500k products where "show me something like this but in blue and under £50" needs to return relevant results in under 50ms. Semantic search understands intent, not just keywords.

Documentation search

A developer tool with 10,000 docs pages. Developers search "how do I handle auth errors" — semantic search finds the right page even if it's titled "Error handling in authentication flows".

Job board

A recruitment platform where candidates describe what they want in natural language. "Remote Python role with flexible hours in fintech" matches jobs that don't use those exact words.

Want this for your business?

Start a sprint
Back toLab