ChromaDB

The open-source search infrastructure for AI. Fast, serverless, and scalable. Supporting vector, full-text, regex, and metadata search. Built on object storage and trusted by millions of developers.

Start free on Cloud Read the docs

Open source at the core

Chroma is licensed under Apache 2.0. The same codebase powers both the open-source database and Chroma Cloud, so there is no vendor lock-in.

Single-node

Run locally with pip, npm, or Docker. In-memory or persistent storage.

Chroma Cloud

Fully managed, serverless, and scalable. No provisioning, no tuning. Get started in under 30 seconds.

Bring your own cloud

Deploy in your own VPC with multi-region replication and point-in-time recovery. Full control over your infrastructure.

Many search methods, one platform

Chroma unifies dense vector search, sparse vector search, full-text search, regex matching, and metadata filtering in a single query interface. Combine them with hybrid search for the best retrieval quality.

Sparse vector search

  • Lexical search (BM25, SPLADE)

Vector search

  • Semantic similarity search

Full-text search

  • Trigram and regex search

Metadata search

  • Filtering and faceted search

Forking

  • Dataset versioning, A/B testing, and roll-outs

CLI

  • Command-line tools for development
// configure client and collection for sparse embeddings (BM25, SPLADE)
// Add documents with sparse embeddings (BM25)
await collection.add({
  ids: ["id1", "id2"],
  documents: ["Document about databases", "ML tutorial"]
})
// Query with sparse vector
const sparseRank = Knn({ query: "ML", key: "sparse_embedding" });
// Build and execute search
const search = new Search()
  .rank(sparseRank)
  .limit(10)
  .select(K.DOCUMENT, K.SCORE);
const results = await collection.search(search);

Terminal Output

$ node sparse-search.js
Connecting to Chroma...
✓ Connected successfully
Creating collection 'my_collection'...
✓ Collection created
Adding documents with sparse embeddings (BM25)...
✓ Added 2 documents
Querying with sparse vector...
✓ Query completed in 18ms
Results (ranked by BM25 score):
[\
  {\
    id: "id1",\
    document: "Document about databases",\
    score: 0.87,\
    metadata: {}\
  },\
  {\
    id: "id2",\
    document: "ML tutorial",\
    score: 0.45,\
    metadata: {}\
  }\
]

Fast search over billions of multi-tenant indexes

Chroma's indexes are built and optimized for object storage, offering unparalleled cost and performance. State-of-the-art vector, full-text, and regex search.

Latency

Metric Warm Latency Cold Latency
p50 20ms 650ms
p90 27ms 1.2s
p99 57ms 1.5s

Contact us to run a POC for your specific workload.

Dedicated clusters can be scaled to your specific requirements.

Technical specs

  • Write throughput (per collection): 30 MB/s (2000+ QPS)
  • Concurrent reads (per collection): 10 (200+ QPS)
  • Collections per database: 1M
  • Records per collection: 5M
  • Recall: 90-100%
┌───────────────────────────────┐
│ Query Layer                   │
│   Fast memory cache (hot)     │
│   SSD cache (warm)            │
└───────────────────────────────┘

↕ Intelligent tiering

┌───────────────────────────────┐
│ Storage Layer                 │
│   S3 / GCS (cold)             │
│     • All vectors             │
│     • All metadata            │
│     • All indexes             │
└───────────────────────────────┘

Unlike legacy search systems, Chroma is a database you'll want to be on-call for.

✓ Auto-scales with usage

✓ No manual tuning

✓ Serverless pricing

Chroma takes full advantage of object storage with automatic query-aware data tiering and caching.

✓ Vectors are large: 1GB text → 15GB of vectors

✓ Memory is expensive: $5/GB/mo

✓ Object storage is not: $0.02/GB/mo

Start searching with Chroma

Start free on Cloud.