{"slug": "mongodb", "name": "MongoDB", "category": "databases", "category_name": "Databases", "description": "", "recommenders": 1, "commenters": 8, "warners": 3, "score": -0.739, "rising": 1.0, "first": "2025-11-13", "latest": "2026-09-28", "why": "MongoDB is a natural choice if you are working with denormalized deeply hierarchical data structure like JSON.", "why_is_quote": true, "has_verdict": false, "sentiment": {"recommend": 1, "neutral": 3, "compare": 2, "warn": 3}, "spark": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0], "listed": false, "loved": [], "caveat": "", "short_quote": "MongoDB is a natural choice if you are working with denormalized deeply hierarchical data structure like JSON.", "icon": false, "domain": "mongodb.com", "github_repo": null, "official_url": "https://mongodb.com", "pricing": "", "aliases": ["MongoDB"], "verdict": null, "praise": [{"label": "", "summary": "", "quotes": [{"id": 798123568, "item_id": 49882723, "url": "https://news.ycombinator.com/item?id=49882723", "by": "stevefan1999", "date": "2026-09-28", "stance": "recommend", "quote": "MongoDB is a natural choice if you are working with denormalized deeply hierarchical data structure like JSON.", "excerpt": "MongoDB is a natural choice if you are working with denormalized deeply hierarchical data structure like JSON. It is also natural to JavaScript devs since the shell itself is JavaScript. This makes it super effective on modern web framework although I recently switched to Drizzle", "context": "", "use_case": "hierarchical JSON data", "switched_from": "", "story": "MongoDB CEO resigns to join Meta"}]}], "caveats": [{"label": "", "summary": "", "quotes": [{"id": 790011312, "item_id": 49375707, "url": "https://news.ycombinator.com/item?id=49375707", "by": "CodesInChaos", "date": "2026-08-20", "stance": "warn", "quote": "I wouldn't choose MongoDB for a new app, since the data model and query language suck", "excerpt": "My rule is \"use a single database for as many of you persistence needs as possible\". Often Postgres is a good choice for that database, but many other general purpose DBMSs will work just as well. In my previous company we used MongoDB, for almost everything, including text logs, request logs, job-queues and small template files. We added S3 since storing terabytes of files in a database is expensive. Now, I wouldn't", "context": "", "use_case": "general persistence at previous company", "switched_from": "", "story": "PostgreSQL for Everything"}, {"id": 781696208, "item_id": 48856013, "url": "https://news.ycombinator.com/item?id=48856013", "by": "LtWorf", "date": "2026-07-09", "stance": "warn", "quote": "It was really slow and the data in there was all buggy.", "excerpt": "Oh we used it in my first job. It was really slow and the data in there was all buggy. We really should have used postgres instead, but it was the \"big data\" period so you had to use mongodb.", "context": "", "use_case": "", "switched_from": "", "story": "Postgres rewritten in Rust, now passing 100% of the Postgres regression tests"}, {"id": 734663504, "item_id": 45916469, "url": "https://news.ycombinator.com/item?id=45916469", "by": "0xbadcafebee", "date": "2025-11-13", "stance": "warn", "quote": "You could cut your MongoDB costs by 100% by not using it ;)", "excerpt": "> Here's how we managed to cut our costs by 90% You could cut your MongoDB costs by 100% by not using it ;) > without sacrificing performance or reliability. You're using a single server in a single datacenter. MongoDB Atlas is deployed to VMs on 2-3 AZs. You don't have close to the same reliability. (I'm also curious why their M40 instance costs $1000, when the Pricing Calculator (https://www.mongodb.com/pricing) sa", "context": "", "use_case": "database", "switched_from": "", "story": "We cut our Mongo DB costs by 90% by moving to Hetzner"}]}], "who": [{"by": "darkurtpanke", "context": "systems programmer seeking work", "url": "https://news.ycombinator.com/item?id=49164278", "date": "2026-08-03"}], "tags": [], "use_cases": ["hierarchical json data", "general persistence at previous company", "self-managed database", "users, listings, events", "production replica set", "database"], "compared": [{"slug": "postgresql", "name": "PostgreSQL", "co": 3, "switched_from": 0, "switched_to": 1}, {"slug": "drizzle", "name": "Drizzle", "co": 1, "switched_from": 0, "switched_to": 1}, {"slug": "docker", "name": "Docker", "co": 2, "switched_from": 0, "switched_to": 0}], "makers": [], "threads": [{"url": "https://news.ycombinator.com/item?id=45915884", "title": "We cut our Mongo DB costs by 90% by moving to Hetzner", "mentions": 2}, {"url": "https://news.ycombinator.com/item?id=49879000", "title": "MongoDB CEO resigns to join Meta", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=49361279", "title": "PostgreSQL for Everything", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=49156682", "title": "Ask HN: Who wants to be hired? (August 2026)", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=48841676", "title": "Postgres rewritten in Rust, now passing 100% of the Postgres regression tests", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47957624", "title": "Functional Programmers need to take a look at Zig", "mentions": 1}], "sentiment_by_month": {"2025-11": {"warn": 1, "compare": 1, "neutral": 1}, "2025-12": {}, "2026-01": {}, "2026-02": {}, "2026-03": {}, "2026-04": {"compare": 1, "neutral": 1}, "2026-05": {}, "2026-06": {}, "2026-07": {"warn": 1}, "2026-08": {"neutral": 1, "warn": 1}, "2026-09": {"recommend": 1}, "2026-10": {}}, "quotes": [{"id": 798123568, "item_id": 49882723, "url": "https://news.ycombinator.com/item?id=49882723", "by": "stevefan1999", "date": "2026-09-28", "stance": "recommend", "quote": "MongoDB is a natural choice if you are working with denormalized deeply hierarchical data structure like JSON.", "excerpt": "MongoDB is a natural choice if you are working with denormalized deeply hierarchical data structure like JSON. It is also natural to JavaScript devs since the shell itself is JavaScript. This makes it super effective on modern web framework although I recently switched to Drizzle", "context": "", "use_case": "hierarchical JSON data", "switched_from": "", "story": "MongoDB CEO resigns to join Meta"}, {"id": 790011312, "item_id": 49375707, "url": "https://news.ycombinator.com/item?id=49375707", "by": "CodesInChaos", "date": "2026-08-20", "stance": "warn", "quote": "I wouldn't choose MongoDB for a new app, since the data model and query language suck", "excerpt": "My rule is \"use a single database for as many of you persistence needs as possible\". Often Postgres is a good choice for that database, but many other general purpose DBMSs will work just as well. In my previous company we used MongoDB, for almost everything, including text logs, request logs, job-queues and small template files. We added S3 since storing terabytes of files in a database is expensive. Now, I wouldn't", "context": "", "use_case": "general persistence at previous company", "switched_from": "", "story": "PostgreSQL for Everything"}, {"id": 786628450, "item_id": 49164278, "url": "https://news.ycombinator.com/item?id=49164278", "by": "darkurtpanke", "date": "2026-08-03", "stance": "neutral", "quote": "", "excerpt": "Location:Cape town. Remote: Yes. Obviously. I don\u2019t do office culture. I prefer quiet dark room with a 4K monitor and a mechanical keyboard. Willing to relocate: Only if the relocation involves a data center, a hackerspace, or a country with no extradition treaties. Otherwise, no. Technologies:Go, Rust, C, C++., Docker, FreeBSD, and I once fixed a mainframe. Don\u2019t ask how. MongoDB, I\u2019ve written my own key value store", "context": "systems programmer seeking work", "use_case": "", "switched_from": "", "story": "Ask HN: Who wants to be hired? (August 2026)"}, {"id": 781696208, "item_id": 48856013, "url": "https://news.ycombinator.com/item?id=48856013", "by": "LtWorf", "date": "2026-07-09", "stance": "warn", "quote": "It was really slow and the data in there was all buggy.", "excerpt": "Oh we used it in my first job. It was really slow and the data in there was all buggy. We really should have used postgres instead, but it was the \"big data\" period so you had to use mongodb.", "context": "", "use_case": "", "switched_from": "", "story": "Postgres rewritten in Rust, now passing 100% of the Postgres regression tests"}, {"id": 767336050, "item_id": 47958503, "url": "https://news.ycombinator.com/item?id=47958503", "by": "faangguyindia", "date": "2026-04-29", "stance": "neutral", "quote": "I manage a few MongoDB, PostgreSQL clusters.", "excerpt": "These days I just use a few languages: 1. Go, when I first saw code I wrote almost a decade ago still compiles and runs in Go, I decided to use Go for everything. There were some initial troubles when I started using it a decade ago, but now it's painless. 2. Haskell, I use it for DSL and state machines. 3. Bash for all deployment scripts and everything. 4. TypeScript, well for the frontend. Lately, I\u2019ve been using G", "context": "", "use_case": "self-managed database", "switched_from": "", "story": "Functional Programmers need to take a look at Zig"}, {"id": 764492368, "item_id": 47780773, "url": "https://news.ycombinator.com/item?id=47780773", "by": "rglover", "date": "2026-04-15", "stance": "compare", "quote": "I loved MongoDB's query language but grew too frustrated with the actual runtime", "excerpt": "A few months back I decided to write an embedded db for my firm's internal JS framework. Learned a lot about how/why databases work the way they do. I use stuff like reading memory cached markdown files for static sites, but there are certain things that a database gives you (chief of which for me was query ergonomics\u2014I loved MongoDB's query language but grew too frustrated with the actual runtime) that you'll miss o", "context": "", "use_case": "", "switched_from": "", "story": "Do You Even Need a Database?"}, {"id": 736363015, "item_id": 46022688, "url": "https://news.ycombinator.com/item?id=46022688", "by": "Chet-Fitzgerald", "date": "2025-11-23", "stance": "neutral", "quote": "Data: MongoDB for users/listings/events, S3 for assets", "excerpt": "I\u2019ve been building https://beatstorapon.com as a vertical, music-only alternative to generic freelance / gig marketplaces (Fiverr, Upwork etc.). Right now, if you\u2019re a rapper, producer, engineer, playlist owner or promoter, you get thrown into the same bucket as \u201cI\u2019ll design your logo for $5\u201d and \u201cI\u2019ll do data entry\u201d. The category is \u201cMusic & Audio\u201d, the incentives and UX are not built around how music actually works", "context": "", "use_case": "users, listings, events", "switched_from": "", "story": "BeatsToRapOn \u2013 A music-only marketplace and AI tools for artists"}, {"id": 734723536, "item_id": 45920221, "url": "https://news.ycombinator.com/item?id=45920221", "by": "rglover", "date": "2025-11-13", "stance": "compare", "quote": "I love MongoDB's query language (JS/Node.js developer so the syntax fits my mental model well), but running a production replica set without spending tons of cash is a nightmare.", "excerpt": "I love MongoDB's query language (JS/Node.js developer so the syntax fits my mental model well), but running a production replica set without spending tons of cash is a nightmare. Doubly so if you have any unoptimized queries (it's easy to trick yourself into thinking throwing more hardware at the problem will help). Lord help you if you use a hosted/managed service. Just fixed a bug on my MongoDB instance last night ", "context": "JS/Node.js developer", "use_case": "production replica set", "switched_from": "", "story": "We cut our Mongo DB costs by 90% by moving to Hetzner"}, {"id": 734663504, "item_id": 45916469, "url": "https://news.ycombinator.com/item?id=45916469", "by": "0xbadcafebee", "date": "2025-11-13", "stance": "warn", "quote": "You could cut your MongoDB costs by 100% by not using it ;)", "excerpt": "> Here's how we managed to cut our costs by 90% You could cut your MongoDB costs by 100% by not using it ;) > without sacrificing performance or reliability. You're using a single server in a single datacenter. MongoDB Atlas is deployed to VMs on 2-3 AZs. You don't have close to the same reliability. (I'm also curious why their M40 instance costs $1000, when the Pricing Calculator (https://www.mongodb.com/pricing) sa", "context": "", "use_case": "database", "switched_from": "", "story": "We cut our Mongo DB costs by 90% by moving to Hetzner"}]}