Sekimo ir įvykių dokumentacija

Viskas, ko reikia norint įdiegti ClearAnalytics savo svetainėje ir sekti puslapių peržiūras, pasirinktinius įvykius, paspaudimų tikslus ir e. prekybos operacijas.

Apžvalga

ClearAnalytics siūlo du sekimo scenarijų variantus. Pasirinkite tą, kuris atitinka jūsų poreikius: minimalų scenarijų pagrindinei puslapių peržiūrų analitikai arba pilną scenarijų pasirinktiniams įvykiams, paspaudimų tikslams ir e. prekybos sekimui.

Lengvas scenarijus (ca.js)

Lengviausias įmanomas sekimo scenarijus. Idealus tinklaraščiams, nukreipimo puslapiams ir svetainėms, kurioms reikia tik puslapių peržiūrų analitikos.

ca.js < 1 KB
  • Automatinis puslapių peržiūrų sekimas
  • Sesijos trukmė ir atmetimo rodiklis
  • UTM kampanijos parametrų fiksavimas
  • Vieno puslapio programų palaikymas

Pilnas scenarijus (ca-events.js)

Viskas, kas yra lengvame scenarijuje, plius pasirinktiniai įvykiai, paspaudimų tikslų sekimas, GA4 dataLayer perėmimas ir pilnas e. prekybos palaikymas.

ca-events.js < 2 KB
  • Viskas, kas yra lengvame scenarijuje
  • Pasirinktinių įvykių sekimas per window.ca()
  • Paspaudimų tikslų sekimas per data-ca-goal
  • GA4 dataLayer integracija
  • Pilnas e. prekybos įvykių sekimas

Diegimas

Pridėkite vieną script žymą prie savo svetainės. Jokių npm paketų, jokių build įrankių, jokių konfigūracijos failų. Scenarijus įkeliamas asinchroniškai ir neturi jokio poveikio puslapio veikimui.

HTML — Lengvas scenarijus

Pridėkite tai prie <head> arba <body> pabaigos kiekviename puslapyje. Automatiškai seka puslapių peržiūras, sesijos trukmę ir UTM parametrus.

<script defer src="https://clearanalytics.eu/js/ca.js"></script>

HTML — Pilnas scenarijus

Naudokite šį variantą, jei reikia pasirinktinių įvykių, paspaudimų tikslų ar e. prekybos sekimo.

<script defer src="https://clearanalytics.eu/js/ca-events.js"></script>

HTML — Pilnas scenarijus su DataLayer

Pridėkite atributą data-ca-datalayer, kad automatiškai pereitumėte GA4 dataLayer įvykius, įskaitant visus e. prekybos įvykius.

<script defer src="https://clearanalytics.eu/js/ca-events.js" data-ca-datalayer></script>

WordPress

Pridėkite script žymą per savo temos functions.php failą arba naudokite antraštės/poraštės įterpimo įskiepį.

// functions.php
add_action('wp_head', function () {
    echo '<script defer src="https://clearanalytics.eu/js/ca-events.js"></script>';
});

React / Next.js

Naudokite Next.js Script komponentą optimaliam įkėlimui. Scenarijus veikia su bet kuriuo React karkasu.

// app/layout.tsx  (Next.js App Router)
import Script from 'next/script';

export default function RootLayout({ children }) {
  return (
    <html>
      <head>
        <Script
          src="https://clearanalytics.eu/js/ca-events.js"
          strategy="afterInteractive"
        />
      </head>
      <body>{children}</body>
    </html>
  );
}

Vue / Nuxt

Pridėkite scenarijų per Nuxt konfigūraciją arba tiesiogiai į HTML šabloną paprastoms Vue programoms.

// nuxt.config.ts
export default defineNuxtConfig({
  app: {
    head: {
      script: [
        {
          src: 'https://clearanalytics.eu/js/ca-events.js',
          defer: true,
        },
      ],
    },
  },
});

Google Tag Manager

Scenarijų taip pat galite diegti per Google Tag Manager naudodami Custom HTML žymą.

Tag Type:   Custom HTML
Trigger:    All Pages

<script defer src="https://clearanalytics.eu/js/ca-events.js" data-ca-datalayer></script>

Naudojant GTM su atributu data-ca-datalayer, ClearAnalytics automatiškai fiksuos visus dataLayer įvykius, kuriuos siunčia jūsų esamos GTM žymos.

Pasirinktiniai įvykiai

Sekite bet kokią vartotojo sąveiką siųsdami pasirinktinius įvykius su neprivalomais metaduomenimis. Pasirinktiniai įvykiai rodomi valdymo skyde ir gali būti naudojami kaip tikslų paleidikliai.

Reikia pilno scenarijaus (ca-events.js).

API signatūra

window.ca(eventName, properties?);
Parametras Tipas Aprašymas
eventName string Aprašomasis įvykio pavadinimas (pvz., 'signup', 'file_download').
properties object Neprivalomas objektas su papildomais metaduomenimis. Serializuojamas kaip JSON.

Pavyzdžiai

// Registracijos sekimas su plano informacija

window.ca('signup', { plan: 'pro' });

// Failo atsisiuntimo sekimas

window.ca('file_download', {
  file_name: 'whitepaper.pdf',
  file_type: 'pdf',
});

// Vaizdo įrašo paleidimo sekimas

window.ca('video_play', {
  video_title: 'Product Demo',
  duration: 120,
});

// Vidinės paieškos sekimas

window.ca('search', { query: 'privacy analytics' });

Paspaudimų tikslų sekimas

Sekite mygtukų ir nuorodų paspaudimus nerašydami JavaScript. Pridėkite atributą data-ca-goal prie bet kurio HTML elemento ir paspaudimas bus automatiškai užfiksuotas.

Reikia pilno scenarijaus (ca-events.js).

Naudojimas

Pridėkite data-ca-goal="goal-name" prie bet kurio spaudžiamo elemento. Atributo reikšmė tampa tikslo identifikatoriumi valdymo skyde.

<button data-ca-goal="cta-signup">Sign Up</button>

<a href="/pricing" data-ca-goal="pricing-click">View Pricing</a>

<form data-ca-goal="contact-form-submit">
  <!-- The goal fires when any element inside is clicked -->
  <button type="submit">Send</button>
</form>

Kaip tai veikia

Scenarijus naudoja įvykių delegavimą dokumente efektyviam paspaudimų aptikimui:

  1. Paspaudimo įvykis suveikia bet kur puslapyje.
  2. Scenarijus kyla aukštyn DOM medžiu nuo paspausto elemento ieškodamas atributo data-ca-goal.
  3. Jei randamas, siunčiamas paspaudimo įvykis su tikslo pavadinimu kaip selektoriumi.

Paspaudimų tikslų peržiūra

Paspaudimų tikslų įvykiai rodomi Tikslų puslapyje valdymo skyde. Sukurkite tikslą su tipu "Click" ir susiekite jį su data-ca-goal reikšme, naudota jūsų HTML.

GA4 DataLayer integracija

Jei jūsų svetainė jau siunčia įvykius į Google Analytics dataLayer, ClearAnalytics gali automatiškai perimti tuos įvykius. Tai paprasčiausias migracijos kelias nuo GA4.

Reikia pilno scenarijaus (ca-events.js).

DataLayer perėmimo įjungimas

Pridėkite atributą data-ca-datalayer prie script žymos. Šis opt-in metodas užtikrina, kad funkcija suaktyvėja tik tada, kai ją aiškiai įjungiate.

<script defer src="https://clearanalytics.eu/js/ca-events.js" data-ca-datalayer></script>

Kaip tai veikia

Kai įjungta, scenarijus perima visus dataLayer.push() kvietimus:

  • Atpažinti e. prekybos įvykiai (purchase, add_to_cart ir kt.) persiunčiami kaip e. prekybos įvykiai.
  • Visi kiti pasirinktiniai įvykiai persiunčiami kaip bendri pasirinktiniai įvykiai.
  • Vidiniai GTM įvykiai (gtm.js, gtm.dom, gtm.load ir kt.) automatiškai filtruojami.
  • Esami dataLayer įrašai apdorojami puslapio įkėlimo metu; būsimi įrašai perimami realiu laiku.

Pavyzdys

// These dataLayer pushes are automatically captured
dataLayer.push({
  event: 'form_submit',
  form_id: 'contact',
  form_name: 'Contact Form',
});

dataLayer.push({
  event: 'video_start',
  video_title: 'Product Demo',
  video_duration: 120,
});

Ignoruojami įvykiai

Šie vidiniai GTM įvykiai automatiškai ignoruojami ir nebus rodomi jūsų valdymo skyde:

// These GTM internal events are automatically filtered out:
gtm.js, gtm.dom, gtm.load, gtm.click, gtm.linkClick, gtm.scrollDepth

E. prekybos sekimas

Sekite visą kliento kelionę nuo produktų naršymo iki pirkimo ir grąžinimo. ClearAnalytics palaiko visus 14 standartinių e. prekybos įvykių naudodamas tą patį dataLayer formatą kaip GA4.

Reikia pilno scenarijaus (ca-events.js) su atributu data-ca-datalayer.

Visi e. prekybos įvykiai naudoja su GA4 suderinamą dataLayer.push() formatą. Jei jau turite įdiegtą GA4 e. prekybos sekimą, ClearAnalytics automatiškai fiksuos tuos įvykius be jokių kodo pakeitimų.

Įvykis Aprašymas
view_item_listVartotojas peržiūri produktų sąrašą arba paieškos rezultatus.
select_itemVartotojas paspaudžia produktą sąraše.
view_itemVartotojas peržiūri produkto informacijos puslapį.
add_to_cartVartotojas prideda produktą į krepšelį.
remove_from_cartVartotojas pašalina produktą iš krepšelio.
view_cartVartotojas peržiūri krepšelį.
add_to_wishlistVartotojas prideda produktą į norų sąrašą.
begin_checkoutVartotojas pradeda atsiskaitymo procesą.
add_shipping_infoVartotojas pateikia pristatymo informaciją.
add_payment_infoVartotojas pateikia mokėjimo informaciją.
purchaseVartotojas užbaigia pirkimą.
refundApdorojamas pilnas arba dalinis grąžinimas.
view_promotionVartotojas mato reklaminį banerį arba pasiūlymą.
select_promotionVartotojas paspaudžia akciją.

view_item_list

Iškvieskite šį įvykį, kai vartotojai mato produktų sąrašą, pvz., kategorijos puslapį ar paieškos rezultatus.

dataLayer.push({ ecommerce: null }); // Clear previous data
dataLayer.push({
  event: 'view_item_list',
  ecommerce: {
    item_list_id: 'category_results',
    item_list_name: 'Category Results',
    items: [
      {
        item_id: 'SKU-001',
        item_name: 'Running Shoes',
        item_brand: 'SportCo',
        item_category: 'Footwear',
        price: 89.99,
        index: 0,
      },
      {
        item_id: 'SKU-002',
        item_name: 'Trail Shoes',
        item_brand: 'SportCo',
        item_category: 'Footwear',
        price: 119.99,
        index: 1,
      },
    ],
  },
});

select_item

Iškvieskite šį įvykį, kai vartotojas paspaudžia konkretų produktą sąraše norėdamas jį peržiūrėti.

dataLayer.push({ ecommerce: null });
dataLayer.push({
  event: 'select_item',
  ecommerce: {
    item_list_id: 'category_results',
    item_list_name: 'Category Results',
    items: [{
      item_id: 'SKU-001',
      item_name: 'Running Shoes',
      item_brand: 'SportCo',
      price: 89.99,
      index: 0,
    }],
  },
});

view_item

Iškvieskite šį įvykį, kai vartotojas patenka į produkto informacijos puslapį.

dataLayer.push({ ecommerce: null });
dataLayer.push({
  event: 'view_item',
  ecommerce: {
    currency: 'EUR',
    value: 89.99,
    items: [{
      item_id: 'SKU-001',
      item_name: 'Running Shoes',
      item_brand: 'SportCo',
      item_category: 'Footwear',
      item_variant: 'Blue / Size 42',
      price: 89.99,
      quantity: 1,
    }],
  },
});

add_to_cart

Iškvieskite šį įvykį, kai vartotojas prideda vieną ar daugiau produktų į krepšelį.

dataLayer.push({ ecommerce: null });
dataLayer.push({
  event: 'add_to_cart',
  ecommerce: {
    currency: 'EUR',
    value: 89.99,
    items: [{
      item_id: 'SKU-001',
      item_name: 'Running Shoes',
      item_brand: 'SportCo',
      price: 89.99,
      quantity: 1,
    }],
  },
});

remove_from_cart

Iškvieskite šį įvykį, kai vartotojas pašalina produktą iš krepšelio.

dataLayer.push({ ecommerce: null });
dataLayer.push({
  event: 'remove_from_cart',
  ecommerce: {
    currency: 'EUR',
    value: 89.99,
    items: [{
      item_id: 'SKU-001',
      item_name: 'Running Shoes',
      price: 89.99,
      quantity: 1,
    }],
  },
});

view_cart

Iškvieskite šį įvykį, kai vartotojas peržiūri krepšelio puslapį.

dataLayer.push({ ecommerce: null });
dataLayer.push({
  event: 'view_cart',
  ecommerce: {
    currency: 'EUR',
    value: 209.98,
    items: [
      { item_id: 'SKU-001', item_name: 'Running Shoes', price: 89.99, quantity: 1 },
      { item_id: 'SKU-003', item_name: 'Sports Watch', price: 119.99, quantity: 1 },
    ],
  },
});

add_to_wishlist

Iškvieskite šį įvykį, kai vartotojas išsaugo produktą norų sąraše vėlesniam laikui.

dataLayer.push({ ecommerce: null });
dataLayer.push({
  event: 'add_to_wishlist',
  ecommerce: {
    currency: 'EUR',
    value: 89.99,
    items: [{
      item_id: 'SKU-001',
      item_name: 'Running Shoes',
      price: 89.99,
    }],
  },
});

begin_checkout

Iškvieskite šį įvykį, kai vartotojas pradeda atsiskaitymo procesą.

dataLayer.push({ ecommerce: null });
dataLayer.push({
  event: 'begin_checkout',
  ecommerce: {
    currency: 'EUR',
    value: 209.98,
    coupon: 'SUMMER20',
    items: [
      { item_id: 'SKU-001', item_name: 'Running Shoes', price: 89.99, quantity: 1 },
      { item_id: 'SKU-003', item_name: 'Sports Watch', price: 119.99, quantity: 1 },
    ],
  },
});

add_shipping_info

Iškvieskite šį įvykį, kai vartotojas pasirenka ar pateikia pristatymo duomenis atsiskaitymo metu.

dataLayer.push({ ecommerce: null });
dataLayer.push({
  event: 'add_shipping_info',
  ecommerce: {
    currency: 'EUR',
    value: 209.98,
    shipping_tier: 'Express',
    items: [
      { item_id: 'SKU-001', item_name: 'Running Shoes', price: 89.99, quantity: 1 },
      { item_id: 'SKU-003', item_name: 'Sports Watch', price: 119.99, quantity: 1 },
    ],
  },
});

add_payment_info

Iškvieskite šį įvykį, kai vartotojas pasirenka ar pateikia mokėjimo būdą atsiskaitymo metu.

dataLayer.push({ ecommerce: null });
dataLayer.push({
  event: 'add_payment_info',
  ecommerce: {
    currency: 'EUR',
    value: 209.98,
    payment_type: 'Credit Card',
    items: [
      { item_id: 'SKU-001', item_name: 'Running Shoes', price: 89.99, quantity: 1 },
      { item_id: 'SKU-003', item_name: 'Sports Watch', price: 119.99, quantity: 1 },
    ],
  },
});

purchase

Iškvieskite šį įvykį, kai pirkimas patvirtinamas. Įtraukite transaction_id, value, currency, tax, shipping ir pilną items masyvą.

dataLayer.push({ ecommerce: null });
dataLayer.push({
  event: 'purchase',
  ecommerce: {
    transaction_id: 'TXN-20260219-001',
    affiliation: 'Online Store',
    value: 209.98,
    tax: 36.49,
    shipping: 5.99,
    currency: 'EUR',
    coupon: 'SUMMER20',
    items: [
      {
        item_id: 'SKU-001',
        item_name: 'Running Shoes',
        item_brand: 'SportCo',
        item_category: 'Footwear',
        item_variant: 'Blue / Size 42',
        price: 89.99,
        quantity: 1,
        coupon: '',
      },
      {
        item_id: 'SKU-003',
        item_name: 'Sports Watch',
        item_brand: 'FitTech',
        item_category: 'Electronics',
        item_variant: 'Black',
        price: 119.99,
        quantity: 1,
        coupon: '',
      },
    ],
  },
});

refund

Iškvieskite šį įvykį, kai apdorojamas grąžinimas. Pilnam grąžinimui reikia tik transaction_id. Daliniams grąžinimams įtraukite konkrečius produktus.

// Full refund
dataLayer.push({ ecommerce: null });
dataLayer.push({
  event: 'refund',
  ecommerce: {
    transaction_id: 'TXN-20260219-001',
  },
});

// Partial refund (specific items)
dataLayer.push({ ecommerce: null });
dataLayer.push({
  event: 'refund',
  ecommerce: {
    transaction_id: 'TXN-20260219-001',
    items: [{
      item_id: 'SKU-001',
      quantity: 1,
    }],
  },
});

view_promotion

Iškvieskite šį įvykį, kai reklaminis baneris, karuselė ar pasiūlymas tampa matomas vartotojui.

dataLayer.push({ ecommerce: null });
dataLayer.push({
  event: 'view_promotion',
  ecommerce: {
    creative_name: 'Spring Banner',
    creative_slot: 'homepage_hero',
    promotion_id: 'PROMO-SPRING-2026',
    promotion_name: 'Spring Sale 2026',
    items: [{
      item_id: 'SKU-001',
      item_name: 'Running Shoes',
      price: 89.99,
      discount: 15.00,
    }],
  },
});

select_promotion

Iškvieskite šį įvykį, kai vartotojas paspaudžia akciją norėdamas sužinoti daugiau ar pasinaudoti pasiūlymu.

dataLayer.push({ ecommerce: null });
dataLayer.push({
  event: 'select_promotion',
  ecommerce: {
    creative_name: 'Spring Banner',
    creative_slot: 'homepage_hero',
    promotion_id: 'PROMO-SPRING-2026',
    promotion_name: 'Spring Sale 2026',
    items: [{
      item_id: 'SKU-001',
      item_name: 'Running Shoes',
      price: 89.99,
    }],
  },
});

Perėjimas nuo Google Analytics

ClearAnalytics sukurta veikti kartu su Google Analytics arba kaip jo pakaitalas. Pereinamuoju laikotarpiu galite naudoti abu įrankius lygiagrečiai be jokių konfliktų.

Abiejų scenarijų lygiagretus naudojimas

Pridėkite ClearAnalytics scenarijų šalia esamos Google Analytics žymos. Abu scenarijai seks nepriklausomai netrukdydami vienas kitam.

<!-- Google Analytics (existing) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXX"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());
  gtag('config', 'G-XXXXXXX');
</script>

<!-- ClearAnalytics (add this line) -->
<script defer src="https://clearanalytics.eu/js/ca-events.js" data-ca-datalayer></script>

Funkcijų suderinamumas

Kaip ClearAnalytics funkcijos atitinka Google Analytics atitikmenis:

Funkcija Google Analytics ClearAnalytics
Puslapių peržiūros gtag('event', 'page_view') Automatinis
Pasirinktiniai įvykiai gtag('event', ...) window.ca('event')
E. prekyba dataLayer.push() Suderinama su dataLayer
UTM kampanijos Automatinis Automatinis
Sesijos Paremta slapukais Be slapukų

Perėjimo žingsniai

  1. Pridėkite ClearAnalytics scenarijų prie savo svetainės šalia Google Analytics.
  2. Įjunkite dataLayer perėmimą su data-ca-datalayer, kad fiksuotumėte esamus e. prekybos įvykius.
  3. Palyginkite duomenis abiejuose valdymo skyduose 2–4 savaites tikslumui patikrinti.
  4. Kai būsite patenkinti, pašalinkite Google Analytics scenarijų ir mėgaukitės greitesne, privatumą gerbiančia sąranka.

SPA palaikymas

ClearAnalytics automatiškai aptinka kliento pusės navigaciją vieno puslapio programose. Jokios papildomos konfigūracijos ar maršrutizatoriaus integracijos nereikia.

Kaip tai veikia

Scenarijus perima naršyklės History API kvietimus puslapio navigacijai aptikti:

  • history.pushState() kvietimai perimami ir sukelia naują puslapio peržiūrą.
  • history.replaceState() kvietimai perimami ir sukelia naują puslapio peržiūrą.
  • popstate įvykiai (naršyklės atgal/pirmyn) sukelia naują puslapio peržiūrą.

Suderinami karkasai

Veikia iškart su bet kuriuo karkasu, naudojančiu History API maršrutizavimui:

React Next.js Vue.js Nuxt Svelte SvelteKit Angular Remix Astro Inertia.js

Nereikia maršrutizatoriaus įskiepių, gyvavimo ciklo kabliukų ar rankinių sekimo kvietimų. Tiesiog pridėkite script žymą vieną kartą ir kiekviena puslapio navigacija sekama automatiškai.

Privatumas ir atitiktis

ClearAnalytics sukurta su privatumu centre. Sekimo scenarijus renka tik anoniminius, agreguotus duomenis. Jokie asmeniniai duomenys niekada nesaugomi ir neperduodami.

Jokių slapukų

Scenarijus nenustato, neskaito ir nepriklauso nuo jokių naršyklės slapukų. Slapukų sutikimo juosta nereikalinga.

Jokio skaitmeninio atpažinimo

Mes niekada nekuriame naršyklės atspaudų. Nenaudojamos canvas, WebGL, šriftų ar garso atpažinimo technikos.

Jokio IP saugojimo

Lankytojų IP adresai naudojami tik anonimizuotam maišos kodui užklausos metu. Jie niekada nesaugomi duomenų bazėje.

Atitinka GDPR

Kadangi asmeniniai duomenys nerenkami, ClearAnalytics nepatenka į GDPR sutikimo reikalavimus. Visi duomenys lieka ES.

Kaip anonimizuojame lankytojus

Norėdami skaičiuoti unikalius lankytojus nesaugodami asmeninių duomenų, naudojame kasdien besikeičiantį anoniminį maišos kodą:

  • Lankytojo IP adresas ir User-Agent derinami su kasdien besikeičiančia druska.
  • Šis derinys maišomas vienkrypčiu SHA-256 algoritmu.
  • Druska keičiasi kas 24 valandas, todėl neįmanoma sekti lankytojų tarp dienų.
  • Pradinis IP adresas niekada nesaugomas ir neregistruojamas.

Scenarijaus renkami duomenys

Su kiekvienu puslapio peržiūros įvykiu siunčiami šie neasmeniniai duomenų laukai:

Laukas Paskirtis
pathnameLankomos puslapio URL kelio dalis.
referrerNukreipiančio puslapio URL, jei yra.
languageNaršyklės kalbos nustatymas.
screen_width / screen_heightEkrano matmenys įrenginio tipo klasifikavimui.
utm_*Kampanijos sekimo parametrai iš URL.
durationLaikas, praleistas puslapyje sekundėmis.

Kadangi ClearAnalytics niekada nerenka asmeninių duomenų, jums nereikia slapukų sutikimo juostos, privatumo iššokančio lango ar opt-in mechanizmo naudojant mūsų sekimo scenarijų. Jis iškart atitinka GDPR, ePrivacy, PECR ir CCPA.