What is the difference between Firebase Realtime Database and Firestore?

Answer

Both are Firebase databases but differ significantly: (1) Data model — Realtime Database stores data as one large JSON tree; Firestore stores data as collections of documents (more structured); (2) Querying — Realtime Database has limited querying (single field sorting/filtering); Firestore supports compound queries, multiple conditions, multiple field ordering; (3) Scalability — Realtime Database has write limits (~1000 ops/sec per database); Firestore scales automatically to millions of concurrent users; (4) Offline — both support offline; Firestore has better mobile offline support; (5) Pricing — Realtime Database: priced per GB stored and downloaded; Firestore: priced per operation count (reads/writes/deletes); (6) Regions — Realtime Database: single region; Firestore: multi-region and single-region options; (7) Security Rules — Firestore rules are more expressive and granular. Choose Firestore for new projects. Use Realtime Database only for low-latency sync or legacy apps.