Vector Database Comparison: Pinecone vs Weaviate vs Qdrant vs pgvector vs Milvus

Vector databases are commoditizing fast, but the operational profile still varies enormously. Pinecone leads on managed simplicity, pgvector wins if you already run Postgres, Weaviate and Qdrant compete on features + self-host, Milvus dominates on billion-scale. Pick based on your existing stack, not a benchmark leaderboard.

Last reviewed:

What we're comparing

  • Managed-only serverless vector DB. Fastest to production, opinionated on architecture, zero ops.

  • Open-source + managed cloud. GraphQL API, hybrid search, generative modules (RAG built in).

  • Open-source (Rust) + managed cloud. Strong filtering, quantization support, gRPC API.

  • Postgres extension. Not a separate system — vectors live alongside relational data.

  • Open-source, cloud-native, billion-scale. Zilliz Cloud is the managed offering.

Side-by-side

AttributePineconeWeaviateQdrantpgvectorMilvus
DeploymentManaged onlyOSS + managedOSS + managedWherever Postgres runsOSS + Zilliz Cloud
Hybrid search (BM25 + vector)Yes (2024+)Yes (native)YesWith pg_trgm / tsvectorYes
Sweet-spot scale1M – 100M vectors1M – 500M vectors1M – 500M vectorsUp to ~10M vectors comfortably100M – 10B+ vectors
Metadata filtering perfGoodGoodExcellentExcellent (full SQL)Good
QuantizationNativePQ / BQ / SQScalar / product / binaryHNSW half-precision (0.7+)IVF / PQ / SQ / Diskann
LicenseProprietaryBSD-3Apache 2.0PostgreSQLApache 2.0
Ops overheadNoneMediumLow-mediumSame as your PostgresHigh
Best forShip fast, don't want to run infraFeature-rich RAG w/ some ops budgetPerf-per-$ with self-hostAlready run Postgres, moderate scaleBillion-scale, dedicated team

When to use which

  • Use Pinecone

    You want production RAG in a week and are willing to pay for zero ops.

  • Use Weaviate

    You want more control than Pinecone but not to build custom infrastructure. Their hybrid search and generative modules are strong out-of-box.

  • Use Qdrant

    Self-hosting with strong perf-per-dollar. Excellent filtering makes it a good fit for metadata-heavy workloads.

  • Use pgvector

    You already run Postgres and have <10M vectors. Zero new ops surface. Real trade-offs appear above ~10M vectors or with very high QPS.

  • Use Milvus

    You genuinely have (or credibly project) billion-scale vectors and can run a dedicated data platform team for it.

FAQs

  • Is pgvector fast enough for production?

    Yes for most enterprise RAG. With the HNSW index (pgvector 0.5+) and reasonable hardware, expect sub-100ms latency up to ~10M vectors. Above that, dedicated vector DBs start winning.

  • Can I use multiple vector DBs?

    Common in large orgs: pgvector for internal RAG (embedded in the app database), Pinecone or Qdrant for the customer-facing product surface. The abstractions above (LangChain, LlamaIndex) hide the difference.

  • Which vector DB does OpenAI / Anthropic use internally?

    They do not disclose specifics. Your choice does not track theirs — pick based on your operational profile.

Related comparisons

Framework dimensions

Next steps