← Grįžti į blogą

„Cloudflare Zaraz“ ar savas „Worker“: serverinė GA4 analitika be gtag.js

2026-10-15 · Techninė analizė

Įsivaizduokite: potencialus klientas su „iPhone“ sekmadienį skaito Jūsų paslaugų puslapį, o užklausą pateikia tik po aštuonių dienų. „Google Analytics“ ataskaitoje jis jau naujas žmogus, atėjęs „iš niekur“.

Taip nutinka dėl „Apple“ ITP (Intelligent Tracking Prevention) [1], o reklamų blokatoriai dalies lankytojų neparodo visai. Jei svetainė jau eina per „Cloudflare“, yra trys būdai tai spręsti. Šiame straipsnyje juos palyginame – nuo greičiausio iki patikimiausio.

Trumpas atsakymas

  • „Google Tag Gateway“ – vienas paspaudimas, bet „Safari“ problemos neišsprendžia. Atmetame.
  • „Cloudflare Zaraz“ – geras ir greitas sprendimas be kodo. Įdiegsite patys per 15 minučių.
  • Savas „Cloudflare Worker“ – patikimiausias: ilgaamžis slapukas „Safari“, reklamų blokatorių sąrašuose nėra, sutikimas tikrinamas serveryje. Reikia kodo ir priežiūros.

1. Kodėl GA4 „pameta“ lankytojus

„Safari“ ITP riboja slapukus, kuriuos sukuria JavaScript (document.cookie): jie galioja ne ilgiau kaip 7 dienas [1], o atėjus per dekoruotą reklamos nuorodą (pvz., ?gclid=) – tik 24 valandas [2]. Standartinis gtag.js savo _ga slapuką kuria būtent taip. Nuo „Safari 16.4“ 7 dienų riba taikoma ir serverio nustatytiems slapukams, jei serverio IP nesutampa su svetainės IP [3]. ITP veikia visuose „iPhone“ ir „iPad“ naršyklėse, nes jos naudoja „WebKit“.

Reklamų blokatoriai blokuoja užklausas į google-analytics.com ir googletagmanager.com. Techninėje auditorijoje (IT, kūrėjai, saugumo specialistai) blokatorių dalis didelė, todėl B2B svetainėse nuostolis būna ypač juntamas.

Taisyklė paprasta: ilgaamžis gali būti tik slapukas, kurį HTTP antrašte Set-Cookie nustato serveris, turintis tą patį IP kaip svetainė, o kad blokatoriai netrukdytų, užklausos turi eiti į jūsų domeną ir nepatekti į blokavimo sąrašus.

2. „Google Tag Gateway“: greita, bet nepakanka

„Google Tag Gateway“ – nemokama „Cloudflare“ funkcija: gtag.js ir matavimo užklausos keliauja per jūsų domeno kelią (pvz., /okp0), o „Cloudflare“ jas persiunčia „Google“ [4]. Įjungiama vienu paspaudimu ir sumažina dalies blokatorių poveikį.

Tačiau gtag.js lieka naršyklėje, o _ga slapuką vis tiek rašo JavaScript. Vadinasi, „Safari“ 7 dienų riba niekur nedingsta. Patys šį variantą išbandėme ir atmetėme: jis sprendžia tik pusę problemos.

3. „Cloudflare Zaraz“: geras sprendimas, kurį įdiegsite patys

„Zaraz“ – „Cloudflare“ žymų valdymo įrankis, kuris trečiųjų šalių įrankius (GA4, „Google Ads“, „Meta“, „LinkedIn“ ir kt. [16]) vykdo „Cloudflare“ serveriuose, o ne lankytojo naršyklėje. Puslapyje lieka tik nedidelis /cdn-cgi/zaraz/i.js skriptas iš jūsų domeno, o gtag.js nebekraunamas.

Kodėl „Zaraz“ verta dėmesio

Kaip įdiegti per 15 minučių

  1. Pašalinkite iš svetainės gtag.js / GTM kodą (kitaip duomenys dubliuosis).
  2. „Cloudflare“ skydelyje atidarykite Zaraz → Tools configuration → Add new tool → Google Analytics 4 ir įrašykite matavimo ID (G-…).
  3. Zaraz → Consent įjunkite sutikimo langą ir GA4 priskirkite analitikos tikslui.
  4. Užklausų formai sukurkite Form submission trigerį ir siųskite generate_lead įvykį (arba kode: zaraz.track('generate_lead')).
  5. Patikrinkite „GA4 Realtime“ ataskaitą.

Ką verta žinoti prieš renkantis

Išvada: jei norite greitai ir patys, o „Safari“ ar blokatorių nuostoliai nėra kritiniai, „Zaraz“ – geresnis pasirinkimas nei įprastas gtag.js ar „Tag Gateway“.

4. Spąstai rašant savo sprendimą: Measurement Protocol

Natūralu manyti, kad savam serveriui reikia oficialaus GA4 Measurement Protocol (MP). Taip pradėjome ir mes. Po paros GA4 ataskaitose visos naujos sesijos buvo „Unassigned“, naujų naudotojų – 0, įsitraukusių sesijų – 0.

Priežastis – pačioje „Google“ dokumentacijoje: MP skirtas papildyti gtag.js duomenis (pvz., serveryje užfiksuotu apmokėjimu), o ne juos pakeisti [13]. Srauto šaltinį, naujus naudotojus ir įsitraukimą GA4 skaičiuoja tik iš įprastų gtag.js užklausų. Todėl veikiantis serverinis sprendimas siunčia tokias pat užklausas kaip gtag.js (į /g/collect) – taip daro ir „Zaraz“, ir serverinis „Google Tag Manager“.

5. Savas „Cloudflare Worker“: patikimiausias variantas

Idėja: naršyklėje lieka tik keli kilobaitai jūsų pačių JavaScript, kuris siunčia įvykį į jūsų endpoint'ą. Tame pačiame domene veikiantis „Worker“ nustato slapukus ir persiunčia duomenis GA4.

Naršyklė                         Jūsų domenas (Cloudflare)               Google
analytics.js ── POST /api/metrics ──► Worker
 (be gtag.js)                          ├─ sutikimo nėra? ──► 204, nieko nesaugoma
                                       ├─ Set-Cookie: __av_cid (400 d., HttpOnly)
                                       ├─ Set-Cookie: __av_sid (30 min., HttpOnly)
                                       └─ fetch ───────────────────────────► GA4 /g/collect

Kaina: tai kodas, kurį reikia prižiūrėti. /g/collect – nedokumentuotas adresas (juo remiasi pats gtag.js, todėl staigūs pakeitimai mažai tikėtini). Įvykius (pvz., generate_lead) reikia aprašyti kode, o reklamos pikseliams reikės atskiro sprendimo.

Savo sprendimą paskelbėme kaip atvirojo kodo projektą avbdar (MIT licencija) [15]: „Worker“, naršyklės klientas, „CookieConsent“ langas (LT ir EN), testai ir dokumentacija. Jį naudojame ir šioje svetainėje.

6. Palyginimas

„Tag Gateway“ „Zaraz“ Savas „Worker“
Diegimas 1 paspaudimas ~15 min., be kodo Kodas ir konfigūracija
gtag.js naršyklėje Taip Ne Ne
„Safari“ slapuko galiojimas 7 d. (24 val. iš reklamos) Nedokumentuota Iki 400 d.
„EasyPrivacy“ / „uBlock Origin“ Iš dalies Blokuojama Neblokuojama
Lankytojo IP „Google“ Pagal nustatymą Pagal nutylėjimą perduodamas Neperduodamas
Sutikimo tikrinimas Naršyklėje „Zaraz“ CMP, TCF, Consent Mode Serveryje
Įvykiai be kodo Per GTM Taip Ne
Reklamos pikseliai „Google“ Daugelis platformų Tik GA4
Kaina Nemokama 1 mln. įvykių/mėn. nemokamai Nemokama („Workers Free“)
Priežiūra „Google“ / „Cloudflare“ „Cloudflare“ Jūs arba partneris

7. Ką rinktis

Pasidarykite patys arba deleguokite mums

Kodas ir instrukcijos – avbdar „GitHub“. Jei norite, kad tai padarytume už Jus: įdiegsime „Worker“ Jūsų „Cloudflare“ zonoje, sukonfigūruosime sutikimą ir GA4 (pagrindinius įvykius, užklausų formas), o rezultatą patikrinsime „Safari“ naršyklėje.

Registruotis konsultacijai

8. Serverinė analitika nėra sutikimo apėjimas

Dažnas klausimas: „jei duomenys eina per mano serverį, ar galiu rinkti juos be slapukų pranešimo?“ Ne. Pagal BDAR ir Elektroninių ryšių įstatymo 61 straipsnį nebūtinų slapukų ar kitų identifikatorių saugojimui įrenginyje reikia išankstinio, informuoto ir aktyvaus sutikimo, nesvarbu, ar duomenys keliauja per naršyklę, ar per serverį. Tai galioja ir „Zaraz“, ir savam „Worker“. Privatumo politikoje nurodykite slapukus ir aprašykite duomenų perdavimą „Google“.

Dažni klausimai

Ar „Cloudflare Zaraz“ nemokamas?

Kiekviena „Cloudflare“ paskyra kas mėnesį gauna 1 000 000 nemokamų „Zaraz“ įvykių. Viršijus limitą, kiekvienas papildomas milijonas kainuoja 5 USD per mėnesį [5].

Kodėl GA4 rodo „Unassigned“?

Dažniausia priežastis serveriniuose sprendimuose – įvykiai siunčiami tik per Measurement Protocol, kuris skirtas papildyti gtag.js, o ne jį pakeisti [13]. Žr. 4 skyrių.

Ar galima naudoti „Zaraz“ ir savą „Worker“ kartu?

Taip. GA4 siųskite per savą „Worker“, o reklamos pikselius valdykite per „Zaraz“. Svarbu, kad GA4 nebūtų įjungtas abiejose vietose, kitaip duomenys dubliuosis.

Ar savas „Worker“ kainuoja?

Mažoms ir vidutinėms svetainėms – ne: nemokamas „Cloudflare Workers“ planas leidžia 100 000 užklausų per dieną. Pagrindinė kaina – diegimo ir priežiūros laikas.

Šaltiniai

  1. WebKit.org — Intelligent Tracking Prevention 2.1 (7 dienų slapukų riba)
  2. WebKit.org — Intelligent Tracking Prevention 2.2 (24 valandų riba)
  3. WebKit.org — Tracking Prevention in WebKit
  4. Cloudflare Docs — Google tag gateway for advertisers
  5. Cloudflare Docs — Zaraz pricing
  6. Cloudflare Docs — Zaraz triggers and rules
  7. Cloudflare Docs — Zaraz consent management
  8. Cloudflare Docs — Zaraz Google Consent Mode
  9. Cloudflare Docs — Zaraz FAQ (Hide Originating IP)
  10. EasyList — EasyPrivacy filtrų sąrašas (versija 202610151533)
  11. GitHub — Zaraz GA4 managed component, requestBuilder.ts
  12. Google Analytics Help — Engagement rate and bounce rate
  13. Google for Developers — Measurement Protocol (Google Analytics 4)
  14. Cloudflare Docs — Zaraz changelog
  15. GitHub — avbdar: serverinė GA4 analitika per „Cloudflare Workers“
  16. Cloudflare Docs — Zaraz supported tools

Reikia pagalbos su „Cloudflare“ ir analitikos konfigūracija?

Peržiūrėsime Jūsų „Cloudflare“ zoną, analitikos diegimą, sutikimo valdymą ir „Safari“ slapukų galiojimą. Pasakysime, ką galite pasitaisyti patys, o kur verta pasitelkti pagalbą.

Registruotis konsultacijai