Install a Firebase Extension

You can install (and manage) any of the official Firebase extensions using either the Firebase console or the Firebase CLI (command-line interface).

Make sure to review the differences in the supported actions for the Firebase CLI and Firebase console.


To install or manage extensions, you must be assigned one of these roles: Owner or Editor or Firebase Admin.

To install an extension, your project must be on the Blaze (pay as you go) plan. Although there is no charge for installing an extension, you might be charged for your use of Firebase services or Cloud services such as Cloud Secret Manager, if your usage exceeds the services' free tier.

Before you begin

  1. If you haven't already, add Firebase to your project.

  2. If you haven't already, upgrade your project to the Blaze (pay as you go) plan.

  3. Install or update to the latest version of the Firebase CLI.

  4. Take note of either your Firebase project ID or previously configured project alias.

    • Project ID — Run firebase projects:list from anywhere on your computer.
    • Project alias — Run firebase use from your local app directory.

Step 1: View detailed information about an extension

This step is optional, but strongly recommended.

Before installing a Firebase Extension, we recommend that you review detailed information about the extension, including:

  • How the extension works, any pre-installation tasks, and details about the extension
  • General identifying information and description
  • Whether the extension's tasks require a billing account
  • Google services (APIs) and access roles required for operation
  • Resources created for the extension (like functions)
  • Descriptions of user-configurable parameters

To view an extension's detailed information:

  1. Make sure that you've set up your environment and selected an extension.

  2. Run the extension-info command from anywhere on your computer:

    firebase ext:info publisher-id/extension-id

    The publisher-id and extension-id arguments are required and can be found on the extension's preinstall details page.

Step 2: Install an extension

During the installation process, you'll be prompted to review the basic specifications for the extension (such as APIs enabled, resources created, access granted, etc.). You'll be notified of any billing requirements, and you'll also be prompted to specify values for the extension's configurable parameters.

  1. Make sure that you've set up your environment and selected an extension.

  2. From your local Firebase directory, run the extension-install command. If prompted, enter parameter values to customize the extension instance.

    firebase ext:install publisher-id/extension-id --project=projectId-or-alias

    The publisher-id and extension-id arguments are required and can be found on the extension's preinstall details page.

    Running this command adds an extension instance to your extensions manifest.

  3. Then, to deploy the extensions in your manifest onto a Firebase project, run:

    firebase deploy --only extensions --project=projectId-or-alias

Step 3: Complete post-install setup

Some extensions have required or optional steps for you to complete before using them. Find these instructions in your extension's post-install details page in the Extensions dashboard of the Firebase console (the specific link to the dashboard is displayed in the terminal after installation).

You can also find these instructions in the POSTINSTALL.md file included in the extension's source directory.

Create Firebase resources

If you configured the extension to use Firebase resources (Cloud Firestore collections, Realtime Database paths, Cloud Storage buckets) that don't already exist, create them before using the extension.

Create Eventarc event handlers

Some extensions publish to Eventarc when important events happen during execution. If an extension publishes events and you enabled events during installation, you can write functions that react to these events with your own custom logic. This can be useful, for example, to notify users when long-running tasks complete, or to post-process the output of an extension function.

See the extension's documentation for a list of events (if any) it publishes. For example, see the event types for the Run Payments with Stripe extension.

Then, see Custom event triggers for information on writing Eventarc event handlers.

Install multiple extension instances

You can install the same extension more than once in the same project. Each installed instance can have its own customized configuration and its own extension resources. You identify and refer to each installed instance using its instance ID, which is unique within your project. You'll be prompted to confirm or edit the instance ID of each additional instance of the extension you install.

Next Steps

  • View the details and the configuration of your installed extension in the Firebase console.

  • Monitor the activity of your installed extension, including checks on its health, usage, and logs.

  • Using the Firebase CLI, manage your installed extension. You can reconfigure or uninstall your extension, as well as update your extension to the latest version.

  • Using the Firebase console, manage your installed extension. For official Firebase extensions, you can reconfigure or uninstall your extension, as well as update your extension to the latest version.

  • As a best practice for all projects, make sure to set up budget alerts for your project and monitor your Usage and billing dashboard in the Firebase console.