← Flutter Reference

What is a Good Crash-Free Rate?

Quality · Beginner

By Abdelrahman Saed — Senior Mobile Engineer. Last updated: 2026-08-10.

Crash-free rate is the percentage of app sessions that end without a crash. It is the single most important mobile quality metric — it directly measures user experience. A rate of 99.9% means fewer than 1 in 1,000 sessions crash. Industry benchmark: 99.5%+ is acceptable; 99.9%+ is excellent.

How it works

Crash monitoring tools (Sentry, Firebase Crashlytics, Bugsnag) instrument the app to capture unhandled exceptions and native crashes:

Crash-free rate = (total sessions - crash sessions) / total sessions × 100

A "session" starts when the app launches and ends when the user closes it or it crashes. A single user can have many sessions per day.

At iStoria (5M+ users, 350+ releases), we hold 99.9% crash-free across every release. How:

1. Sentry captures every crash in real time — new regressions are triaged within hours, not store reviews. 2. Failures as values — every repository returns Either<Failure, T>, so error paths are explicit forks the UI renders, not unhandled exceptions that crash the app. 3. Feature flags — risky changes ship dark behind a flag. If the crash rate ticks up on a flagged feature, the flag is killed instantly without a hotfix. 4. Release governance — no merge to master without CI gates (static analysis, tests, build success). The branch protection rule rejects even the lead engineer's direct pushes.

When to use it

Every production app should track crash-free rate. There is no "when not to" — it is a baseline quality metric.

Target benchmarks:

  • 99.0%+ — minimum acceptable for any production app.
  • 99.5%+ — good; most apps should aim for this.
  • 99.9%+ — excellent; this is what 5M+ user apps like iStoria hold.
  • 99.95%+ — exceptional; achievable with aggressive monitoring and rapid response.

Strengths

  • Single most actionable quality metric — directly measures user impact
  • Correlates with user retention — crashy apps lose users
  • Real-time monitoring catches regressions before store reviews
  • Benchmarkable across the industry — 99.9%+ is a recognized quality bar

Tradeoffs

  • Only captures crashes, not ANRs or jank — a non-crashing app can still be slow
  • Can mask issues if sessions are short — a crash on launch inflates the rate
  • Platform differences — iOS crash reporting differs from Android (signal handling, tombstones)

Comparisons

Related case studies

FAQ

What is a good crash-free rate?

99.5%+ is good, 99.9%+ is excellent. At iStoria (5M+ users), we hold 99.9% — fewer than 1 in 1,000 sessions crash. Anything below 99% is a red flag that needs immediate attention.

Should I use Sentry or Firebase Crashlytics?

Both are excellent. Sentry has superior Dart stack traces and is better for Flutter. Firebase Crashlytics is better integrated with the Firebase ecosystem. At iStoria, we use Sentry. See our Sentry vs Firebase Crashlytics comparison.


Available for hire. Abdelrahman Saed is a Senior Mobile Engineer (Flutter) — open to full-time, fractional, contract, or advisory work. Hire me →

Book a 20-minute call · Download the CV (PDF) · See how I work