Turbopuffer for RAG
An object-storage-backed vector database built for cost: the latency trade its architecture makes.
turbopuffer is a managed vector and full-text search database built on object storage with a memory and SSD cache in front. Its appeal is cost when most namespaces stay cold; its tax is higher latency until a namespace is warm. Both sides of that architecture matter for RAG teams choosing a store, especially multi-tenant products where most namespaces sit idle between sessions.
What is turbopuffer as a vector database for RAG?
turbopuffer is a managed vector and full-text search database that keeps durable data on object storage and serves active data from memory and SSD cache. The September 2026 homepage capture describes vector search, BM25 full-text search, hybrid search, and metadata filtering in one product, marketed as roughly 10x cheaper than traditional always-hot vector databases for the workloads it targets.
It is not an open-source engine you self-host. Liveblocks’ 2026 vector-database comparison and Braintrust’s 2026 RAG vector-database survey both classify turbopuffer as managed-only. The homepage also publishes production-scale claims: 1T+ documents, 10M+ writes/s, and 25k+ queries/s seen in production systems. Those are vendor figures, not an independent benchmark on your corpus. Category background sits at what they change about retrieval.
ZenML’s 2026 survey of vector databases for RAG pipelines groups turbopuffer with object-storage-first designs aimed at massive scale where cost efficiency dominates. That framing matches the homepage economics claim and sets up the warm-versus-cold latency trade the next sections measure from turbopuffer’s own calculator sample.
How does turbopuffer’s object-storage architecture work?
Durable vectors live on cheap object storage; active namespaces hydrate into SSD and then RAM. Jason Liu’s September 2025 write-up of a session with Simon, turbopuffer’s CEO, describes that hierarchy as a pufferfish that inflates when queried and deflates when idle. The homepage diagram is the same story: client to memory/SSD cache to object storage.
The index design matches that storage physics. Liu contrasts clustered indexes that favour few large fetches with graph indexes such as HNSW that need many small round trips, a bad fit for object storage. Writes go to object storage first, which is why write latency is part of the trade, not an accident. The HNSW mechanism itself is covered at HNSW; the symptom of slow first queries belongs with RAG latency failures.
Liu’s session also stresses that embedding-model latency often dominates end-to-end RAG time, so a warm turbopuffer namespace can still look slow if the embedding call is the bottleneck. Storage amplification and query-pattern analysis matter too: many tiny namespaces behave differently from one giant always-hot collection. Those operational details are why architecture and pricing cannot be separated for this product.
Object storage also changes how you think about deletes and updates. Liu discusses how indexed content updates interact with the clustered layout; RAG teams that rewrite chunks frequently should validate update latency and consistency on a pilot namespace before assuming append-only economics. Facets and aggregations discussed in the same write-up can help RAG UIs filter by metadata without a second analytics store, which is useful when the answer must be constrained by tenant, locale, or document type.
How does turbopuffer work for RAG?
For RAG you upsert documents with vectors and attributes into a namespace, then run an approximate nearest-neighbour query with optional filters before generation. The homepage publishes automatic vector search recall@10 in the 90-100% band as a product claim; treat it as vendor guidance and measure on your own gold set. Full-text (BM25) and hybrid paths sit beside vector search for keyword-sensitive RAG.
Namespaces are the multi-tenant shape. Liu’s session describes Cursor mapping codebases to namespaces and warming cache when a project opens, and Notion running large vector counts across millions of namespaces where only a subset is active, exactly the cold-heavy pattern object storage is built for. Vectorize.io’s destination connector docs (September 2026 capture) show turbopuffer as a pipeline sink: configure the integration, then push chunks from an upstream RAG pipeline into a turbopuffer namespace.
Filter design belongs at metadata filtering; tenant isolation patterns at multi-tenancy; hybrid score fusion at hybrid search; wiring code at how to build a RAG pipeline.
Hybrid search matters when user queries mix error codes or SKUs with paraphrased intent. turbopuffer’s BM25-plus-vector surface covers that pattern in one API, but you still tune fusion weights and evaluate with lexical probes. Treat hybrid as available, not automatic excellence. The deeper fusion mechanics remain at hybrid fusion mechanics.
What are turbopuffer capabilities and limits side by side?
turbopuffer is easiest to judge when the cost win and the cold-start tax sit in the same table. The warm and cold latency figures in the following table come from turbopuffer’s own homepage calculator sample for a 10 million document, 1024-dimension collection (September 2026 capture). They are vendor-published numbers, not an independent lab result on your corpus.
| State | p50 | p90 | p99 |
|---|---|---|---|
| Warm namespace | 14 ms | 17 ms | 27 ms |
| Cold namespace | 874 ms | 1214 ms | 1686 ms |
The same capture pairs those latencies with product capabilities. Read the matrix as architecture, not marketing gloss.
| Capability | What you get | The limit that rides along |
|---|---|---|
| Object-storage economics | Cheap durable bytes for cold-heavy corpora | Cold namespaces pay in latency, not only in dollars |
| Warm cache path | Homepage sample: p50 14 ms / p99 27 ms when warm | Only after the namespace is hydrated |
| Cold path | Same sample still answers from object storage | Homepage sample: p50 874 ms / p99 1686 ms when cold |
| Vector + FTS + hybrid | ANN, BM25, and hybrid in one managed API | Fusion and embedding quality still need tuning |
| Namespace scale | Homepage markets extreme namespace counts for multi-tenant RAG | Pinned-namespace and other caps live on the vendor limits table; verify live docs |
| Managed service | No cluster to operate | No general self-host path if deployment control is mandatory |
That warm/cold gap is the architecture, not a misconfiguration. If every query must be hot on first touch, object-storage-first search is the wrong bet. Liveblocks also calls out high published limits as a reason they chose turbopuffer for AI Copilots, while still listing “not open source” as the explicit trade.
How much does turbopuffer cost?
As of the September 2026 homepage capture, turbopuffer publishes a Launch plan minimum of $16/month. Usage for storage, writes, and queries sits on top of plan minima; use the on-page calculator for a workload shape. ZenML’s 2026 survey lists turbopuffer plans starting at $64/month, which conflicts with the official homepage figure. Prefer the official homepage and pricing page over third-party summaries when figures disagree, and re-check live meters before you budget.
The economic claim on the homepage is order-of-magnitude cheaper storage versus always-RAM vector databases. Liu’s session relays customer anecdotes of large percentage savings after migration. Those are vendor and customer claims, not numbers measured here. Exact Enterprise dollar floors beyond marketing pages are not published in the organic article set as a complete rate card; do not invent them. Cost still belongs in the broader vector-database decision once you know how cold your namespaces really are.
If your finance model needs a hard monthly floor, start from the official Launch minimum and add projected storage and query usage from the homepage calculator rather than copying ZenML’s $64 figure. If your traffic is always hot, also model the opportunity cost of not using an always-RAM store: cold savings evaporate when every namespace stays pinned warm. That counterfactual is as important as the sticker price.
How does turbopuffer compare with Weaviate for RAG?
The choice is usually object-storage cost versus portable control. turbopuffer optimises for managed search where most data stays cold between queries. Weaviate optimises for an open-source vector database you can self-host, with native hybrid search and modules outside a single managed control plane. When peer lists appear in Braintrust and Liveblocks surveys, Weaviate leads the open-source column beside Qdrant and pgvector, while turbopuffer sits with managed object-storage options.
Pick turbopuffer when storage cost across many idle namespaces dominates the bill and you can tolerate cold-start latency or cache warming. Pick Weaviate when self-hosting, local parity, or open-source deployment control is the hard requirement. Pinecone remains the comparison point for teams that want managed search with a more always-hot latency profile and a different cost curve. The scored multi-database verdict belongs at which vector database should you use for RAG.
Operationally, turbopuffer asks you to design namespaces and warming strategy up front. Weaviate asks you to plan RAM for HNSW or accept disk-index trade-offs documented on its own profile. Neither answer is universal; the right choice is the one that matches whether your RAG traffic is bursty across many tenants or steady against one hot corpus.
For teams already measuring p95 on first-touch queries, the homepage cold sample is the number to put beside the bill of materials. For teams that can warm namespaces on session start, the warm sample is the more relevant SLA input. That is the decision turbopuffer forces, and it is the decision this profile exists to keep visible.
When does turbopuffer fit a RAG workload, and when does it not?
turbopuffer fits RAG workloads where the corpus is large, the active set is small, and storage cost dominates the bill. Notion-style and Cursor-style namespace patterns in Jason Liu’s September 2025 write-up are the clearest published examples: many isolated collections, only a fraction warm at once, and a willingness to hydrate cache when a workspace opens.
turbopuffer is a poor fit when every interactive query must hit a cold namespace with chatbot-grade first-token latency, or when your security policy forbids a managed-only search database. It is also the wrong default if your team needs to self-host for data residency and cannot accept Liveblocks’ “not open source” constraint. In those cases, Weaviate or another self-hostable engine is the nearer starting point, and the scored comparison still lives at scored multi-database verdict.
Teams that sit between those poles often warm namespaces on login or on document upload. That operational pattern turns the homepage cold sample into a startup cost rather than a steady-state SLA, which is why warming strategy belongs in the architecture review before the purchase decision.
What operational limits should a RAG team verify before committing?
Before committing, verify the live limits table on turbopuffer docs for pinned namespaces, per-namespace document caps, and any dimension constraints that apply to your embedding model. The homepage markets extreme scale, but the enforceable ceilings are the ones on the limits page, not the marketing hero. Braintrust’s survey also reminds teams that managed search still needs an evaluation harness: a fast index does not certify relevant chunks.
Measure recall@10 on your own gold questions rather than treating the homepage 90-100% band as a contract. Measure p50/p95 separately for warm and cold namespaces after a controlled cache flush. Measure write visibility latency if your RAG corpus updates continuously. Those three measurements convert vendor claims into decision inputs.
Also budget embedding latency separately, as Liu emphasises. A 14 ms warm vector query can still miss a 300 ms end-to-end target if embedding and generation dominate. That separation keeps turbopuffer from being blamed for a bottleneck it does not own, and keeps embedding choice linked to embeddings rather than buried inside store selection.
ZenML’s feature table also places turbopuffer next to Weaviate, Pinecone, Qdrant, and Milvus for RAG feature comparison. That survey context is useful for category placement, but it is not a substitute for measuring your own warm and cold namespaces. Survey rows compress architecture into a sentence; your traffic mix decides whether the compressed sentence is true.
Liveblocks chose turbopuffer for AI Copilots after comparing managed and open-source options, citing performance, low cost, and high published limits, while accepting the managed-only constraint. That case is a positive signal for product-assistant RAG, not a guarantee for legal or medical corpora with different freshness and residency rules. Copy the evaluation method, not the logo.
Braintrust’s matching guidance for use cases similarly separates “need a dedicated vector database” from “pgvector is enough” and “managed versus self-hosted”. turbopuffer answers the managed, cost-sensitive, high-namespace branch of that tree. If your answer is “we need open hybrid modules we can self-host”, Weaviate remains the default comparison here; if you instead need SQL joins beside vectors in one engine, the SingleStore or pgvector profiles are nearer.
Finally, treat the homepage production-scale claims (1T+ documents, 10M+ writes/s, 25k+ queries/s) as capacity marketing. Ask for architecture review notes on your peak write bursts, your pinned-namespace count, and your cold-start budget before you treat those figures as a sizing guarantee. The calculator sample latencies are more actionable for interactive RAG than the aggregate throughput headlines.
Namespace design is also a product design problem. A namespace per tenant isolates noisy neighbours and makes cold caches predictable, but it multiplies warming events. A namespace per document type can help hybrid lexical filters, but it can fragment recall if answers span types. Document the namespace key in the same runbook as chunk size and embedding model, because changing it later means re-upserting the corpus.
Security and compliance reviews should ask where object-storage bytes live, which regions are available, and how API keys map to namespaces. Liveblocks highlighted security as part of why turbopuffer cleared their bar; your review still needs region and retention answers from current vendor docs rather than from a third-party survey row. Nothing in the organic set captured here publishes a complete residency matrix suitable to cite as a site figure, so treat residency details as not published until you read the live security docs for your contract.
When you compare total cost of ownership, include the engineering time to build warming hooks and the risk of cold-start tickets from support. A lower storage invoice that creates p95 regressions on first chat messages is not a saving. Put the homepage cold p50 of 874 ms next to your product latency budget and decide explicitly whether first-touch queries are in scope.
Write a short architecture note before purchase: expected namespaces, warm fraction, embedding dimensions, daily upsert rate, and p95 budget for cold and warm paths. If that note cannot be filled, you are not ready to choose turbopuffer or any object-storage-first store, because the product only makes sense when those variables are known.
Keep one pilot namespace for continuous evaluation: fixed gold questions, scheduled cold and warm probes, and a weekly check that recall@10 has not drifted after embedding or chunking changes. That pilot costs less than a mistaken full migration, and it turns turbopuffer’s vendor calculator into a living control rather than a screenshot in a design doc.
turbopuffer is object-storage-first vector and full-text search: cheap when namespaces stay cold, slower on first touch, and managed-only. Use the homepage warm/cold sample as the honest latency pair, prefer official $16 Launch minima over conflicting third-party tables, and choose Weaviate when you need an open, self-hosted vector database instead of a cold-heavy managed index.