On this page · 14 sections
- What changed in 2026, and why it matters now
- Pinecone: managed, fast to ship, priced by namespace size
- Qdrant: open-source engine with the deepest quantisation options
- Weaviate: hybrid search with per-dimension pricing
- Milvus and Zilliz Cloud: built for scale and lakehouse data
- pgvector: the default when Postgres is already in the stack
- Published benchmarks: useful, but read the label
- Head-to-head comparison
- Decision table: pick X if
- Worked cost example: 10 million vectors, 1,536 dimensions, 50 QPS
- India data residency, DPDP, and EU and US notes
- Implementation checklist and migration notes
- How eCorpIT can help
- References
Summary. No single winner, but a clear default for each situation. If you already run Postgres and sit under roughly 10 million vectors, pgvector (PostgreSQL License, HNSW and IVFFlat, vector indexes up to 2,000 dimensions) is the cheapest path. For an open-source dedicated engine with strong filtering and aggressive quantisation, Qdrant (Apache-2.0) fits best: its 4-bit TurboQuant cuts dense-vector RAM eightfold, managed clusters start near $26 a month, and its calculator lists AWS Mumbai. Weaviate suits hybrid keyword-plus-vector search and bills per stored dimension: Flex has a $45 monthly minimum, with dimensions from $0.00465 per million, and since August 2026 its repository mixes a BSD-3-Clause core with proprietary enterprise code. Milvus 3.0 (Apache-2.0, released 29 July 2026) and Zilliz Cloud fit 100-million-plus corpora and lakehouse data, with Dedicated clusters from $0.175 per CU-hour on Standard and $0.273 on Enterprise. Pinecone is the zero-ops managed choice, with a $20 Builder plan, $50 Standard and $500 Enterprise minimums, and BYOC generally available since 23 September 2026. Model Pinecone carefully: an on-demand query costs 1 read unit per GB of namespace, so one 71.5 GB namespace at 50 queries a second runs about $148,000 a month in read units, while dedicated read nodes bring the same load to roughly $700 to $1,030. For India data residency, self-hosting, Qdrant Cloud in Mumbai or Hybrid Cloud, Pinecone BYOC, Zilliz on Azure Central India (Pune) and managed Postgres in Mumbai keep vectors in the country.
About this article. Prices, licences, regions and benchmark claims were checked against vendor pages, documentation, GitHub repositories and the Gazette of India on 22 October 2026. Vendors change pricing often, so re-check before you commit. No vendor paid for inclusion or placement. Researched with AI assistance and reviewed by our editorial team.
What changed in 2026, and why it matters now
Pinecone added plans and deployment options. Its pricing page now shows Starter (free), a new Builder plan at $20 a month flat, Standard with a $50 minimum and a three-week trial worth $300, and Enterprise with a $500 minimum and a 99.95% SLA. Egress has been metered since 1 September 2026. Pinecone announced BYOC general availability on 23 September 2026 on AWS, Google Cloud and Azure, and added on-demand indexes to BYOC on 15 October; full-text search went GA on 9 September. In a 26 August post, the company said founder Edo Liberty is stepping back from day-to-day work while staying a shareholder and board member.
Milvus jumped a major version. Milvus 3.0.0 shipped on 29 July 2026 and 3.0.3 on 14 October, adding External Collections that query Parquet, Lance, Iceberg and Vortex files in place, online schema changes and TEXT fields.
Weaviate repriced and changed its licence. Weaviate Cloud is now Free, Flex and Premium, and a September 2026 price-book update gave RQ-4 compression its own price and corrected backup rates from 1 September. Since 26 August 2026, code in the repository's wl/ directory is under a proprietary Weaviate License that needs a licence key, while everything else stays BSD-3-Clause.
Qdrant previewed serverless. Qdrant Serverless is on a waitlist with pricing unpublished. The latest releases are Qdrant v1.19.2 (5 October) and Weaviate v1.40.1 (13 October).
India's DPDP Rules have dates. The Rules were notified on 13 November 2025, and the transfer-related Rules 13 and 15 apply from 13 May 2027. Where embeddings live is now a design input for Indian teams.
Pinecone: managed, fast to ship, priced by namespace size
Licence and deployment. Proprietary and managed. BYOC runs the data plane in your own AWS, Google Cloud or Azure account with no inbound access; it is Enterprise-only, priced as a platform fee plus node rates, and does not include integrated inference. Pinecone says a fully self-managed, air-gapped option is in development.
Pricing. Starter is free with 2 GB of storage, 1 million read units (RU), 2 million write units (WU) and 1 GB of egress, in AWS us-east-1 only. On Standard, a million RU cost $16 to $18 and a million WU $4 to $4.50 depending on cloud and region, storage is $0.33 per GB-month, and egress past the included 100 GB is $0.10 per GB. Enterprise RU run $24 to $27 per million and WU $6 to $6.75. HIPAA is included in Enterprise or costs $190 a month on Standard with a six-month minimum.
The metering detail that decides your bill. A query costs 1 RU per GB of the namespace searched, with a 0.25 RU minimum, whatever the top_k. Small tenant namespaces are cheap; one large namespace is expensive, and indexes default to 2,000 RU per second (adjustable). Dedicated read nodes (DRN) swap per-query RU for an hourly node rate, with 250 GB per shard and a single namespace per index.
Strengths. No servers to run, dense, sparse and full-text search in one index, integrated embedding and reranking, and a vendor-reported DRN customer example of 2,700 QPS at 100 ms p99 on 1.4 billion vectors.
Limits. No India region on the managed service: the region list covers five AWS regions (Virginia, Oregon, Ireland, Frankfurt, Singapore), Google Cloud us-central1 and europe-west4 (Netherlands), and Azure eastus2. BYOC can run in any customer region but is quote-priced.
Best for: managed infrastructure, many small tenant namespaces, or Enterprise BYOC.
Qdrant: open-source engine with the deepest quantisation options
Licence and deployment. Apache-2.0, written in Rust. Run it yourself, on Qdrant Cloud (AWS, Google Cloud, Azure), on Hybrid Cloud, where the data plane runs in your Kubernetes cluster and Qdrant manages it, or on Private Cloud, which you operate yourself for air-gapped setups.
Pricing. The free tier is one node with 0.5 vCPU, 1 GB RAM and 4 GB disk, roughly 1 million 768-dimension vectors; it is suspended after a week unused and deleted after four. Standard bills vCPU, memory, disk and backups hourly with a 99.5% SLA. Premium needs a minimum spend and adds SSO, private VPC links and 99.9% (single-AZ) or 99.95% (multi-AZ) SLAs. Rates sit in the calculator on the pricing page rather than in a table. For AWS us-east-1 on Standard they work out to $0.04928 per vCPU-hour, $0.00307 per GiB of RAM per hour and $0.00061 per GiB of disk per hour, about $36, $2.25 and $0.45 a month respectively; the smallest paid node (0.5 vCPU, 2 GiB RAM, 8 GiB disk) is about $26 a month, and the same node is cheaper in AWS Mumbai.
Strengths. Payload indexes and filterable HNSW, hybrid fusion (RRF and DBSF), multivectors for late interaction, and the finest memory control here. The capacity-planning guide documents float16, uint8 and 4-bit TurboQuant (0.5 bytes per dimension, available since v1.18.0), plus pinned, cached and cold tiers so originals sit on disk while compressed copies stay in RAM. Qdrant's home page shows SOC 2, GDPR and HIPAA badges.
Limits. Qdrant's guide says a single node typically tops out around 100 million vectors, so larger corpora mean sharding. Serverless pricing is not yet public.
Best for: filtered RAG, multi-tenant SaaS, and self-hosting or Hybrid Cloud in your own region.
Weaviate: hybrid search with per-dimension pricing
Licence and deployment. A BSD-3-Clause core, with some enterprise features (such as namespaces, backup deduplication and self-recovery in v1.40.1) under the proprietary Weaviate License since August 2026. Self-host, or use Weaviate Cloud on shared or dedicated infrastructure.
Pricing. Free covers 100,000 objects, 1 GB memory and 10 GB disk on AWS in two regions. Flex starts at $45 a month (99.5% SLA, AWS or Google Cloud, seven regions); that $45 is a minimum that includes dimension and storage charges, with backups billed on top. Flex dimensions start at $0.00465 per million, storage at $0.12 per GiB and backups at $0.03036 per GiB. Premium is prepaid from $400 a month and comes in two forms:
- Premium Shared: 99.9% SLA, AWS or Google Cloud in seven regions, from $0.003875 per million dimensions, $0.10 per GiB stored.
- Premium Dedicated: 99.95% SLA, AWS, Google Cloud or Azure across about 40 regions, from $0.002718 per million dimensions, $0.33 per GiB stored.
Rates vary by index type, compression and region, and data transfer is free for a promotional period.
Strengths. Native BM25-plus-vector hybrid search, two cluster profiles (Cost Optimized uses HFresh with automatic compression; Performance Optimized uses HNSW with RQ-8), and hosted embeddings from $0.025 per million tokens. RQ-4 is available for HNSW indexes only. Weaviate lists SOC 2 Type II.
Limits. HIPAA (on AWS), PrivateLink and customer-managed keys sit only on Premium Dedicated. Weaviate does not publish which regions make up its roughly 40, so confirm India with sales.
Best for: search-heavy RAG where keyword precision matters, billed on stored dimensions rather than queries.
Milvus and Zilliz Cloud: built for scale and lakehouse data
Licence and deployment. Milvus is Apache-2.0. Zilliz Cloud offers Free, Standard (Serverless and Dedicated), Enterprise, Business Critical and BYOC.
What 2.6 and 3.0 added. Milvus 2.6, announced in June 2025 and generally available on 5 August 2025, brought hot and cold tiered storage, RaBitQ 1-bit quantisation, int8 HNSW and the Woodpecker write-ahead log, which removes Kafka or Pulsar. Milvus 3.0 adds lakehouse collections; you can roll back to 2.6 until you enable Storage V3, which TEXT fields require.
Pricing. The free tier includes 5 GB and 2.5 million vCUs a month. Serverless costs $4 per million vCUs. Dedicated clusters on AWS in the US list these CU-hour rates, with storage at $0.025 per GB-month:
| Plan | Performance or capacity-optimised | Tiered storage | SLA |
|---|---|---|---|
| Standard | $0.175 | $0.263 | None |
| Enterprise (from $197 a month) | $0.273 | $0.41 | 99.95% |
| Business Critical | $0.41 | $0.615 | 99.99% with multiple replicas |
Zilliz rates one CU at about 2 million 768-dimension vectors performance-optimised (500 to 1,500 QPS), 8 million capacity-optimised (100 to 300 QPS) or 40 million tiered (10 to 50 QPS).
Strengths. The widest scale range here. Milvus offers GPU and DiskANN indexes, while Zilliz Cloud chooses indexes for you with AUTOINDEX. Zilliz lists SOC 2 Type II, ISO/IEC 27001 and GDPR on all plans, with HIPAA readiness on Business Critical only.
Limits. Self-hosted Milvus means running several services, and the region table shows no AWS Mumbai; Azure Central India (Pune) covers Dedicated and BYOC.
Best for: 100-million-to-billion-vector corpora and cost-sensitive cold data.
pgvector: the default when Postgres is already in the stack
pgvector (v0.8.7, PostgreSQL License) supports HNSW and IVFFlat, indexes up to 2,000 dimensions for vector, 4,000 for halfvec and 64,000 for bit, and iterative index scans (since 0.8.0) for filtered queries. It runs on Postgres 13 and later, though the README notes that 0.9.0 will drop 13 and 14. Tiger Data's pgvectorscale, also under the PostgreSQL License, adds a disk-based StreamingDiskANN index.
Managed options matter for India. Amazon RDS for PostgreSQL supports pgvector on PostgreSQL 15.2 and later in all AWS regions, Supabase offers Mumbai (ap-south-1), and Neon's nearest region is Singapore. We did not verify region-level pgvector support on Azure and Google Cloud for this article.
For depth, see our Postgres vector search comparison of pgvector, pgvectorscale, ParadeDB and Lantern, our pgvector versus dedicated database guide, and, on AWS, DynamoDB vs pgvector vs OpenSearch cost.
Published benchmarks: useful, but read the label
eCorpIT did not run its own benchmarks for this comparison. Three public sources are worth knowing:
- VectorDBBench, Zilliz's open-source tool. Its leaderboard is Zilliz-run: at a $1,000 monthly budget on 1 million 768-dimension Cohere vectors it shows Zilliz Cloud (8 CU) at 13,316 QPS with 0.938 recall, Qdrant Cloud (16 vCPU, 64 GB) at 1,242 QPS with 0.947 recall, and a single pod of Pinecone's older p2.x8 type at 1,147 QPS with 0.926 recall. The Pinecone setup is neither serverless nor DRN.
- Qdrant's benchmarks, vendor-run and last updated in June 2024; the page openly says the authors are probably biased.
- ANN-Benchmarks, the neutral academic reference, which includes pgvector, Qdrant, Milvus and Weaviate but runs every benchmark on a single CPU with dense datasets of 960 dimensions or fewer.
Compare only at equal recall, with your real filters and namespace sizes.
Head-to-head comparison
| Pinecone | Qdrant | Weaviate | Milvus / Zilliz | pgvector | |
|---|---|---|---|---|---|
| Licence | Proprietary | Apache-2.0 | BSD-3-Clause core, proprietary enterprise code | Apache-2.0 | PostgreSQL License |
| Self-host | BYOC only (Enterprise) | Yes, plus Hybrid and Private Cloud | Yes | Yes, plus BYOC | Yes, Postgres 13+ |
| Free tier | 2 GB, 1M RU, 2M WU | 1 GB RAM, 4 GB disk | 100k objects | 5 GB, 2.5M vCU | Your Postgres |
| Paid entry | $20 Builder; $50 Standard minimum | About $26/month smallest node | Flex $45 minimum | Serverless $4 per M vCU | Instance cost |
| Billing unit | RU, WU, GB-month, egress | vCPU, RAM, disk, hourly | Vector dimensions, GiB | vCU or CU-hour, GB-month | Compute and disk |
| Top SLA listed | 99.95% | 99.95% multi-AZ | 99.95% dedicated | 99.99% Business Critical | Provider-dependent |
| Hybrid search | Dense, sparse, full-text | Dense, sparse, RRF/DBSF | Native BM25 + vector | BM25, sparse, dense | Needs an extension such as ParadeDB |
| Quantisation | Managed internally | uint8, float16, 4-bit, binary | RQ-1, RQ-4, RQ-8 | int8, RaBitQ 1-bit | halfvec, binary_quantize |
| India region | BYOC only | Cloud on AWS Mumbai, Hybrid Cloud, self-host | Not published | Azure Central India (Dedicated, BYOC) | RDS, Supabase Mumbai |
| Compliance listed | SOC 2, ISO 27001, GDPR, HIPAA | SOC 2, GDPR, HIPAA badges | SOC 2 Type II; HIPAA on Premium Dedicated | SOC 2 Type II, ISO 27001; HIPAA-ready on Business Critical | Inherits provider |
Decision table: pick X if
| Pick | If |
|---|---|
| pgvector | You already run Postgres, sit under about 10 million vectors, and want filters and joins in SQL. |
| Qdrant | Most queries filter by tenant or metadata, you want Apache-2.0, or you need RAM cut hard with 4-bit quantisation. |
| Weaviate | Keyword precision matters (product codes, names, error strings) and you prefer billing by stored dimensions. |
| Milvus / Zilliz | You expect 100 million to billions of vectors, want tiered or lakehouse storage, or need Azure Central India. |
| Pinecone on-demand | Traffic is spiky and data sits in many small namespaces, so queries cost near the 0.25 RU floor. |
| Pinecone DRN or BYOC | One large index serves sustained QPS, or the data plane must stay in your own cloud account. |
Worked cost example: 10 million vectors, 1,536 dimensions, 50 QPS
Assumptions. 10 million chunks at 1,536 dimensions with 1 KB of metadata, an average 50 queries a second around the clock (50 × 86,400 × 30 = 129.6 million queries a month), two copies for availability where offered, list prices in US regions. All sizes are decimal GB.
Storage arithmetic. Raw float32 vectors take 10,000,000 × 1,536 × 4 bytes = 61.44 GB. With an 8-byte ID and 1 KB of metadata, Pinecone's sizing table puts the index at 71.5 GB. Compression changes the raw vector footprint like this:
| Encoding | Bytes per dimension | Vector size for 10M × 1,536 |
|---|---|---|
| float32 | 4 | 61.44 GB |
| float16 / halfvec | 2 | 30.72 GB |
| int8 scalar | 1 | 15.36 GB |
| 4-bit (Qdrant TurboQuant) | 0.5 | 7.68 GB |
| 1-bit binary | 0.125 | 1.92 GB |
Engines usually keep float32 originals on disk for rescoring, so quantisation mainly cuts RAM. Qdrant's published formula with replication factor 2 gives about 152 GB of RAM for float32 vectors including 20% headroom; with 4-bit copies pinned in RAM and originals cold, about 23 GB of RAM and 208 GB of disk with the 1 KB payload (171 GB without it).
Monthly list cost by option.
| Option | Configuration | Arithmetic | Approx. monthly |
|---|---|---|---|
| Pinecone on-demand, one namespace | 71.5 RU per query | 129.6M × 71.5 = 9.27B RU × $16 per M | ~$148,000; 3,575 RU/s also breaches the 2,000 RU/s default |
| Pinecone on-demand, 100 tenant namespaces | 0.715 RU per query | 92.7M RU × $16 per M + 71.5 GB × $0.33 | ~$1,510 plus egress |
| Pinecone DRN | 1 shard, 2 or 3 b1 replicas | $336.42 per node (Pinecone's documented example) × 2 or 3 + $23.60 storage | ~$700, or ~$1,030 with the 3 replicas Pinecone's calculator suggests |
| Weaviate Flex | 15,360M dimensions, 66.6 GiB | 15,360 × $0.00465 + 66.6 × ($0.12 + $0.03036) | ~$81 at floor rates; console quote is binding |
| Weaviate Premium Dedicated | Same data | Usage about $64 at floor rates | $400 minimum applies |
| Zilliz Dedicated, capacity-optimised | 3 CU (1,536 dims halves the 8M-per-CU figure) | 3 × 730 hours × $0.175 (Standard) or $0.273 (Enterprise) | ~$385 Standard, ~$600 Enterprise |
| Zilliz Dedicated, performance-optimised | 10 CU | 10 × 730 × $0.175 or $0.273 | ~$1,280 Standard, ~$1,995 Enterprise |
| Qdrant Cloud, AWS us-east-1 | 8 vCPU (our assumption), 21.8 GiB RAM (4-bit) or 141.9 GiB (float32), 193 GiB disk | Calculator unit rates × 732 hours | ~$425 (4-bit) or ~$695 (float32) |
| Supabase Postgres + pgvector, Mumbai | 4XL (64 GB RAM) with halfvec HNSW, or 8XL (128 GB) float32, ~150 GB disk | $25 Pro − $10 credit + $960 or $1,870 + ~$18 disk | ~$990 or ~$1,900, single instance |
The Pinecone single-namespace row is not a typo: on-demand cost scales with namespace size times query count, which is why Pinecone points sustained workloads at DRN. Pinecone egress adds about $120 a month at 10 KB per response (1,296 GB minus the 100 GB allowance, at $0.10 per GB). The Weaviate and Qdrant figures use list unit rates, and Qdrant's real nodes come in fixed sizes, so treat both as floors. Zilliz Standard carries no uptime SLA. The Supabase prices come from its pricing page, while the pgvector sizing is an eCorpIT estimate: HNSW stores each vector inside the index, so budget roughly the vector size again for float32, or half with halfvec. Embedding and LLM costs are excluded.
India data residency, DPDP, and EU and US notes
The DPDP Act does not ban transfers abroad by default; section 16 lets the Central Government restrict transfers to countries it notifies. Under the Rules, Rule 15 lets it attach requirements to transfers, but only about making personal data available to a foreign State, and Rule 13(4) lets it bar specified personal data of Significant Data Fiduciaries from leaving India. Both apply from 13 May 2027. Treat embeddings derived from personal data as personal data, because they link back to source chunks and often sit beside them as metadata.
Options that keep vectors in India today:
- Self-hosted Qdrant, Weaviate, Milvus or pgvector in an Indian cloud region such as AWS Mumbai.
- Qdrant Cloud on AWS Mumbai (ap-south-1), which its calculator lists among 13 AWS regions, or Qdrant Hybrid Cloud on your own Kubernetes cluster in India.
- Pinecone BYOC in your Indian cloud region: Enterprise only and quote-priced.
- Zilliz Dedicated or BYOC on Azure Central India (Pune).
- Managed Postgres such as Amazon RDS or Supabase in Mumbai.
Pinecone's standard service and Neon show no India region (Singapore is nearest), and Weaviate does not publish its list. For EU workloads, Pinecone offers Ireland, Frankfurt and the Netherlands, and Zilliz lists Frankfurt, Ireland and London on AWS plus Frankfurt and the Netherlands on Google Cloud. Region choice is a data-location control, not proof of DPDP or GDPR compliance.
Implementation checklist and migration notes
- Measure your shape. Count vectors, dimensions, metadata bytes, tenants and peak versus average QPS. Pinecone on-demand tracks namespace size, Weaviate tracks dimensions, and Qdrant and Zilliz Dedicated track provisioned resources.
- Decide tenancy. Namespaces, payload filters, tenants or partition keys change both cost and isolation.
- Test filtered recall at equal settings. On pgvector, enable iterative scans.
- Pick quantisation early. Start with int8 or halfvec, measure recall against float32, then try 4-bit or binary with rescoring.
- Plan re-embedding. On Pinecone, a 1,536-dimension record with 1 KB of metadata costs about 7.1 WU to upsert, so 10 million records cost roughly $286 at $4 per million unless you bulk-import from object storage. Choose the embedding model first; our embedding model selection guide compares the main options.
- Fix parsing before retrieval. Bad chunks sink any database, as our RAG document parsing comparison shows.
- Add retrieval evals to CI before launch, as in our guide to AI agent evals in CI/CD.
On AWS, weigh a managed option too: see Bedrock managed knowledge base vs self-managed RAG.
A minimal pgvector setup that halves index memory and improves filtered recall. Use SET LOCAL inside a transaction so the setting survives a transaction-mode connection pooler:
CREATE EXTENSION IF NOT EXISTS vector;
CREATE INDEX ON chunks
USING hnsw ((embedding::halfvec(1536)) halfvec_cosine_ops);
BEGIN;
SET LOCAL hnsw.iterative_scan = relaxed_order;
SELECT id, chunk_text
FROM chunks
WHERE tenant_id = 42
ORDER BY embedding::halfvec(1536) <=> $1::halfvec(1536)
LIMIT 10;
COMMIT;
How eCorpIT can help
eCorpIT is a Gurugram-based technology organisation, founded in 2021, assessed at CMMI Level 5 and MSME certified, with senior-led engineering teams working across AWS, Microsoft and Google platforms. Our RAG knowledge assistant service builds production RAG on any of the five options compared here: we size the index against your corpus, tenancy and filters, test recall at equal settings before you commit to a vendor, and keep vectors in the region your data rules require. Talk to us at /contact-us/.
Last updated: 22 October 2026.