Need help with firestore-migrator?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

270 Stars 78 Forks 43 Commits 30 Opened issues


:bullettrain_side: A CLI utility for moving data to and from Cloud Firestore

Services available


Need anything else?

Contributors list

# 282,811
27 commits
# 27,784
8 commits
# 561,889
1 commit

Fire Migrate

👀 Firestore now has an official import/export process. Consider that your first option if it suits your needs. If it does not, continue reading...

CLI tool for moving data in-n-out of Cloud Firestore.

  • Import/Export CSV, Excel, or JSON files to/from Firestore.
  • Encode/Decode Firestore data types such as GeoPoint, Reference, Timestamp, etc.

Watch the screencast


  • Clone and run
    npm install
  • Download the service account from your Firebase project settings, then save it as
    in the project root.
  • npm run build
    and you're off and running.

Import Data to Firestore

  • Push your local data to the Firestore database.
  • Selectively import [collections...] from source file to Firestore.
  • Omitting [collections...], or specifying root "/" will import all collections.
import|i [options]  [collections...]

Options: ``` -i, --id [field] Field to use for Document IDs. (default: doc_id) -a, --auto-id [str] Document ID token specifying auto generated Document ID. (default: Auto-ID) -m, --merge Merge Firestore documents. Default is Replace. -k, --chunk [size] Split upload into batches. Max 500 by Firestore constraints. (default: 500) -p, --coll-prefix prefixCollection prefix. (default: collection)

-s, --sheet [#] Single mode XLSX Sheet # to import.

-T, --truncate Delete all documents from target collections before import.

-d, --dry-run Perform a dry run, without committing data. Implies --verbose. -v, --verbose Output document insert paths -h, --help output usage information ```


fire-migrate import --dry-run test.json myCollection
fire-migrate import --merge test.INDEX.csv myCollection
fire-migrate i -m --id docid test.xlsx myCollection

Export Data from Firestore

  • Pull data from Firestore to a JSON, CSV or XLSX file.
  • Selectively export [collections...], or entire database with root "/".
  • Exports Sub-Collections by default, optionally disabled.
  • Splits CSV/XLSX collections into separate files/sheets with an INDEX.
export|e [options]  [collections...]

Options: ```

-n, --no-subcolls Do not export sub-collections. -p, --coll-prefix [prefix] Collection prefix (default: collection) -i, --id-field [id] Field name to use for document IDs (default: doc_id)

-v, --verbose Output traversed document paths -h, --help output usage information ```


fire-migrate export --verbose --no-subcolls myCollectionRootLevel.json myCollection
fire-migrate export users-posts.json users posts
fire-migrate e -v firestore-dump.xlsx

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.