X3 App-Tracking
Jede App-Installation. Mit Herkunft.
Woher Deine Nutzer kommen, wer sich anmeldet und was sie kaufen. In einem Profil mit Deiner Website.
- iOS · Android · React Native · Flutter
- Ohne Fingerprinting
- Einwilligung nach Deiner Wahl
01Das Problem
- 01
Der Store schluckt den Klick.
Zwischen Anzeige und erstem Öffnen liegt der Store. Die Kampagne kommt dort nicht durch.
- 02
Logins ohne Herkunft.
Wer sich in der App anmeldet, ist ein Fremder. Auch wenn er gestern Lead auf Deiner Website war.
- 03
Käufe ohne Person.
Abos laufen über App Store und Google Play. Deine Kampagnen erfahren nie, wer kauft.
Was der App Store verschluckt.
Deine Anzeige wirkt. Aber im Store reißt die Spur ab.
02So funktioniert es
- AnzeigeanLandingpageKlick mit utm_* und fbclid
- LandingpageanX3Seitenaufruf: Sitzung und Journey
- LandingpageanX3Tap „App laden“: X3-Link vergibt ein Klick-Token
- X3anStoreWeiterleitung: Android mit Referrer, iOS in den App Store
- StoreanNordlicht-AppInstallationund erstes Öffnen
- Nordlicht-AppanX3Erstes Öffnen meldet die QuellePlay-Referrer · Apple-Ads-TokenAndroid: Klick-Token findet die Web-SitzungiOS: Apple Ads exakt, sonst zunächst offenkein IP-Abgleich, kein Fingerprinting
- Nordlicht-AppanX3Signup: identify()User-ID-Hash · E-Mail-HashGleicher E-Mail-Hash wie in der Web-JourneyDie iOS-Installation wird nachträglich „Über Login“
- StoreanX3Apple-Postback-Kopie, aggregiert, nach 24 bis 48 h
- X3anAnzeigeConversion „Abo“ an Meta, mit fbclid aus dem Web
Vom Klick bis zum Konto.
Android ist exakt, über den Play-Referrer. iOS über Apple Ads oder spätestens beim Login.
03Genauigkeit
Jede Zahl trägt ihre Genauigkeit.
Android liefert die Kampagne über den Play-Referrer. iOS zeigt Apple Ads exakt, den Rest pro Kampagne. Beim Login siehst Du die Journey, wenn die Person bekannt ist.
| Situation | iOS | Android |
|---|---|---|
| X3-Link auf Deiner Website, dann Store | Über Loginwenn die Web-Journey eine Identität trägt, sonst aggregiert | Exakt (Play-Referrer)Referrer trägt UTM und Klick-Token |
| Apple-Ads-Kampagne | Exakt (Apple Ads)Kampagne bis zum Keyword, ohne ATT | gibt es auf Android nicht |
| Meta-App-Kampagne | AggregiertApple-Postbacks pro Kampagne, pro Person über Login | Exakt (Play-Referrer)Meta Install Referrer im Play-Referrer |
| Google-App-Kampagne | AggregiertApple-Postbacks pro Kampagne, pro Person über Login | Exakt (Play-Referrer)gclid im Play-Referrer |
| Store-Suche, Empfehlung | Unbekanntohne Quelle, bis ein Login sie verbindet | OrganischPlay meldet die Installation als organisch |
| Login einem bestehenden Lead zuordnen | Über Loginüber E-Mail-Hash oder User-ID-Hash | Über Loginüber E-Mail-Hash oder User-ID-Hash |
| Kauf mit Nutzerdaten an Werbeplattformen | nur mit ATT-Freigabe, sonst ohne Nutzerdaten | mit der Einwilligung „Werbung messen“ |
04Ein Profil
- Meta Instant Form3.10.Lead · E-Mail-Hash
- E-Mail-HashWeb-Sitzung5.10.fbclid · Kampagne herbstPlan per E-Mail: E-Mail-Hash
- E-Mail-HashiPhone-App5.10.Installation · SignupUser-ID-Hash · E-Mail-Hash
- Account-TokenApp-Store-Kauf7.10.Abo · Account-Token
- User-ID-HashiPad-App20.10.Login · User-ID-Hash
- 3.10.Instant Form, Herkunft Meta
- 5.10.Website, Kampagne herbst
- 5.10.App installiert (iOS)
- 5.10.Konto erstellt
- 7.10.Abo gekauft, 59,99 €
- bis 26.10.12 Logins, 2 Geräte
Ein Mensch. Ein Profil.
Login verbindet alles, ohne Fingerprinting. App-Nutzung landet beim Lead, den Du schon kennst.
- Nur Hashes. Beim Login verlassen E-Mail und User-ID das Gerät nur als SHA-256.
- Kein Lead durch Login. Ein Lead entsteht nur, wenn Du es willst.
- Alle Geräte. iPhone, iPad und Browser landen in einer Journey.
05Käufe und Conversions
- Nordlicht-App
X3.purchase(…)Hinweis mit Bestellnummer - X3 hält den Kauf zurückbis die Bestellnummer bestätigt istWartet
- Bestätigung
- App Store Server Notifications
- Google Play RTDN
- RevenueCat
- Dein Server
- Kauf zähltZiel, Umsatz, Lead-Profil
- Werbeplattformennur mit „Werbung messen“
Meta
Google Ads
TikTok
LinkedIniOS ohne ATT-Freigabe: Meta und TikTok ohne Nutzerdaten, Google Ads und LinkedIn entfallen.
Nur Käufe, die wirklich passiert sind.
Die App meldet den Kauf, der Store bestätigt ihn. Erst dann zählt er und geht an Deine Werbekonten.
- Direkt vom Store. Store-Benachrichtigungen kommen zu X3 und werden kryptografisch geprüft.
- Kauf und Person. Das Account-Token verbindet beides: appAccountToken bei Apple, obfuscatedAccountId bei Google.
- Leads aus der App. X3.lead() schickt eine Anfrage wie ein Formular auf Deiner Website.
06Aufnahmen
- Bildschirm lesenUIKit, SwiftUI, Compose, React Native
- MaskierenEingaben nie, Texte und Bilder maskiert
- Wireframe-Diffplus Taps, Wut-Taps und tote Taps
- Pufferngzip, höchstens 8 MB, optional nur WLAN
- Hochladenüber Deine Domain, nur mit Einwilligung
- PII-Prüfungzweite Sicherung auf dem Server
- Speicher in der EUAufbewahrung wie in Deinem Projekt
- Playermit Handy-Rahmen, Bildschirm statt URL
- Am LeadAufnahme im Besuch und im Lead-Profil
Sitzungen sehen. Eingaben nie.
Ein Wireframe statt Video, leicht und maskiert. Er läuft im selben Player wie Deine Website.
- Eingaben werden nie aufgezeichnet, auch keine Passwörter oder Kartendaten.
- Texte und Bilder sind standardmäßig maskiert.
- Ein sichtbarer Aufnahme-Hinweis in der App ist standardmäßig an.
- Screenshots nur für Bildschirme, die Du im Code freigibst.
- Pausiert im Stromsparmodus.
08Datenschutz
Was X3 nie tut.
Kein Fingerprinting, keine Werbe-IDs. Gemessen wird nur, was Du freigibst.
Nie
- Fingerprinting oder IP-Abgleich zwischen App und Web
- IDFA, GAID oder Gerätename
- Getippte Texte, Zwischenablage, Kontakte oder Standort
- Fremde Tracking-Domains: nur Deine Domain oder X3
Immer
- Install-ID zufällig, ohne Backup, bei X3 nur als Hash
- E-Mail und User-ID aus identify() nur als SHA-256
- Privacy Manifest und Store-Angaben zum Übernehmen
- Löschen pro Nutzer: per User-ID, E-Mail oder Install-ID
09App-Stacks
Für jeden App-Stack.
Swift, Kotlin, React Native, Expo und Flutter. Daten laufen über Deine eigene Domain.
import X3Kit
X3.configure(key: "pk_3x_…", options: X3Options(
consent: X3ConsentOptions(mode: .optIn),
host: URL(string: "https://nordlicht.app/n3")!))
X3.identify(userId: user.id, email: user.email)
import io.x3growth.sdk.*
X3.configure(this, "pk_3x_…", X3Options(
consent = X3ConsentOptions(mode = X3ConsentMode.OPT_IN),
host = "https://nordlicht.app/n3"))
X3.identify(userId = user.id, email = user.email)
import { X3 } from "@x3growth/react-native";
X3.configure("pk_3x_…", {
consent: { mode: "opt_in" },
host: "https://nordlicht.app/n3" });
X3.identify(user.id, { email: user.email });
import 'package:x3growth/x3growth.dart';
await X3.configure('pk_3x_…', const X3Options(
consent: X3ConsentOptions(mode: X3ConsentMode.optIn),
host: 'https://nordlicht.app/n3'));
X3.identify(user.id, email: user.email);
Hier im Modus Opt-in: X3 misst erst nach der Zustimmung, über den fertigen Dialog oder X3.consent().
- @x3growth/react-nativeExpo Module, Hooks
- Expo Config-PluginInfo.plist, Manifest
- x3growth (Flutter)Plugin für iOS und Android
- X3Kit · SwiftiOS 15+CoreReplayUI
- io.x3growth:sdk · KotlinAPI 24+sdkreplaycompose
- iOSAdServices · AdAttributionKit
- SKAdNetwork · StoreKit 2 · ATT
- AndroidPlay Install Referrer
- NieIDFA · GAID · Fingerprinting
/v1/m/* · /go/* · /.well-known/appattribution · /.well-known/skadnetworkFAQ
Fragen zum App-Tracking
Funktioniert das auf iOS ohne ATT-Freigabe?
Nutzt X3 Fingerprinting?
Wer entscheidet über die Einwilligung?
Wann zählt ein Kauf?
Was zeichnen Aufnahmen auf?
Was kostet App-Tracking?
Wie aufwendig ist die Einrichtung?
Wo finde ich die Doku?
10Loslegen
Finde heraus, woher sie kommen.
Free für immer, ohne Kreditkarte. App und Website in einem Projekt.