<!-- llms-explorer concept facts · https://llms-explorer.com/tree/atlas-vector-search-numcandidates-tuning-and-recall-measurement-against-enn/ · pack 2026-10-30 · ~2068 tokens -->

# Atlas Vector Search numCandidates tuning and recall measurement against ENN

> Source-anchored research for Atlas Vector Search numCandidates tuning and recall measurement against ENN. Run status: COMPLETED.

Parent: [Atlas Vector Search automatic quantization and rescoring](https://llms-explorer.com/tree/atlas-vector-search-automatic-quantization-and-rescoring/) · 7 facets · 19 facts · page: https://llms-explorer.com/tree/atlas-vector-search-numcandidates-tuning-and-recall-measurement-against-enn/

## Definitions

- VectorDBBench is a Zilliz-sponsored benchmark with a MongoDB client option and vector-search and filtered-search cases. Its repository is tooling evidence, not independent confirmation of an Atlas cost or throughput advantage. (low confidence) — [source](https://github.com/zilliztech/VectorDBBench)

## Structure and components

- Methodological recommendation: define overlap recall@k explicitly as |ANN_k intersection ENN_k| / k when the exact result contains k items. Compute filtered ground truth within the same qualifying subset; Percona explicitly recomputes it by brute force for each predicate. (medium confidence) — [source](https://www.mongodb.com/docs/vector-search/query/improve-accuracy.md)

## How it works

- MongoDB recommends evaluating a set of 100 queries, comparing ANN results with ENN judgement lists, and adjusting numCandidates when discrepancies are large. (low confidence) — [source](https://www.mongodb.com/docs/vector-search/query/improve-accuracy.md)

## Measurements and reference values

- Jaccard similarity divides the intersection by the union. Derived consequence: for two size-k sets with overlap recall r, Jaccard equals r/(2-r); 90% overlap recall corresponds to about 81.8% Jaccard. Do not compare thresholds bearing these different definitions. (medium confidence) — [source](https://www.mongodb.com/docs/vector-search/query/improve-accuracy.md)

## Problems, failure modes and limitations

- In the cached MongoDB reference retrieved on 2026-10-14, the recommended starting point is numCandidates >= 20 × limit, followed by dataset-specific tuning; limit cannot exceed numCandidates, and numCandidates is capped at 10,000. These are source-dated API constraints and guidance, not an accuracy guarantee. (low confidence) (verified as of 2026-10-14) — [source](https://www.mongodb.com/docs/vector-search/query/aggregation-stages/vector-search-stage.md)
- HighLevel reports that gradual and aggressive numCandidates increases, including an example from 100 to 2000, increased vector work and worsened retrieval latency. Its May 4, 2026 migration account does not establish an ENN-based recall improvement or a universal Atlas limitation. (low confidence) — [source](https://engineering.gohighlevel.com/post/ai-knowledgebase-vector-db-migration)
- Redis reports that its historical MongoDB tests at numCandidates=2000, twenty times the returned count, did not exceed 0.82 on the metric the appendix calls precision. Elsewhere the same article discusses recall and uses a 0.82–0.98 recall range for MongoDB on GIST. Treat the result as a competitor-reported, configuration-specific warning against assuming 20× guarantees high recall; do not assert a current Atlas ceiling. (low confidence) — [source](https://redis.io/blog/benchmarking-results-for-vector-databases/)
- Build an ENN baseline with exact:true and an ANN comparison with numCandidates, using the same query vector, indexed field, filter, and returned limit. ENN supplies exact-neighbor ground truth for approximation accuracy. (medium confidence) — [source](https://www.mongodb.com/docs/vector-search/query/aggregation-stages/vector-search-stage.md)

## Comparisons and alternatives

- For an Atlas ENN baseline, set exact:true and omit the ANN candidate setting. MongoDB describes ENN as exhaustive distance evaluation and states that automatic quantization uses full-fidelity vectors for ENN. The expensive exact path is useful for measuring ANN accuracy rather than assuming ANN returns the same neighbors. (medium confidence) — [source](https://www.mongodb.com/docs/vector-search/query/aggregation-stages/vector-search-stage.md)
- Inference for TCO evaluation: compare systems at a common measured recall target and workload, rather than at equal candidate counts. Sweep search effort and record latency and throughput under representative load; otherwise a cheaper or faster configuration may simply retrieve fewer exact neighbors. MongoDB documents the candidate/latency trade-off, and Redis explicitly qualifies a comparison where MongoDB used a different recall range. (medium confidence) — [source](https://www.mongodb.com/docs/vector-search/query/aggregation-stages/vector-search-stage.md)
- Winata measures document-ID overlap against exact ground truth, explicitly removes self-matches, and reports that geometric recall does not measure human relevance. This supports separating ANN-versus-ENN fidelity from application relevance judgments. (low confidence) — [source](https://www.tintinwinata.my.id/article/mongodb-binary-quantization-75m/)
- MongoDB recommends starting with numCandidates at least 20 times limit, then tuning for the dataset and query requirements; this is a starting heuristic rather than a guaranteed recall threshold. (medium confidence) — [source](https://www.mongodb.com/docs/vector-search/query/aggregation-stages/vector-search-stage.md)
- Percona’s October 29, 2026 experiment evaluates Percona Search for MongoDB Technical Preview on Percona Server for MongoDB, rather than managed Atlas. Its measurements cannot directly substantiate Atlas latency, recall, or service cost. (low confidence) (verified as of 2026-10-29) — [source](https://www.percona.com/blog/benchmarking-vector-search-in-six-database-engines/)

## Facts and statements

- MongoDB describes numCandidates as the size of the ANN priority queue. A larger value can explore more of the HNSW graph and improve nearest-neighbor matching at increased query latency. HighLevel separately reports that increasing this parameter amplified latency in its production retrieval workload. (high confidence) — [source](https://www.mongodb.com/docs/vector-search/query/aggregation-stages/vector-search-stage.md)
- Measure ANN fidelity against ENN using the same query criteria. For full top-k sets, document-ID recall@k is the intersection of ANN top-k and exact top-k divided by k. MongoDB recommends an ENN baseline, while Winata implements this overlap formula against independently computed exact cosine neighbors. (high confidence) — [source](https://www.mongodb.com/docs/vector-search/query/improve-accuracy.md)
- In Winata’s August 2026 single-corpus experiment, 300 queries over approximately 75 million 512-dimensional vectors used candidate settings from 360 to 10,000. The author explicitly cautions that one corpus does not establish a scaling law and that the run had no query-time filters. Use this as evidence for workload-specific candidate sweeps, not a transferable production guarantee. (low confidence) — [source](https://www.tintinwinata.my.id/article/mongodb-binary-quantization-75m/)
- MongoDB describes numCandidates as the HNSW candidate priority-queue size; increasing it explores more of the graph and can improve matches while increasing latency and computational work. (medium confidence) — [source](https://www.mongodb.com/docs/vector-search/query/aggregation-stages/vector-search-stage.md)
- Methodological inference for TCO: sweep candidate counts and compare throughput and tail latency only at a common measured recall floor, with k, filters, concurrency, and deployment resources recorded. Percona reports throughput at explicit recall floors; VectorDBBench exposes recall, latency, and maximum-QPS measurements. (medium confidence) — [source](https://www.mongodb.com/docs/vector-search/query/aggregation-stages/vector-search-stage.md)
- MongoDB describes ENN as exhaustive distance calculation and warns about its latency cost; it also recommends considering ENN for small candidate populations and selective prefilters. Treat ENN baseline generation as benchmark work whose cost must be measured. (low confidence) — [source](https://www.mongodb.com/docs/vector-search/query/aggregation-stages/vector-search-stage.md)
