January 2026

IndexingStatus

January 16, 2026 · Chroma Cloud

When data is written to Chroma, it's first committed to our write-ahead log (Wal3), then indexed and persisted to object storage asynchronously. This architecture lets Chroma handle high-throughput writes without blocking, but until now, there was no way to know how much of your data had actually been indexed.

IndexingStatus tracks the progress of indexing operations in a Chroma collection. You can now call get_indexing_status() on any collection to see exactly where things stand.

The response includes:

  • num_indexed_ops: Operations that have been fully indexed
  • num_unindexed_ops: Operations still in the WAL, pending indexing
  • total_ops: Total operation count (adds, updates, upserts, and deletes)
  • op_indexing_progress: A float from 0.0 to 1.0 representing the proportion indexed

rust

let status = collection.get_indexing_status().await?;
println!("Indexed: {}", status.num_indexed_ops);
println!("Pending: {}", status.num_unindexed_ops);
println!("Total: {}", status.total_ops);
println!("Progress: {:.1}%", status.op_indexing_progress * 100.0);

python

status = collection.get_indexing_status()
print(f"Indexed: {status.num_indexed_ops}")
print(f"Pending: {status.num_unindexed_ops}")
print(f"Total: {status.total_ops}")
print(f"Progress: {status.op_indexing_progress:.1%}")

javascript

const status = await collection.getIndexingStatus();
console.log(`Indexed: ${status.numIndexedOps}`);
console.log(`Pending: ${status.numUnindexedOps}`);
console.log(`Total: ${status.totalOps}`);
console.log(`Progress: ${(status.opIndexingProgress * 100).toFixed(1)}%`);

IndexingStatus is available today on Chroma Cloud.