title, weight, partition
title
weight
partition
From Chroma
40
ecosystem
Migrate from Chroma to Qdrant
What You Need from Chroma
Chroma URL — the HTTP endpoint of your Chroma server
Collection name — the collection to migrate
Authentication — API token or basic auth credentials, if configured
Concept Mapping
Chroma
Qdrant
Notes
Collection
Collection
One-to-one mapping
Document
Point
Each document becomes a point
Embeddings
Vector
Mapped automatically
Metadata
Payload
Direct mapping
Documents (text)
Payload field
Stored via --qdrant.document-field
Run the Migration
With Authentication
All Chroma-Specific Flags
Flag
Required
Description
--chroma.url
No
Chroma HTTP endpoint (default: http://localhost:8000)
--chroma.collection
Yes
Collection name to migrate
--chroma.tenant
No
Chroma tenant
--chroma.database
No
Chroma database
--chroma.auth-type
No
none, basic, or token (default: none)
--chroma.username
No
Username (when auth-type is basic)
--chroma.password
No
Password (when auth-type is basic)
--chroma.token
No
Token (when auth-type is token)
--chroma.token-header
No
Custom header name for token auth
Qdrant-Side Options
Flag
Default
Description
--qdrant.document-field
document
Payload field name to store Chroma document text
--qdrant.id-field
__id__
Payload field name for original Chroma IDs
--qdrant.distance-metric
euclid
cosine, dot, manhattan, or euclid
Gotchas
Document text: Chroma stores raw document text alongside embeddings. Use --qdrant.document-field to preserve this text as a payload field in Qdrant.
ID mapping: Chroma uses string IDs. The migration tool maps these to Qdrant point IDs and stores the original Chroma ID in a payload field (default: __id__).
Distance metric: Chroma defaults to L2 distance. Verify which metric your collection uses and set --qdrant.distance-metric accordingly.
Next Steps
After migration, verify your data arrived correctly with the Migration Verification Guide .