Google is committed to advancing racial equity for Black communities. See how.


Firebase Extensions help you reduce time spent on development, maintenance, and growth of your app.

When you find a Firebase Extension that solves a need for your app or project, all you do is install and configure the extension. With extensions, you don't spend time researching, writing, and debugging the code that implements functionality or automates a task for your app or project.

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

Also, to install an extension, your project must be on the Blaze (pay as you go) plan. You will be charged a small amount (typically around $0.01/month) for each instance of an extension you have installed, in addition to any charges associated with your use of Firebase services.

Official Firebase extensions

The official Firebase extensions are developed and tested by Firebase and Firebase Extensions partner services. These extensions are reliable and secure.

Browse official Firebase extensions

Browse official Firebase extensions from the following sources:

View the source code of an extension

To find a link to the source code for one the official Firebase extensions, click Learn more on the extension's card on the Firebase Extensions product page or in the Firebase console.

Contents of an extension's source code

An extension's source directory includes:

  • extension.yaml file — Contains the extension's metadata and defines the resources created, the Google APIs and access roles required for operation, and any user-configured parameters (environment variables) for the extension

  • functions directory — Contains the files for the source code for the extension

  • README file — Lists the extension's metadata (but in more human-readable format) as well as the content from the PREINSTALL file

  • PREINSTALL file — Describes how the extension works, any necessary pre-installation tasks, configuration requirements, and details about the extension

  • POSTINSTALL file — Describes specific usage instructions and any further integration requirements

Resources for an extension

Every Firebase project contains several types of "resources". Project resources can include things like deployed Cloud Functions, database instances, Storage buckets, and Cloud Scheduler jobs.

When you install an extension, Firebase creates new extension-specific resources in your project (specifically, Cloud Functions). These resources are defined in the extension's specification file, extension.yaml (specifically, as the resource type firebaseextensions.v1beta.function), and they are required by the extension to operate.

Note that, if you uninstall an extension, all the resources that Firebase created specifically for that instance of the extension to operate (like a set of functions) are deleted. However, the following are not deleted:

  • Any artifacts created by the extension (like stored images).

  • Any other resources in your project, like a database instance or Storage bucket. Even if the extension interacted with these other resources, they are not extension-specific, so they aren't deleted if the extension is uninstalled.

Using the Firebase console or the Firebase CLI

You can install and manage any of the official Firebase extensions using either the Firebase console or the Firebase CLI.

Action Firebase console Firebase CLI
View detailed information (pre-installation)
View configuration (post-installation)
Edit configuration
Update version

Next Steps