Crash-Free Users Rate Dashboard Setup for Mobile Apps
After release you notice: Crash-Free Rate in Firebase Crashlytics is green at 99.5%. But tickets from Android 11 users pour in every half hour. Standard dashboards show an aggregate percentage, not letting you see which version, device, or region is hit. In one project we found that an overall 99.2% Crash-Free Rate masked a drop to 97.1% on Android 10 due to a bug in a specific app version's WebView. Such anomalies are invisible without drill-down. According to our data, in 30% of projects these discrepancies go unnoticed until users start mass reporting. We solve this: build a dashboard with drill-down across all needed slices: version, platform, OS, device, region. We set it up as a standalone service or extend existing monitoring. Contact us for a custom consultation.
Why Crash-Free Users Rate Matters More Than Sessions Rate
Sessions Rate understates crash impact: if a user has 10 sessions and one crashes, Sessions Rate = 90%, yet the user had a poor experience. Users Rate immediately shows the proportion of affected users. In one project with 50,000 users, Sessions Rate was 98%, but Users Rate was only 85% — a significant difference that cannot be ignored.
How to Choose a Crash Monitoring Tool
Tool choice depends on your stack and needs. Sentry provides a ready-made dashboard in minutes, while the Firebase+BigQuery+Grafana stack takes 5x longer to set up but offers unlimited flexibility. We help select the optimal solution based on budget and data volume.
Dashboard Setup in Popular Systems
Sentry Release Comparison
In Sentry, this is built into Release Health. For a custom dashboard:
# Sentry API — get crash-free rate by releases
import requests
resp = requests.get(
"https://sentry.io/api/0/organizations/YOUR_ORG/sessions/",
headers={"Authorization": "Bearer YOUR_TOKEN"},
params={
"project": "YOUR_PROJECT_ID",
"field": ["crash_free_rate(session)", "sum(session)"],
"groupBy": "release",
"statsPeriod": "14d",
"interval": "1d"
}
)
data = resp.json()
For more details, see the official Sentry API documentation.
Datadog RUM Dashboard
In Datadog, the dashboard is built via RUM Analytics. Query for a widget:
# Crash-Free Users Rate by version
formula: (1 - (count:rum.crash{env:production} / count:rum.session{env:production})) * 100
group_by: @application.version
visualize_as: timeseries
Useful widget — compare current version with previous:
# Version n
count:rum.crash{env:production,application.version:2.3.1} / count:rum.session{env:production,application.version:2.3.1}
# Version n-1
count:rum.crash{env:production,application.version:2.3.0} / count:rum.session{env:production,application.version:2.3.0}
Firebase + BigQuery + Grafana
Firebase Crashlytics lacks a real-time export API, but BigQuery Export can stream data:
-- BigQuery: Crash-Free Users Rate by version over last 30 days
SELECT
app_info.version AS app_version,
platform,
ROUND(
100 * (1 - COUNTIF(is_fatal) / COUNT(DISTINCT user.id)),
2
) AS crash_free_users_rate,
COUNT(DISTINCT user.id) AS total_users
FROM `project.firebase_crashlytics.table_YYYYMMDD`
WHERE DATE(_PARTITIONTIME) >= DATE_SUB(CURRENT_DATE(), INTERVAL 30 DAY)
GROUP BY app_version, platform
ORDER BY app_version DESC
Data from BigQuery is pulled into Grafana via the BigQuery Data Source plugin.
Tool and Metric Comparison
| Tool | Data Source | Drill-down | Setup Complexity | Price |
|---|---|---|---|---|
| Sentry | Built-in analytics | Version, device, OS | Low | Free up to 10k events |
| Datadog RUM | RUM events | Version, device, OS, region | Medium | $0.10 per session |
| Firebase + BigQuery + Grafana | BigQuery | Any (SQL) | High | BigQuery – $5/TB, Grafana – free |
| Metric | Formula | Crash Sensitivity | Example: 1 user with 10 sessions (1 crash) |
|---|---|---|---|
| Crash-Free Sessions Rate | (sessions without crash / all sessions) * 100 | Medium | 90% |
| Crash-Free Users Rate | (users without crash / all users) * 100 | High | 0% |
Users Rate is more important: Firebase counts Sessions Rate by default, Sentry counts Users Rate. We configure the dashboard to show both metrics.
How to Set Alerts on Crash-Free Rate
Alerts are configured in each tool: in Sentry via Alert Rules, in Datadog via Monitors, for Firebase via Cloud Monitoring + Pub/Sub. Typical threshold: Crash-Free Users Rate drops below 99% for 15 minutes. Notifications go to Slack, Telegram, or email. We set up daily or weekly digest reports.
Common mistakes when setting up the dashboard
- Using only Sessions Rate while ignoring Users Rate — leads to a false sense of stability.
- Not filtering by environment (production vs dev) — development crashes skew statistics.
- Grouping only by version without considering platform and OS — loses context for anomalies.
- Forgetting about sampling — in Datadog RUM, high traffic data is sampled, affecting accuracy.
- Not configuring alerts — a dashboard without notifications is useless for rapid response.
Dashboard Layout
┌─────────────────────────────────────────────────────────────────┐
│ Crash-Free Users Rate [last 7d] [last 30d] [custom] │
├──────────────────────────┬──────────────────────────────────────┤
│ Timeseries: │ By Version: │
│ v2.3.1 vs v2.3.0 │ v2.3.1: 99.4% (12,340 users) │
│ [graph] │ v2.3.0: 98.9% (45,120 users) │
│ │ v2.2.8: 99.1% (8,230 users) │
├──────────────────────────┼──────────────────────────────────────┤
│ By Platform: │ By OS Version: │
│ iOS: 99.5% │ Android 13: 99.6% │
│ Android: 98.9% │ Android 11: 98.4% ← anomaly │
│ │ iOS 17: 99.7% │
│ │ iOS 15: 99.2% │
├──────────────────────────┴──────────────────────────────────────┤
│ Top Crash Issues (last 24h): │
│ 1. NullPointerException in CartViewModel [+340% vs yesterday] │
│ 2. OutOfMemoryError in ImageLoader │
└─────────────────────────────────────────────────────────────────┘
Red anomaly on Android 11 is a real pattern: often tied to a system library bug that triggers the app.
What’s Included in the Work
- Analysis of current data sources (Firebase Crashlytics, Sentry, Datadog)
- Dashboard schema design: metric selection, slices, thresholds
- Implementation via API or SQL queries
- Alert configuration for Crash-Free Rate drops below 99%
- Integration with Slack / Telegram for daily digest reports
- Documentation and team training on dashboard usage
We guarantee 5+ years of experience with Crashlytics, Sentry, and BigQuery. We have configured dashboards for 50+ mobile projects. Use our dashboard setup service and get a complete picture of your app's stability. Contact us for a consultation.
Timeline
- Dashboard in Sentry or Datadog: 4–8 hours
- Firebase + BigQuery + Grafana: 1–2 days
- Pricing is calculated individually.
Get in touch, we will assess your project end-to-end. We will set up the dashboard so you always see the real picture of your app’s stability.







