Skip to content
Monghoul

Schema analysis

Sample a collection and get every field, its types, and how often each one appears.

Checked against v1.11.0 Updated
Schema analysis showing a field tree with types and how often each field occurs
Schema · Every field, its types, and how often it appears
  • Sample a configurable number of documents, with presets for the common sizes. Free analyzes up to 500 per run
  • Real-time progress with cancellation, listed in the footer under its collection name
  • Hierarchical field tree covering nested objects and arrays
  • Color-coded type badges for every detected BSON type, with arrays showing element types like array<number|string>
  • Per-field occurrence bar. Fields present in 100% of the sample are marked required
  • Stats summary: total fields, required, optional, enum count, sample size, and analysis time
  • Automatic enum detection with configurable thresholds: max distinct values (default 20) and max ratio (default 0.2)
  • Optional numeric enum support, and named field paths you can force to count as enums regardless
  • Manual enum editing. Add values, hover a chip to remove it, and edits persist immediately
  • Enum values drive autocomplete inside $in, $nin, $eq, $ne, and direct comparisons
  • Field search filters the tree by name and auto-expands the parents it needs
  • Automatic analysis and sample size are global settings, and each connection can inherit or override them
  • Per-connection overrides force automatic analysis on or off and set the sample to 50, 100, or 500 documents
  • Collections reached through $lookup.from, $graphLookup.from, $unionWith, $merge.into, or $out are analyzed automatically
  • Schema banner at the bottom of the editor generates a missing schema in one click, in the aggregation builder as well as the code editor
  • A collection with no documents says it has nothing to analyze, rather than reporting a missing schema
  • Copy the full schema as JSON, and results cache across sessions with a relative last-analyzed timestamp