Prejsť na dokumentáciu

Sledovanie akcií v kontexte

Najdôležitejšie rozhodnutie pri instrumentácii je, ako pomenujete udalosti a kam uložíte kontext. Keď to spravíte správne, jedna udalosť odpovie na tucet otázok; keď nie, katalóg sa rozrastie na stovky takmer duplicitných názvov, ktoré žiadny funnel nedokáže zosúladiť. Toto je kanonický vzor Kixo — ten istý návrh odporúča aj AI poradca pre instrumentáciu (suggest_instrumentation v chate).

Vzor: jedna zovšeobecnená udalosť + bohaté vlastnosti

Sledujte jedna udalosť na jednu akciu používateľa a kontext opíšte cez vlastnosti — názov udalosti nikdy nerozdeľujte podľa kontextu. Príspevok otvorený z vyhľadávania a príspevok otvorený z feedu sú tá istá akcia (post_opened) s odlišnou vlastnosťou source.

Anti-pattern

Nevytvárajte nie ako post_opened_from_search, post_opened_from_feed, post_opened_from_profile. Tri názvy udalostí znamenajú tri veci na údržbu, žiadny funnel ich nepokryje celý a pridanie štvrtej plochy znamená zmenu kódu všade. Jedno post_opened s source sa bez ďalšej práce škáluje na ľubovoľný počet plôch.

Nesprávne (udalosť pre každý kontext)Správne (jedna udalosť + vlastnosť)
post_opened_from_search
post_opened_from_feed
post_opened s { source: "search" | "feed" }
video_played_mobile
video_played_web
video_played — platforma sa už ku každej udalosti pridáva automaticky
checkout_from_cart
checkout_from_buy_now
cart_checked_out s { source: "cart" | "buy_now" }

Názvy: snake_case, najprv objekt, minulý čas

Každú udalosť pomenujte ako (object)_(verb) v snake_case a v minulom čase — post_opened, video_played, cart_checked_out. Ten istý názov sa musí doslova používať na webe, v iOS aj v Android, aby sa multiplatformové funnely zarovnali a aby detektor štandardných udalostí v Kixo vedel rozpoznať kanonické názvy.

  • Najprv objekt, potom sloveso — pri prehliadaní katalógu zoskupuje súvisiace udalosti (post_opened, post_liked, post_shared).
  • Minulý čas — udalosť zaznamenáva niečo, čo sa stalo.
  • snake_case — nie postOpened, ani PostOpened. Detektor aj porovnávanie so slovníkom nerozlišujú veľkosť písmen, ale jednotný tvar udrží funnely čisté.

Vlastnosti udalostí vs. vlastnosti používateľov

Druhá polovica rozhodnutia je, kde hodnota patrí.

Vlastnosť udalostiVlastnosť používateľa
OpisujeTento konkrétny výskyt akciePoužívateľa, trvalo naprieč všetkými jeho udalosťami
Nastavuje sa cezKixo.track(name, { ... })Kixo.setUserProperty(key, value)
Príkladysource, screen, post_id, amount_centsplan, vip, signup_cohort, lifetime_orders
PoužitieFiltre po krokoch funnelu, rozdelenia a distribúcieSegmentácia, cielenie publika, oprávnenie kampaní

Tip

Praktické pravidlo: ak sa hodnota môže líšiť medzi dvoma udalosťami toho istého používateľa (ktorý príspevok, ktorý zdroj), je to vlastnosť udalosti. Ak ide o fakt o používateľovi, ktorý platí bez ohľadu na akciu (jeho plán, či je VIP), je to vlastnosť používateľa. source patrí na udalosť; plan patrí používateľovi.

Vždy posielajte stabilné ID entity

Posielajte stabilné ID objektu, ktorého sa akcia týkala — post_id, video_id, order_id. Bez neho síce viete spočítať, koľko príspevkov sa otvorilo, ale neviete zoskupovať, deduplikovať ani prepájať udalosti o tom rovnakom príspevku. Funnel ako search → open-from-search → like dáva zmysel len vtedy, keď každý krok nesie vlastnosť, ktorá kroky spája.

Príklad: search → open → like

Povedzme, že chcete vedieť, koľko používateľov vyhľadávanie, potom otvorí príspevok z výsledkov vyhľadávania, potom olajkuje ho. Sú to tri udalosti — ale kontext „from search“ je vlastnosť source na post_opened, nie samostatná udalosť:

  • search_performed{ query }
  • post_opened{ source: "search", screen, post_id }
  • post_liked{ source: "search", screen, post_id }

Potom vo funneli filtrujete krok 2 (aj krok 3) podľa source = "search" — jeden predikát nad vlastnosťou, bez žonglovania s názvami udalostí. Presné volania SDK pre každú platformu:

// User runs a search
Kixo.track('search_performed', {
  query: 'running shoes',
});

// User taps a result — the post was opened FROM search
Kixo.track('post_opened', {
  source: 'search',          // ← context as a property, not the event name
  screen: 'search_results',
  post_id: 'post_8f3a1c',
});

// User likes the post they opened from search
Kixo.track('post_liked', {
  source: 'search',
  screen: 'post_detail',
  post_id: 'post_8f3a1c',
});

Označovanie používateľa namiesto udalosti

Ak je „has liked a post from search“ trvalá vlastnosť, podľa ktorej chcete segmentovať (nielen signál konkrétnej udalosti), po akcii nastavte používateľskú vlastnosť: Kixo.setUserProperty("liked_from_search", true). Prieskumník publík aj oprávnenie kampaní potom môžu cieliť priamo na týchto používateľov.

Nechajte návrh na AI

V chate v dashboarde Kixo bežnou angličtinou opíšte, čo chcete merať — „track posts opened from search and then liked“ — a asistent vráti odporúčané udalosti, vlastnosti aj úryvky na skopírovanie pre všetky tri platformy. a vám ukáže, ktoré udalosti už do projektu prúdia a čo ešte vyžaduje prácu v SDK. Používa presne ten istý vzor ako na tejto stránke.

Pozrite aj: Prehľad udalostí so zoznamom jedenástich kanonických názvov udalostí, ktoré Kixo rozpoznáva automaticky, a SDK príručky pre Web, iOS a Android.