Runway Documentation
  • About Runway
  • 🚀Getting started
    • Adding apps
    • Setting up your integrations
      • Branching strategies
      • Builds and branches
      • Pattern strings / tokens
    • Preparing your first release
    • Setting up your team
  • 🎛️Using Runway
    • Navigating Runway
    • Build Distro
      • Quickstart
      • Uploading builds for distribution
      • Build Distro buckets
      • Sharing builds
      • Installing builds
      • Signing and provisioning cheat sheet
    • App overview
    • Releases
      • Release overview
      • Feature flags
      • Kickoff
      • Feature readiness
      • Translations
      • Release candidate
      • Regression testing
      • Beta testing
      • Screenshots
      • Metadata
      • Approvals
      • App submission
      • App store review
      • Release
    • Release schedule
    • Rollout
    • Hotfixes
    • Rollbacks
    • Checklists
    • Build matching
    • App settings
      • General settings
      • Team settings
      • Release pilot rotation
      • Integrations settings
      • Profiles and devices
      • Signing keys
      • Health metrics settings
      • Automations settings
      • Notifications settings
      • Schedule settings
      • Beta testing settings
      • Metadata settings
      • Release defaults
      • Checklists settings
      • Custom strings settings
    • Organization overview
    • Organization settings
      • Team
      • SSO/SAML
    • User settings
    • Over-the-air (OTA) releases
  • ⚙️Integrations
    • Integrations overview
    • Version control
      • Azure Repos
      • Bitbucket
      • GitHub
      • GitLab
    • Project management
      • Asana
      • Azure Boards
      • GitHub Issues
      • Jira
      • Linear
      • Pivotal Tracker
      • Monday.com
      • Shortcut
    • CI/CD
      • App Center Build
      • Azure Pipelines
      • Bitbucket Pipelines
      • Bitrise
      • Buildkite
      • CircleCI
      • Codemagic
      • GitHub Actions
      • GitLab CI
      • Jenkins
      • TravisCI
      • Xcode Cloud
    • Regression testing
      • TestRail
      • Xray
    • Beta testing
      • Google Play testing tracks
      • TestFlight
      • App Center
      • Firebase App Distribution
    • App stores
      • App Store Connect
      • Google Play Console
      • Amazon Appstore
      • Huawei AppGallery
      • Samsung Galaxy Store
    • Notifications
      • Microsoft Teams
      • Slack
    • Stability monitoring
      • BugSnag
      • Datadog
      • Embrace
      • Firebase Crashlytics
      • New Relic
      • Sentry
      • Dynatrace
    • Observability & analytics
      • Amplitude
      • Datadog
      • Google Analytics
      • Mixpanel
      • New Relic
      • Custom observability & analytics
    • Feature flagging
      • Optimizely
      • LaunchDarkly
    • Scheduling
      • Opsgenie
      • PagerDuty
    • Translations
      • Crowdin
      • Lokalise
    • Calendar
      • Google Calendar
  • ⚡Automations
    • Automations overview
    • Types of automations
  • 🔔Notifications
    • Notifications overview
    • Types of notifications
  • 🪝Webhooks
    • Outgoing webhooks
  • 📡REST API
    • Overview
    • Reference Docs
    • Markdown Badge API
    • App configuration files
  • 🛠️Quickstart CI/CD
    • Quickstart CI/CD overview
    • Getting started
  • Support
    • Contact us
Powered by GitBook
On this page
  • Set up in Firebase
  • Find your Firebase Project ID
  • Find your Google Analytics Property ID
  • BigQuery + GA settings
  • Service account / API key setup
  • Set up in Runway
  • Navigate to the Integration settings view
  • Connect Firebase

Was this helpful?

  1. Integrations
  2. Stability monitoring

Firebase Crashlytics

PreviousEmbraceNextNew Relic

Last updated 1 day ago

Was this helpful?

Firebase Crashlytics data available via Google APIs cannot be used for calculating aggregate stats like crash-free rate or adoption rate, because it only contains info on unhealthy sessions: without info on healthy session stats, there is no denominator for crash-free rates or adoption.

As a result, Runway's stability monitoring integration for Firebase relies on Google Analytics data, and that data must be exported from Firebase to BigQuery since Firebase doesn't expose a direct API for this data.

Set up in Firebase

Find your Firebase Project ID

  1. Navigate to your Firebase console ( ), and select the Firebase project for your app(s)

  2. Click on the gear icon top left, choose “Project settings”

  3. On the “General” tab, make note of the Project ID. You’ll need to enter this value in Runway shortly

Find your Google Analytics Property ID

  1. Click on the Integrations tab

  2. Next, ensure that the Google Analytics tile in your Firebase console is showing the status "Enabled". If it’s not, you'll need to in your project

  3. Click into the Google Analytics tile. It should show your app(s) in the bottom section, and at the top there should be a Property ID. Grab that value; you’ll need to enter it shortly in Runway

  4. Click the link under "Linked Google Analytics account"

  5. Under "Product links", click "BigQuery links"

  6. Click on the row for your Firebase project

  7. On the sheet that opens, under 'Event data', ensure that at least one 'Export type' is selected

BigQuery + GA settings

Setting up BigQuery is required because Google doesn't expose user- and session-level stability data directly via Firebase APIs.

If your team doesn't otherwise use Google Analytics, one way to limit data volume is to filter the events it sends/ingests. The only events Runway needs for this integration to work are session_start and app_exception.

  1. Click back up to Integrations

  2. Click into the BigQuery tile. If you haven’t yet linked BigQuery to Firebase, you’ll be prompted to do so. Once you’re linked, you’ll see a list of integrations to configure. Or, if you were already linked, you’ll also see that list of integrations

  3. Find the Google Analytics integration, and flip that switch ON

  4. In Apps exporting, make sure the app(s) in question are selected

  5. In Export settings, make sure at least the “Daily” option is selected

Note that you must be on a Firebase paid plan to select “Streaming” exports in Export settings, and without “Streaming” enabled, data flowing into Runway won’t be real-time.

For BigQuery exports that have been turned on for the first time, it may take a day before the data starts populating in BigQuery.

Save your settings.

Service account / API key setup

  1. Make sure you’re logged in with an appropriate Google account, and that the project that contains the BigQuery instance you linked with Firebase is selected in the project selector (top left)

  2. In the left hand menu, select IAM & Admin and then Service Accounts

  3. Click + Create Service Account

  4. Fill out the form then click Create and Continue

  5. In step 2, select roles. You’ll need to select the BigQuery Job User and BigQuery Data Viewer roles at minimum. If you want to share a service account between Runway’s stability monitoring integration and your Google Play and/or Play Beta integrations, add additional roles as needed (Play Console and BigQuery will need to live under the same project for this to work)

  6. On the service account you just created, click the three dots on the right hand side, and select Manage keys

  7. Click Add Key, then Create new key

  8. Select the JSON option and click Create

  9. Your Google API key file should start downloading

Set up in Runway

Navigate to the Integration settings view

  1. Select an app in the top left corner from the Switcher

  2. Navigate to App Settings by clicking the gear icon (⚙️) at the top of the Timeline sidebar

  3. Click on Integrations in the sidebar

Connect Firebase

  • Find the Firebase integration module under the Stability monitoring section

  • Click the Connect button

  • Add your Google API key file, Project ID and GA Property ID from the previous steps to complete your integration setup.

Data processed, and therefore costs, can be variable depending on each team's data volume and other factors. We recommend adding user- and/or project-level quotas to cap query data processed per day. More information is available here:

Head to the console

⚙️
🔗
Controlling your BigQuery costs - Google Cloud
🔗
Google Cloud Platform
🔗
🔗
https://console.firebase.google.com
set up and enable Google Analytics