Firebase ist eine Plattform, und Analytics ist ein Teil davon. Die meisten Beiträge über das „Ersetzen von Firebase" meinen stillschweigend das Ersetzen des Ganzen, was eine andere und viel größere Entscheidung ist. Hier geht es nur um den Analytics-Teil: was sich ändert, wenn Sie Google Analytics for Firebase aus einer App nehmen, was Sie behalten sollten, und was wirklich keinen Ersatz hat.

Warum überhaupt jemand hinsieht

Eine App zu messen sollte nicht verlangen, einer Werbeplattform zuzustimmen. Firebase Analytics hält eine Kennung der App-Installation auf dem Gerät und ist darauf gebaut, mit den Werbe-IDs der Plattformen zu arbeiten (Androids Werbe-ID, Apples IDFA), weil die Zuordnung zu Werbekampagnen ein großer Teil seines Zwecks ist. Wenn Sie nicht werben, tragen Sie die Maschinerie trotzdem mit.

Einwilligung. Eine Kennung auf dem Gerät bringt im EWR und im Vereinigten Königreich eine Einwilligungspflicht mit sich, und eine App, die beim ersten Start fragt, verliert einen Teil ihrer eigenen Nutzer aus ihren eigenen Zahlen. Dasselbe Argument wie bei einem Cookie-Banner auf einer Website, mit einem schlechteren ersten Eindruck.

Das Ereignismodell. Firebase Analytics ist ein System aus Ereignissen und Parametern. Es belohnt ein Team, das seine Ereignisse sorgfältig modelliert, und gibt einem, das das nicht tut, sehr wenig, was die meisten Teams für den größten Teil eines Produktlebens sind.

Ein Anbieter, eine Beziehung. Manche Organisationen können App-Nutzung schlicht nicht an Google senden. Das ist eine Beschaffungstatsache und kein Argument, und es ist der Grund, warum ein großer Teil derer, die das hier lesen, es liest.

Was ein datenschutzbewusstes App-SDK stattdessen sendet

Die nützliche Frage ist nicht „ist es privat", sondern „was steht in der Nutzlast". Skomis App-SDKs senden:

  • den Bildschirmnamen, den Sie ihm gegeben haben, Ihre Eigenschaften, und ob er die Sitzung eröffnet hat
  • die Plattform, die Betriebssystemversion, das Gerätemodell, sofern verfügbar, und ob das Gerät ein Smartphone, ein Tablet oder ein Desktop-Rechner ist
  • die App-Version, die Sie übergeben haben, und welcher Build des SDK sie gesendet hat
  • wann es auf der Uhr des Geräts geschah und wann der Stapel gesendet wurde
  • eine Identität: eine zufällige UUID, die die Installation für sich selbst erzeugt

Sonst nichts. Keine Werbe-ID, keine Geräte-ID, kein Standort, kein Konto, keine Kontakte, und deshalb auf keiner Plattform eine Laufzeitberechtigung über den Internetzugang hinaus, denn nach nichts, was eine bräuchte, wird gefragt.

Der Tausch in einem Satz: Sie können App-Nutzung nicht mehr mit einer Werbekampagne verbinden, und zum Zählen brauchen Sie keine Berechtigungsabfrage mehr.

Behalten Sie Ihren Absturzmelder

Das ist der Teil, den Menschen falsch machen, und die Dokumentation von Skomis eigenem SDK sagt es deutlich, statt es Sie herausfinden zu lassen.

Ein App-Analytics-SDK kann die Fehler melden, die Ihr Code ihm übergibt, und die, die das Framework auslöst. Es kann keinen nativen Absturz melden (einen Segfault im C++ eines Plugins, ein Abschießen wegen Speichermangels, eine NSException aus einem Plattformkanal), weil der Prozess, der die Meldung machen würde, bereits fort ist.

Crashlytics, Sentry oder die Meldung des Stores bleiben also. Was Sie von der Analytics-Seite bekommen, ist eine absturzfreie Rate neben Ihren Release-Zahlen, die eine andere Frage beantwortet: nicht „was ist kaputtgegangen", sondern „ist dieser Build schlechter als der letzte". Wissenswert: Diese Rate fällt eher zu pessimistisch aus, denn eine Sitzung, die vor ihrem ersten Bildschirm abstürzte, zählt als abgestürzt und nicht als Sitzung, und das ist die sichere Richtung für einen Fehler.

Es gibt außerdem kein Hochladen von Mapping-Dateien; ein Stack aus einem minifizierten Release-Build kommt also so an, wie er geworfen wurde. Noch ein Grund, warum der Absturzmelder bleibt.

Was keinen Ersatz hat

Der Ehrlichkeit halber zum Rest der Plattform, denn „Firebase-Alternative" steht oft für weit mehr als Analytics:

  • Remote Config, A/B-Tests, Cloud Messaging, Authentication, Firestore: nichts davon ist Analytics, und nichts davon wird von einem Analytics-Werkzeug ersetzt.
  • Zielgruppen und Anzeigenzuordnung. In Firebase eine Zielgruppe zu bauen und sie in Google Ads zu nutzen ist die Verzahnung, für die es Firebase Analytics gibt. Nehmen Sie die Werbe-ID heraus, und das geht bauartbedingt mit ihr.
  • Roher Ereignisexport. Firebase kann jedes Ereignis nach BigQuery streamen. Skomis App-API antwortet mit Aggregaten (Zusammenfassungen, Zeitreihen, Aufschlüsselungen) und nicht mit einer Tabelle von Ereignissen zum Selbstmodellieren.

Wenn eines dieser drei für Sie tragend ist, ist das kein Tausch, den Sie machen wollen.

Was Sie bekommen, was Firebase Ihnen nicht gibt

  • Dieselben Berichte für Ihre Website und Ihre App, in einem Konto. Ein Release und eine Marketingkampagne in derselben Woche lesen Sie in einer einzigen Oberfläche statt in zwei Produkten und mit einer Vermutung. Siehe ein Ort für App- und Website-Analytics.
  • Eine Offline-Warteschlange, die nicht doppelt zählt. Jeder Bildschirm trägt eine einmal vergebene Kennung, ein nach vierzehn Tagen ohne Netz wiederholter Stapel wird also erkannt statt noch einmal gezählt.
  • Ein Einwilligungsschalter, der es ernst meint. Enabled = false zeichnet nichts auf und sendet nichts, das SDK kann also ab dem Start da sein und erst beginnen, wenn jemand zustimmt.

Die ehrliche Zusammenfassung

Wenn Sie Firebase für Authentifizierung, Messaging und eine Datenbank nutzen, ersetzt das eine Komponente davon, und Sie behalten den Rest, Crashlytics eingeschlossen.

Wenn Sie Firebase nur in eine App gesetzt haben, um herauszufinden, wie viele Menschen sie geöffnet haben und welche Bildschirme sie erreichten, tragen Sie eine Werbeplattform mit, um eine Frage zu beantworten, die keine braucht, und sie zu entfernen ist eine kleine Änderung mit einer unverhältnismäßigen Wirkung darauf, was Sie offenlegen müssen.

Das Installieren kostet einen Aufruf: Flutter, .NET MAUI, oder eines der acht SDKs.

Was ankommt, sobald es meldet, steht auf der App-Analytics-Seite: Bildschirme, Sitzungen, Versionen und die absturzfreie Rate. Das übrige Feld, einschließlich der Produkte, die uns beim Preis schlagen, ist auf Firebase-Alternativen dargelegt.