Export & import
Export a Firestore collection, query or selection to JSON, NDJSON, CSV or a Firedeck backup, and import files back with a preview first.
Export and import are part of Firedeck Pro. Copying a single document as JSON is free.
Export
Open a collection and choose Export… from the toolbar. You can export:
- the whole collection,
- the documents matching your current filter,
- or documents you selected in select mode.
Pick a format:
| Format | What it’s for |
|---|---|
| Firedeck backup | Restores every value type exactly — references, geopoints, bytes, full-precision timestamps. Use this for backups. |
| JSON | A readable array of { documentId, path, fields } objects. Re-importable. |
| NDJSON | The same objects, one per line. Re-importable, and easy to stream. |
| CSV | One row per document, one column per top-level field. Nested maps and arrays become JSON text. |
Each exported document counts as one Firestore read. The export streams to a file, so large collections don’t need to fit in memory, and you can leave the app while it runs. When it finishes, save the file to Files or iCloud Drive, or share it.
Import
Open a collection and choose Import…, then pick a file. Supported inputs:
- a Firedeck backup,
- JSON — an array of documents, or a map of ID → document,
- NDJSON — one JSON object per line,
- CSV with a header row — columns become fields, and types (number, boolean, timestamp, null, JSON) are detected per column.
Document IDs come from a documentId, _id or __id__ field. Rows without one get a new auto ID.
Nothing is written until you’ve reviewed the preview: the number of documents, a sample, the fields or columns, and any errors with their line numbers. Then choose what happens when an ID already exists:
- Skip it — only new documents are created,
- Replace it — the existing document is overwritten,
- Merge into it — only the fields in the file change.
Every import is recorded in history, so you can undo it: created documents are deleted and overwritten ones restored.