Az archívumból7 rész · 6 percÍrta: Dezső Mező · Megjelent .mdMobileAnalyticsGDPRPrivacyPostHogPII
A mobil app analitika 2026 ban ott van, ahol a webes 2018 ban: a 'tedd be a Firebase t és kész' időszak véget ért. A NAIH 2025 ben indított egy magyar app fókuszú adatkezelési auditsorozatot, és a leggyakoribb megállapítás az volt, hogy a fejlesztő nem tudta megmondani, hova mennek pontosan a Firebase Analytics event ek, mire használja a Google azokat, és milyen jogalapon. Ez a poszt az alternatíváról.
Ez nem 'a Firebase rossz' irányú érvelés. A Firebase t magunk is használjuk, ahol a felhasználói consent tiszta, a DPA kötött és a use case egyértelmű. A poszt azokról a magyar app projektekről szól, ahol a marketing analitika nem prioritás, és a privacy tiszta state alapelvárás.
011. Mit kérdezel meg, mielőtt SDK t teszel be
- Mire használjuk az adatot? (Crash debug? Funkció megértés? Marketing optimalizálás?)
- Az adat opt out alapú vagy opt in alapú? (Magyarországon a marketing analitikára opt in kell.)
- Az adat kilép e az EU ból? (Ha igen, SCC kell, és NAIH kockázat.)
- Mennyi PII (personally identifiable information) megy? (User id? IP? Eszköz id? Email?)
- Mennyi időre tárolunk? (Mert a 'forever' nem GDPR megfelelő válasz.)
022. On device aggregálás · ami sokszor elég
A leggyakoribb mobil analitika kérdés: 'a user a feature A vagy a feature B felé megy gyakrabban?'. Erre nem kell minden tap et szervernek küldeni. Tárolj on device egy aggregátot (pl 'feature_a_count' számláló), és napi egyszer a session végén küldd el a számokat (nem az event eket). Ez k anonim módon mondja meg a választ, és a user privát marad.
// On device aggregátor Swift ben
actor LocalCounters {
private var counters: [String: Int] = [:]
private let store: UserDefaults = .standard
func increment(_ key: String) {
counters[key, default: 0] += 1
}
func flushAndReset() async -> [String: Int] {
let snapshot = counters
counters.removeAll()
// szerverre küldjük az aggregátot
await Network.post("/api/anon-stats", body: [
"date": Date().iso8601(),
"counters": snapshot,
"build": Bundle.main.buildNumber,
"platform": "ios",
"locale": Locale.current.identifier,
])
return snapshot
}
}033. Self hosted PostHog · ha eseményszintű kell
Ha tényleg eseményszintű analitika kell (pl. funnel elemzés, kohorsz vizsgálat), akkor a self hosted PostHog egy reális opció. A teljes adat a saját szervereden marad, EU régióban (Hetzner, OVH, Magyar Telekom Cloud), és a PostHog cloud verziójához képest ~30 százalék több munka, de a NAIH audit egyetlen kérdéssel zárul: 'hol vannak az adatok? · A saját szerverünkön, EU n belül.'.
- Self hosted minimum costs: 1 nagyobb VM (8 GB RAM, 4 vCPU), kb 50-80 EUR / hó.
- Karbantartás: havonta egyszer update, ~2 óra.
- A saját szerveren tárolt adat retentionjét te szabod meg (mi 90 napban dolgozunk).
- Az ingest endpoint t app oldalról szabad self hosted ra mutatnod (a SDK ezt támogatja).
// PostHog Android SDK self hosted endpoint tel
import com.posthog.android.PostHog
import com.posthog.android.PostHogAndroidConfig
class App : Application() {
override fun onCreate() {
super.onCreate()
val config = PostHogAndroidConfig(
apiKey = BuildConfig.POSTHOG_KEY,
host = "https://analitika.cegunk.hu"
).apply {
// Csak akkor küldj, ha a user beleegyezett
// (a SDK ezt opt in flag gel kezeli)
optOut = !ConsentManager.hasAnalyticsConsent()
// PII auto capture kikapcsolva
sessionReplay = false
captureApplicationLifecycleEvents = true
captureDeepLinks = false
}
PostHog.with(this, config)
}
}044. Plausible / Umami · ha minimalista vagy
Webes oldalon a Plausible és az Umami kategorikusan jó privacy tisztaság szempontjából. Mobilon a Plausible nem natívan jelen van, de a saját analitika küldést egyszerűen lehet egy lightweight HTTP klienssel csinálni · csak a pageview és néhány custom event etlen menjen át. A trade off: nincs funnel, nincs kohorsz, nincs replay. De a NAIH meg van elégedve, mert nincs PII, nincs cross app tracking, nincs cookie.
055. PostHog Replay alternatívák · session replay nélkül
A 'session replay' a fejlesztők kedvence (látja, hol akadt el a user), és a privacy advocate ek rémálma (egy teljes input sequence felvétele a PII felvétele). 2026 ban a NAIH álláspontja a session replay re igencsak szigorú: csak explicit, granular consent tel és csak addig, amíg a user kifejezetten benne van. Mi két alternatívát ajánlunk a magyar piacra:
- Anonim crash riport és error trace (Sentry, ahol a PII et a config szinten kicseréljük szűrőre ·
beforeSendhook). - Heat map saját implementációban: tárolj on device 'tap location' aggregátot a feature kategóriákhoz, és a session végén küldd el. Nincs replay, de a 'hova nyom a user' válaszolható, és nincs PII.
// Sentry beforeSend hook · PII szűrés
import * as Sentry from "@sentry/react-native";
Sentry.init({
dsn: process.env.SENTRY_DSN,
beforeSend(event, hint) {
// 1. User context elhagyása minden esetben
if (event.user) {
event.user = { id: hashUserId(event.user.id) };
}
// 2. Email / telefon mintázat törlése a stack trace ben
const piiPatterns = [
/\b[\w._%+-]+@[\w.-]+\.[A-Za-z]{2,}\b/g, // email
/\+36 ?\d{1,2} ?\d{3} ?\d{4}/g, // magyar telefon
/\b\d{8,11}\b/g, // hosszú számok
];
const cleanString = (s: string) =>
piiPatterns.reduce((acc, p) => acc.replace(p, "[REDACTED]"), s);
if (event.message) event.message = cleanString(event.message);
if (event.exception?.values) {
event.exception.values.forEach((v) => {
if (v.value) v.value = cleanString(v.value);
});
}
return event;
},
});066. Konsent UI · a magyar specifikum
A magyar NAIH gyakorlat szigorúbb az IAB TCF dialógusok ellen, mint a francia CNIL. A jelenlegi (2025 4 negyedévben kibocsátott) NAIH ajánlás szerint: a consent dialógusban 'Elfogadom' és 'Elutasítom' egy szinten, egy színben legyen. A 'Beállítások' nem helyettesíti az 'Elutasítom' t. Ha az appodban Firebase Analytics van, az alapértelmezetten ne küldjön event et, csak a consent után.
Az analitika consent jét tedd minden új session induláskor felülvizsgálható módon (pl. a settings ben egyenként ki / be kapcsolható kategória). Ez nem csak compliance · ez egyfajta felhasználói bizalom építés. Egy 2024 es Eurobarometer adat szerint a magyar mobil felhasználók 71 százaléka nyitottabb azokhoz az appokhoz, ahol az analitika beállítható.
07Mit veszítesz, mit nyersz · a trade off táblázat
- Veszítesz: cross app reach (pl Facebook attribuáció), part felhasználói cohort összevetés (mert a Google ban van).
- Veszítesz: marketing kampány attribuáció a TikTok / Meta felé (a SKAdNetwork és a Privacy Sandbox alapú alternatívák itt nem privacy tisztábbak).
- Nyersz: a NAIH és a felhasználó bizalma, és ezzel a B2C app retention 6-10 százalékos javulása (saját mérés, két app esetben).
- Nyersz: az adat a saját szervereden marad, és a saját elemzéseid alapján döntesz, nem a Firebase által nyújtott feldolgozott adatból.
Záró megjegyzés: a privacy tiszta analitika nem kategorikusan rossz. Minőségileg más típusú elemzés. A 'minden tap et követek' modellből egy 'a fontos eseményeket aggregálom' modellbe lépsz. Ez kevesebb data points sze, de a kérdéseid is más. Ha a kérdésed 'hány user nyomta meg ezt a gombot', az ki kell, hogy egy aggregátum. Ha a kérdésed 'pontosan ki nyomta meg, mikor', akkor PII kell, és akkor consent kell.
Amit érdemes elvinni
- GDPR tiszta mobil analitika 2026 ban: on device aggregáció, k anonim event ek, self hosted PostHog, vagy Plausible. Mit veszítesz a Firebase / Mixpanel hez képest, mit nyersz a NAIH audit szempontjából. Magyar konkrét megfontolásokkal.
Az írásban használt fogalmak
Több a laborból
Összes bejegyzés- Mobil push értesítések 2026 · iOS + Android playbook
- React Native vagy natív iOS? Döntési keret 2026-ra
Vállalkozz Digitálisan: szoftver akkreditált szállítótól, pályázati forrásból
Mennyibe kerül tényleg az egyedi szoftver
Megnézzük ugyanezt a te rendszereden?Kezdjünk bele
