Back to blog

Migrate Firebase projects to Appwrite

Migrate your Firebase projects to Appwrite Cloud in just one click.

If you’re ready to move from Firebase to Appwrite, or you just want to explore your BaaS options, we can give you a jump start with Appwrite Migrations.

Appwrite Console Migrations page

Moving is frustrating. Packing, unpacking, renting a truck, wondering if your bed fits through the door. Moving data between cloud platforms feels much the same, so we built Migrations to help lighten the load. Migrations will help you move users, data, and files out of Firebase and into your Appwrite project.

Limitations

Just like moving houses, not every piece of old furniture will suit your new house. You’ll need some creative rearranging or maybe some new furniture. Appwrite is different from Firebase in a similar sense.

  • Appwrite automatically moves user accounts or files, but documents and cloud functions will require some work to move.

  • Nested documents will require some clever engineering to be transformed into Appwrite relationships. In a future version, they might be added automatically, but you will need to migrate them with a script for now.

  • Appwrite Functions also use different syntax and deployment methods than Firebase’s Cloud Functions. These will need the most work to migrate and likely need to be partially rewritten.

Prepare for your move

To help you with your move, Appwrite Migrations will require keys to your old home to access your project’s users, files, and data. This means Appwrite will need your Firebase service account’s API key.

Firebase key management screen.

The quickest way to get a key is to use your Firebase Admin SDK service account and key, found under Project settings > Service accounts > Generate private key.

If you want to use an API key with a more fine-grained permission scope, checkout the Appwrite documentation on this topic.

Starting the migration

The Migration process is simple. Give Appwrite your keys, and it’ll pack up and move everything for you.

  1. Create a new project and click on the Migrations tab in Project Settings.

  2. Click on the Create Migration button and select Firebase as your source.

  3. Paste your Firebase API key’s JSON contents into the account credentials box and click Next.

  4. Select which resources you want Migrations to import and click Create to start the migration.

Migrations will run in the background, get a cup of tea or coffee, and return in a few minutes.

Wrapping up the move

After your migration is completed, you’ll need to do a few more things to wrap up your move to Appwrite.

First, you register your existing web, mobile, and native apps as platforms. Follow one of these quick starts to learn how.

Next, checkout our docs for Database relationships and install one of Appwrite’s Server SDKs to migrate your nested data.

Finally, learn about Appwrite Functions to migrate your Firebase functions. Appwrite’s functions support more runtimes, more flexible execution schemes, and follow patters found in HTTP controllers that you’re already familiar with.

Join the discussion

We’re always having a blast on Discord. With members in the community from all over the world, you’ll always find someone to support and share your Appwrite journey.

Subscribe to our newsletter

Sign up to our company blog and get the latest insights from Appwrite. Learn more about engineering, product design, building community, and tips & tricks for using Appwrite.