MongoDB Index Type

Hidden Indexes in MongoDB: How It Works and When to Use It

Remains maintained but is invisible to the query planner, making it possible to test index removal before dropping it.

What Is a Hidden Indexes in MongoDB?

Remains maintained but is invisible to the query planner, making it possible to test index removal before dropping it.

How the Hidden Indexes Algorithm Works

Remains maintained but is invisible to the query planner, making it possible to test index removal before dropping it.

Diagram showing the Hidden Indexes lookup algorithm
Conceptual Hidden Indexes algorithm. Exact behavior depends on the database version and query plan.

When to Use Hidden Indexes

Reversible checks of whether a workload depends on an index.

How to Create a MongoDB Hidden Indexes

Review data quality, existing structures, feature support, build time, and deployment requirements before creating an index on a production table.

db.orders.hideIndex("customerId_1_createdAt_-1")

Hidden Indexes Query Example

This example demonstrates the matching query shape. Check the execution plan to confirm that the engine can use the index.

db.orders.find({ customerId: 42 }).sort({ createdAt: -1 }).explain("executionStats")

Queries Supported by Hidden Indexes

Reversible checks of whether a workload depends on an index. A similar-looking predicate may not use the same access path; operators, expressions, key order, and data type all matter.

Read Performance, Storage, and Write Costs

Hidden indexes still use disk and incur write maintenance; hiding does not reclaim resources. Indexes reduce some search work but require storage and add maintenance to writes.

Hidden Indexes Limitations and Common Mistakes

Hiding changes planner visibility, not index correctness or maintenance.

Do not assume that an index being present means the optimizer chose it or that the query became selective.

How to Measure and Tune Hidden Indexes

Compare workload behavior and restore visibility if plans regress; drop only with evidence.

Compare representative plans and timings before and after, including concurrent writes and realistic data volumes.

Hidden Indexes Questions

Will the database always use this index?

No. The optimizer weighs selectivity, estimated costs, statistics, cache state, and the amount of data returned.

What should I verify before production?

Confirm version support, query compatibility, write overhead, build/rollback procedures, and index behavior during backup and recovery.

Official MongoDB Index Documentation

Check MongoDB documentation: Index Types for release-specific requirements and supported operators.