Event Tracking v mobilních aplikacích: co to je, typy událostí a jak nastavit

Autor: IT Sectr Publikováno: 2026-04-21 Doba čtení: 11 min

Event Tracking — sběr a analýza událostí o akcích uživatele v mobilní aplikaci, od stisknutí tlačítek až po nákupy. Kvalitní event tracking je základem produktové analytiky, A/B testování a personalizace. Podle údajů Amplitude, 2024 přijímají týmy se systematickým Event Tracking produktová rozhodnutí 3krát rychleji díky data-driven přístupu. Bez událostí je analytika aplikace slepá.

Hlavní body

  • Event Tracking — sběr dat o akcích uživatele, každá akce je popsána názvem události a parametry.
  • Typy událostí se dělí na automatické (SDK), vlastní (vývojář) a revenue události.
  • Pojmenování událostí by mělo následovat jednotný standard — Object + Action (např. product_added_to_cart).
  • Parametry události obsahují kontext: cenu, kategorii produktu, zdroj přechodu.
  • Platformy pro Event Tracking: Firebase Analytics, Amplitude, Mixpanel, Segment.

Co je Event Tracking?

Event Tracking — je proces shromažďování, ukládání a analýzy diskrétních akcí uživatele v aplikaci. Každá událost se skládá z názvu (event_name) a sady parametrů (event_params). Například událost purchase má parametry price, currency, product_id, quantity.

Na rozdíl od Screen View, který zaznamenává otevření obrazovky, Event Tracking popisuje, co přesně uživatel na této obrazovce dělá: stiskl tlačítko „Koupit“, otevřel košík, použil promo kód. Bez událostí není možné pochopit motivaci a kontext akcí uživatele.

Struktura události

Každý Analytics Event obsahuje povinná a volitelná pole. Povinná: event_name, event_timestamp, user_id (nebo device_id). Volitelná: parametry, popis kontextu.

PolePovinnéPříklad
event_nameAno„purchase_completed”
event_timestampAno1719876543000
user_idAno„user_abc123”
session_idNe„session_456def”
revenueNe9.99
currencyNe„USD”

Parametr revenue je obzvláště důležitý — předává se platformám MMP pro automatický výpočet ROAS a LTV.

Typy událostí v mobilní analytice

Události jsou klasifikovány podle původu a účelu. Rozdělení pomáhá organizovat strukturu dat a přiřazovat přístupová práva různým týmům.

Automatické události (SDK)

SDK analytických platforem automaticky sbírají základní události: app_install, app_remove, session_start, screen_view. Firebase Analytics generuje asi 20 automatických událostí bez jediného řádku kódu. Tyto události pokrývají základní metriky, ale neposkytují pochopení obchodní logiky.

Vlastní události (Custom Events)

Vlastní události — to, co dělá Event Tracking cenným. Popisují obchodní akce: add_to_cart, start_subscription, level_complete, share_content, search_performed. Vlastní události vyžadují explicitní odeslání z kódu aplikace.

kotlin
// Odeslání vlastní události do Firebase
val bundle = Bundle().apply {
    putString(AnalyticsParam.ITEM_ID, "prod_789")
    putString(AnalyticsParam.ITEM_NAME, "Premium Subscription")
    putString(AnalyticsParam.CURRENCY, "USD")
    putDouble(AnalyticsParam.PRICE, 29.99)
    putString(AnalyticsParam.SOURCE, "onboarding_screen")
}
FirebaseAnalytics.getInstance(this)
    .logEvent("subscribe_premium", bundle)

V příkladu událost subscribe_premium obsahuje čtyři kontextové parametry. Parametr source umožňuje pochopit, z které obrazovky uživatel provedl předplatné — onboarding, nastavení nebo paywall.

User Properties a Super Properties

Kromě událostí zahrnuje Event Tracking User Properties — atributy připojené k uživateli: úroveň předplatného, země, verze aplikace. User Property se odešle jednou a aplikuje se na všechny následující události relace. To umožňuje segmentaci analytiky bez přidávání parametrů ke každé události.

Super Properties (Amplitude) nebo Global Properties (Mixpanel) — atributy připojené k relaci, nikoli k uživateli. Používají se pro A/B testy: variant_id jako Super Property se přidá ke všem událostem v relaci a analytik vidí, do které skupiny uživatel patří.

Revenue události

Revenue události — samostatná třída pro zaznamenávání transakcí. Obsahují částku, měnu a typ nákupu (předplatné, jednorázový nákup, obnovení). Platformy MMP (AppsFlyer, Adjust) vyžadují revenue události pro výpočet ROAS.

Podle údajů Branch (2024) dostávají aplikace, které správně předávají revenue události MMP, o 25% přesnější data o atribuci a mohou optimalizovat kampaně na základě LTV, nikoli CPI.

Jak nastavit Event Tracking?

Nastavení Event Tracking probíhá ve třech fázích: plánování schématu událostí, integrace SDK, validace dat.

Fáze 1: Návrh schématu událostí

Vytvořte Event Taxonomy — dokument, kde je popsána každá událost: název, parametry, spouštěč odeslání, vlastník. Příklad pro e-commerce: order_completed → parametry: order_id, total_price, items_count, payment_method, shipping_city.

  • Každá událost odpovídá na otázku: co uživatel udělal?
  • Každý parametr odpovídá na otázku: v jakém kontextu?
  • Vyhněte se událostem bez parametrů — jsou k ničemu pro analýzu

Fáze 2: Integrace SDK

Připojte Analytics SDK k projektu. Firebase Analytics, Amplitude, Mixpanel — každé SDK vyžaduje inicializaci v Application.onCreate(). Příklad pro Flutter:

dart
import 'package:firebase_analytics/firebase_analytics.dart';

class AnalyticsService {
  final _analytics = FirebaseAnalytics.instance();

  Future<void> logPurchase({
    required String productId,
    required double price,
    required String currency,
  }) async {
    await _analytics.logEvent(
      name: 'purchase_completed',
      parameters: {
        'product_id': productId,
        'price': price,
        'currency': currency,
        'timestamp': DateTime.now().millisecondsSinceEpoch,
      },
    );
  }
}

Třída AnalyticsService centralizuje odesílání všech událostí. Každá metoda odpovídá obchodní akci. To zjednodušuje hledání odeslání — pokud událost nepřichází, hledáte podle názvu metody v kódu. Při škálování projektu může počet metod vzrůst na 50–100, ale struktura zůstává čitelná díky seskupení podle funkcí.

Fáze 3: Validace prostřednictvím DebugView

Firebase DebugView umožňuje vidět události v reálném čase na zařízení vývojáře. Zapněte režim: adb shell setprop debug.firebase.analytics.app your.package. Všechny události se objeví v konzoli Firebase se zpožděním kratším než 5 sekund.

Po zapnutí DebugView otevřete aplikaci a proveďte testovací scénář — registraci, nákup, prohlížení katalogu. V konzoli zkontrolujte: byly všechny události odeslány, jsou parametry správné, nedochází k duplikaci. Amplitude nabízí podobný nástroj — Amplitude Debugger pro iOS a Android.

Automatická validace prostřednictvím CI/CD — další úroveň kvality. Přidejte do pipeline skript, který kontroluje, zda každá událost ze schématu byla odeslána alespoň jednou během testovacího běhu. To zabraňuje nasazení verzí s chybějícími událostmi a šetří čas QA inženýrů.

Nejlepší praktiky pojmenování událostí

Pojmenování událostí — nejvíce podceňovaný aspekt Event Tracking. Nesprávné jméno činí analytiku nepoužitelnou, když je v projektu více než 50 událostí.

Standard Object + Action

Použijte vzor object_action (malá písmena, snake_case): product_added, cart_opened, payment_failed, subscription_cancelled. Objekt — entita, akce — sloveso v minulém čase. Čte se jako věta: „produkt přidán”, „košík otevřen”.

  • product_viewed, ne „tap_on_product_card” (událost — výsledek, ne akce)
  • order_completed, ne „successful_payment_transaction” (krátce a jasně)
  • level_started, ne „begin_level_with_parameters” (bez zbytečných slov)

Zakázané vzory

NEPOUŽÍVEJTE mezery („Add to Cart”), CamelCase („AddToCart”), tečku („add.to.cart”), pomlčku („add-to-cart”). Většina SDK doporučuje snake_case. NEPOUŽÍVEJTE názvy UI prvků („btn_submit_clicked”) — událost by měla být obchodní, ne technická.

Pro prefix přidejte název funkce nebo obrazovky: onboarding_step_completed, checkout_payment_selected. To umožňuje filtrovat události podle funkcionality v reportech.

Typy parametrů událostí

Parametry se dělí na tři typy: string (hodnota), number (číslo pro agregaci), boolean (příznak). String parametry obsahují kategorická data: země, zdroj návštěvnosti, název produktu. Number parametry slouží pro metriky: cena, množství, doba trvání. Boolean parametry označují stav: is_trial, is_promo_applied.

Vyhněte se předávání objektů nebo polí v jednom parametru — analytické platformy je neumí zpracovat. Místo JSON řetězce v jednom poli předejte několik plochých parametrů. Například místo items_count_total předejte samostatně items_count a total_price.

Platformy pro Event Tracking

Výběr platformy Event Tracking závisí na rozsahu projektu a týmu. Zvažme tři varianty různých úrovní.

Firebase Analytics (zdarma, až 500 událostí)

Firebase — standardní volba pro startupy. Bezplatný limit — 500 různých event_name, neomezený počet parametrů. Integrace s BigQuery pro vlastní analytiku. Nevýhody: omezená segmentace, chybí automatické propojování událostí v relacích.

Amplitude (Pro od 1 000 USD/měs.)

Amplitude — platforma pro produktovou analytiku. Podporuje Behavioural Cohorts, Funnel Analysis, Pathfinder. Umožňuje vytvářet virtuální události z kombinace reálných. Integruje se s 50+ nástroji prostřednictvím Segmentu.

Segment (od 120 USD/měs.)

Segment — middleware pro správu událostí. Odesíláte události do Segmentu a ten je distribuuje do 300+ nástrojů. Užitečný v enterprise, kde se současně používají Firebase, Amplitude, Mixpanel, Braze a Salesforce.

PostHog (open-source alternativa)

PostHog — open-source platforma pro produktovou analytiku s vlastním Event Tracking. Podporuje automatické zachytávání událostí, nahrávání relací a feature flags. Nasazuje se na vlastní server, což je klíčové pro projekty s GDPR nebo důvěrnými daty. Poskytuje Python-kompatibilní API pro ETL pipeline.

Pro Flutter projekty se doporučuje flutterfire_analytics + Amplitude přes plugin amplitude_flutter. Pro React Native — react-native-firebase + mixpanel-react-native.

Často kladené otázky

Kolik událostí by se mělo sledovat v jedné aplikaci?

Optimální rozsah je 50–150 událostí na aplikaci. Méně než 50 — chybí data pro analýzu, více než 150 — kvalita klesá (analytici nestíhají všechny). Pro MVP stačí 20–30 klíčových událostí.

Jak často lze odesílat události bez poškození výkonu?

Průměrné mobilní SDK ukládá události do vyrovnávací paměti a odesílá je v dávkách každých 5–30 sekund. Bezpečný limit — 100 událostí za minutu na zařízení. Více — riziko ztráty dat při špatném připojení. Výkyvy (např. načítání úrovně) nejsou kritické.

Je nutné odesílat události v režimu offline?

Ano, moderní SDK ukládají události do místního úložiště při absenci sítě. Po obnovení připojení jsou odeslány se správným časovým razítkem. Firebase uchovává až 7 dní offline událostí, Amplitude — až 30 dní.

Jak přejmenovat událost v již spuštěné aplikaci?

Nová událost se vytvoří s novým event_name, stará zůstává pro historická data. Vytvořte mapování ve vrstvě BI (SQL CASE nebo dashboard) pro sloučení dat. Nikdy neměňte název existující události — zničíte historii.

Lze Event Tracking použít pro personalizaci?

Ano, Event Tracking je základem personalizace. Události jsou filtrovány v reálném čase: pokud uživatel odeslal product_viewed 3krát bez nákupu, zobrazte slevové vyskakovací okno. Amplitude a Braze podporují spouštěče založené na událostech.

Shrnutí

  • Event Tracking — sběr diskrétních akcí uživatele s kontextem (parametry, časové razítko, user_id).
  • Typy událostí: automatické (SDK), vlastní (obchodní logika), revenue (transakce).
  • Pojmenování — snake_case podle standardu Object + Action.
  • Nastavení zahrnuje tři fáze: schéma událostí, SDK, validace DebugView.
  • Platformy: Firebase (zdarma), Amplitude (Pro), Segment (enterprise).
  • Optimum — 50–150 událostí na aplikaci.
  • Offline události jsou ukládány do vyrovnávací paměti SDK a odesílány po obnovení připojení.

Vyvineme mobilní aplikaci na klíč

IT Sectr vytváří aplikace pro iOS a Android pro startupy a podniky od roku 2017. Poradíme vám a navrhneme nejlepší řešení.

Prodiskutovat projekt

Přečtěte si také