Firebase Crashlytics vs Sentry Vergleich

Googles kostenloses, leichtgewichtiges SDK zur Absturzerkennung

VS
Sentry

Fehlerüberwachung + Performance + Session-Replay auf einer Plattform, self-hostbar

12 Min. LesezeitServices

Schnelles Fazit

Klare Regel: Wenn du nur die Frage beantworten willst, "wann ist die App abgestürzt", und dein Budget null ist, dann Crashlytics — die Einrichtung dauert Minuten, es besteht kein Rechnungsrisiko. Willst du Fehler, Performance und Session-Replay in einem einzigen Panel, oder musst du die Daten aus Datenschutzgründen (DSGVO) in deiner eigenen Infrastruktur behalten, rechtfertigt Sentrys Umfang diese Kosten. Viele Teams nutzen beide gleichzeitig; entscheidest du dich für diesen Weg, miss in deinem eigenen Build, wie sich die doppelte SDK-Integration auf App-Größe und Startzeit auswirkt.

Firebase CrashlyticsSentry
Vollständiges Fazit lesen

Punktevergleich

Diagramm wird geladen...

Detaillierte Bewertung

Detaillierte Bewertung: Firebase Crashlytics und Sentry — Bewertungen pro Kategorie auf einer Skala von 1 bis 10
KategorieFirebase CrashlyticsSentry
Performance
7/10
9/10
Erlernbarkeit
9/10
6/10
Ökosystem
6/10
9/10
Community
8/10
8/10
Arbeitsmarkt
6/10
7/10
Zukunftssicherheit
7/10
8/10

Vor- und Nachteile

Firebase Crashlytics

Vorteile

  • Komplett kostenlos — keine nutzungs- oder ereignisbasierte Gebühr
  • In der Firebase-Konsole in einem Panel mit anderen Produkten integriert (Analytics, Performance, Remote Config)
  • Einrichtung dauert Minuten, minimale Konfiguration
  • Offizielle SDK-Unterstützung für Android/iOS/Flutter/Unity/NDK
  • Crash-free-Nutzeranteil und versionsbasierte Velocity-Alerts integriert
  • Zugriff auf Rohdaten per BigQuery-Export möglich
  • Native Integration mit der Google Play Console auf Android

Nachteile

  • Kein eigenes Performance-/Tracing-Modul — ausschließlich auf Abstürze fokussiert
  • Kein Session-Replay oder Aufzeichnung des Nutzer-Flows
  • Keine Self-Hosting-Option — Daten liegen immer in Googles Infrastruktur
  • Alarmregeln sind auf fünf feste Ereignistypen beschränkt (neuer fataler/nicht-fataler Fehler, regressiert, trendend, steigende Velocity) — anders als bei Sentry lassen sich keine eigenen Schwellenwerte/Bedingungen definieren

Am besten geeignet für

Teams mit Nullbudget, denen reine Absturzverfolgung genügtProjekte, die bereits Firebase (Auth, Firestore, Remote Config) nutzenMVPs und mobile Apps in einer frühen PhaseTeams, die die Crash-free-Metriken von Google Play/App Store verfolgen möchten

Sentry

Vorteile

  • Tracing, Profiling, Session-Replay, Logs und Feature Flags in einem Panel
  • Mit der Self-Hosted-Option können die Daten vollständig in der eigenen Infrastruktur bleiben
  • Große Open-Source-Community mit über 44.000 GitHub-Stars (September 2026)
  • sentry-cocoa/sentry-react-native/sentry-dart mit aktivem wöchentlichem Release-Rhythmus
  • dSYM-/Symbol-Upload lässt sich mit sentry-cli + Xcode Build Phase automatisieren
  • Datenregion USA oder EU (Frankfurt) wählbar
  • Slack-Integration (`/sentry link`, Alert-Action, Test-Benachrichtigung) integriert
  • ProGuard/R8-Mapping-Automatisierung offiziell dokumentiert

Nachteile

  • Gebühr pro Fehler oberhalb des Kontingents — ein plötzlicher Fehleranstieg kann die Rechnung schnell in die Höhe treiben
  • Die Einrichtung erfordert im Vergleich zu Crashlytics mehr Konfiguration (Mapping-/dSYM-Schritte)
  • In der Self-Hosted-Version fehlen manche SaaS-Funktionen wie Spike Protection und Seer AI/ML
  • Die Datenregion (USA/EU) lässt sich nach Anlegen der Organisation nicht mehr ändern
  • Der kostenlose Developer-Plan ist auf nur 1 Nutzer beschränkt

Am besten geeignet für

Teams, die Fehler, Performance und Session-Replay in einem einzigen Panel wollenUnternehmen, die aus Datenschutzgründen (DSGVO) Daten in eigener Infrastruktur halten müssen (Self-Hosting)Teams, die Backend, Mobile und Web auf derselben Observability-Plattform vereinen möchtenTeams, denen aktive SDK-Updates und ein schneller Bugfix-Rhythmus wichtig sind

Code-Vergleich

Firebase Crashlytics
// Firebase Crashlytics - Android (Kotlin) Einrichtung und Non-Fatal-Logging
// build.gradle.kts (app)
// plugins { id("com.google.gms.google-services"); id("com.google.firebase.crashlytics") }
// dependencies { implementation(platform("com.google.firebase:firebase-bom:34.19.0"))
//                implementation("com.google.firebase:firebase-crashlytics") }

import com.google.firebase.Firebase
import com.google.firebase.crashlytics.crashlytics
import com.google.firebase.crashlytics.setCustomKeys

class CheckoutViewModel {

    private val crashlytics = Firebase.crashlytics

    fun onPaymentStarted(orderId: String, amount: Double) {
        // Breadcrumb: um bei einem Absturz zu sehen, in welchem Schritt es passiert ist
        crashlytics.log("payment_started order=$orderId amount=$amount")
        crashlytics.setCustomKeys {
            key("order_id", orderId)
            key("payment_amount", amount)
            key("user_tier", "premium")
        }
    }

    fun onPaymentFailed(error: Throwable, orderId: String) {
        // Fehlerprotokoll, ohne die App abstürzen zu lassen (non-fatal)
        crashlytics.setCustomKey("order_id", orderId)
        crashlytics.recordException(error)
    }

    fun identifyUser(userId: String) {
        crashlytics.setUserId(userId)
    }
}

// AndroidManifest.xml: firebase_crashlytics_collection_enabled=false (nach DSGVO-Einwilligung aktivieren)
// Runtime: Firebase.crashlytics.setCrashlyticsCollectionEnabled(true)
Sentry
// Sentry - iOS (Swift): Fehler + Performance + Session-Replay in einem SDK
// Package.swift / SPM: https://github.com/getsentry/sentry-cocoa

import Sentry

func configureSentry() {
    SentrySDK.start { options in
        options.dsn = "https://<public-key>@o<org-id>.ingest.sentry.io/<project-id>"
        options.debug = false

        // Performance-Tracing
        options.tracesSampleRate = 0.2

        // UI Profiling (sentry-cocoa 9.x): an den Trace-Lebenszyklus gebunden
        options.configureProfiling = {
            $0.lifecycle = .trace
            $0.sessionSampleRate = 1.0
        }

        // Session Replay: zeichnet den Bildschirmablauf vor dem Absturz auf
        options.sessionReplay.onErrorSampleRate = 1.0
        options.sessionReplay.sessionSampleRate = 0.1

        // Screenshot + View-Hierarchie im Fehlerfall
        options.attachScreenshot = true
        options.attachViewHierarchy = true
    }
}

// Breadcrumb + benutzerdefinierter Kontext + Non-Fatal-Erfassung
func onPaymentFailed(_ error: Error, orderId: String) {
    let crumb = Breadcrumb(level: .error, category: "payment")
    crumb.message = "payment_failed order=\(orderId)"
    SentrySDK.addBreadcrumb(crumb)

    SentrySDK.configureScope { scope in
        scope.setTag(value: orderId, key: "order_id")
        scope.setUser(User(userId: "u_123"))
    }
    SentrySDK.capture(error: error)
}

// Automatischer dSYM-Upload (Xcode Run Script Build Phase):
// sentry-cli debug-files upload --include-sources "$DWARF_DSYM_FOLDER_PATH"

Fazit

Klare Regel: Wenn du nur die Frage beantworten willst, "wann ist die App abgestürzt", und dein Budget null ist, dann Crashlytics — die Einrichtung dauert Minuten, es besteht kein Rechnungsrisiko. Willst du Fehler, Performance und Session-Replay in einem einzigen Panel, oder musst du die Daten aus Datenschutzgründen (DSGVO) in deiner eigenen Infrastruktur behalten, rechtfertigt Sentrys Umfang diese Kosten. Viele Teams nutzen beide gleichzeitig; entscheidest du dich für diesen Weg, miss in deinem eigenen Build, wie sich die doppelte SDK-Integration auf App-Größe und Startzeit auswirkt.

Kostenlose Beratung erhalten
FAQ

Häufig gestellte Fragen

Reicht dir eine reine Absturzverfolgung und muss das Budget null sein, ist Crashlytics die richtige Wahl; willst du neben Fehlererkennung auch Performance-Tracing, Session-Replay und bei Bedarf Self-Hosting, ist Sentry die passende Lösung. Beide bieten SDKs mit einfacher Einrichtung — die Entscheidung läuft letztlich auf Umfang und Budget hinaus.

Verwandte Blogartikel

Alle Artikel ansehen

Verwandte Projekte

Alle Projekte ansehen
Alle Vergleiche