Firebase provides tools in the Firebase console to explore and analyze your project's historical data. These tools can help you answer many questions about how your apps are being used. Sometimes, though, you also want to set up your own queries to answer your own questions.
You can do this by exporting your project data from Firebase into BigQuery. With BigQuery, you can analyze your data with BigQuery SQL or export the data to use with your own tools.
You can configure Firebase to export data to BigQuery from the following Firebase products:
- Analytics
- Cloud Messaging
- Crashlytics
- Performance Monitoring
- A/B Testing
- Remote Config personalization
Required permissions and suggested roles
To view or manage settings for data export to BigQuery, you must have the required level of access.
If you don't have the necessary Firebase access, you can ask a Firebase project Owner to assign you the applicable role via the Firebase console IAM settings. If you have questions about accessing your Firebase project, including finding or assigning an Owner, review the Permissions and access to Firebase projects FAQs.
The following table applies to the top-level linking of a Firebase project to BigQuery.
Action in Firebase console | Required IAM permission | IAM role(s) that include required permissions by default | Additional required roles |
---|---|---|---|
Link a Firebase project and BigQuery | firebase.links.create |
none | |
Unlink a Firebase project and BigQuery | firebase.links.delete |
none | |
View the existing links for BigQuery | firebase.links.list |
|
none |
The following table applies specifically to the export of Google Analytics data to BigQuery.
Action in Firebase console | Required IAM permission | IAM role(s) that include required permissions by default | Additional required roles |
---|---|---|---|
Enable export of Google Analytics data to BigQuery | firebase.links.update
AND serviceusage.services.enable
|
|
|
Enable export for specific Firebase apps | firebase.links.update |
|
|
Disable export for specific Firebase apps | firebase.links.update |
|
The following table applies to any of the Firebase products for which you can export data to BigQuery, for example, Crashlytics or Performance Monitoring.
Action in Firebase console | Required IAM permission | IAM role(s) that include required permissions by default | Additional required roles |
---|---|---|---|
Enable export of a product's data to BigQuery | firebase.links.update
|
none | |
Enable export for specific Firebase apps | firebase.links.update |
none | |
Disable export for specific Firebase apps | firebase.links.update |
none |
Enable export to BigQuery
In the Firebase console, go to the Integrations page.
In the BigQuery card, click Link.
Follow the on-screen instructions to enable export to BigQuery.
Here's what happens when you enable export to BigQuery:
You select the dataset location. After the dataset is created, the location can't be changed, but you can copy the dataset to a different location or manually move (recreate) the dataset in a different location. To learn more, see Change dataset location.
By default, all apps in your project are linked to BigQuery and any apps that you later add to the project are automatically linked to BigQuery. You can manage which apps send data.
Firebase exports a copy of your existing data to BigQuery.
Firebase sets up daily syncs of your data from your Firebase project to BigQuery.
To deactivate exports to BigQuery, unlink your project in the Firebase console.
Change dataset location
After you enable a product for BigQuery export and create a dataset, you can't change the location of that dataset. However, you can copy your existing dataset to a new dataset that has a different location. To learn about BigQuery dataset locations, see Dataset locations.
Select the product for which you want to change the location of your dataset.
Pricing and the BigQuery sandbox
If your Firebase project is on the no-cost Spark plan, you can link Crashlytics, Cloud Messaging, Google Analytics, and Performance Monitoring to the BigQuery sandbox, which provides no-cost access to BigQuery. Refer to Using the BigQuery sandbox for information on the BigQuery sandbox's capabilities.
If your Firebase project is on a paid plan, you can link A/B Testing, Crashlytics, Cloud Messaging, Google Analytics, and Performance Monitoring to BigQuery. Your use of BigQuery is subject to normal BigQuery pricing, which includes limited no-cost use.