Saytınıza GA4 və ya Google Ads teqi qurulanda brauzer həmin teqi
googletagmanager.com ünvanından yükləyir. Bu ünvan başqa bir domendir,
yəni üçüncü tərəfdir.
Google tag gateway bunu dəyişir: teq sizin öz domeninizdən yüklənir. Ziyarətçinin brauzeri Google-a deyil, sizin sayta müraciət edir.
Google ilk sınaqlarda orta hesabla 11% siqnal artımı bildirir. Bu Google-un öz rəqəmidir; sizin saytınızda nə çıxacağını ölçmədən demək olmaz.
Niyə lazımdır
Üç səbəb var və üçü də ölçülə bilir.
Reklam bloklayıcılar. Bir çox bloklayıcı siyahısı googletagmanager.com
ünvanını tanıyır və sorğunu dayandırır. Teq öz domeninizdən gələndə bu
siyahılar onu tanımır.
Brauzer məhdudiyyətləri. Safari və digər brauzerlər üçüncü tərəf konteksti ilə yazılan kukiləri qısaldır. Birinci tərəf kontekstində vəziyyət yaxşılaşır.
Şəbəkə səviyyəsində əngəllər. Bəzi korporativ şəbəkələr və DNS filtrləri Google domenlərini bağlayır. Sayt açılır, ölçmə işləmir.
Nəticə hər üç halda eynidir: satış baş verir, hesabatda görünmür.
Bu, ölçmənin özünü düzəltmir. Konversiya səhv qurulubsa, gateway səhv datanı daha etibarlı şəkildə daşıyır. Əvvəl qurulumu düzəldin.
Server-side konteyner ilə eyni şey deyil
Bunlar tez-tez qarışdırılır.
Server-side GTM-də ayrıca bir server işlədirsiniz: aylıq xərci və baxımı olan bir xidmət. Teqlər orada işlənir.
Tag gateway-də belə bir server yoxdur. CDN-iniz müəyyən bir yol prefiksinə gələn sorğuları Google-un ünvanına ötürür. Sizin infrastrukturunuzda işləyən kod yoxdur, emal olunan data yoxdur. Sadəcə yönləndirmə var, ona görə də əlavə server xərci yoxdur.
Bütün provayderlərdə eyni beş addım
İnterfeys fərqlidir, iş eynidir.
- Yol uyğunlaşdırma/olcme/* sorğularını tut
- Origin / backendG-XXXXX.fps.goog ünvanına göndər
- Host başlığıOrigin adı ilə əvəz et
- Coğrafiya başlıqlarıÖlkə, region və məkan ötür
- KeşBağla, ölçmə sorğusu keşlənmir
- sahə uyğunlaşıb
- sahə boş və ya təyin edilməyib
G-XXXXX sizin GA4 ölçmə identifikatorunuzdur. Yol prefiksini özünüz
seçirsiniz, amma iki qayda var: kök yol (/) işlənmir və seçdiyiniz
yol saytda boş olmalıdır. Mövcud bir yolu seçsəniz o səhifə açılmaz.
Provayderə görə addımlar
Cloudflare
Ən qısası budur. Azərbaycanda saytların əksəriyyəti Cloudflare-dədir, ona görə çox güman sizin halınız da budur.
- CNAME qeydi:
fps→G-XXXXX.fps.goog - Origin Rule, uyğunluq ifadəsi:
(http.host eq "sizinsayt.az" and starts_with(http.request.uri.path, "/olcme"))
Qaydada Host başlığını G-XXXXX.fps.goog kimi yenidən yazın.
- Ayarlarda Add visitor location headers açılır. Bu addım buraxılsa coğrafiya yoxlaması uğursuz olur.
Google Cloud
External Application Load Balancer üzərindən qurulur: Internet network
endpoint group yaradılır (FQDN G-XXXXX.fps.goog, qlobal), sonra
measurement-be-svc adlı backend service əlavə olunur və sorğu
başlıqları təyin edilir:
Host: G-XXXXX.fps.goog
X-Forwarded-CountryRegion: {client_region_subdivision}
X-Forwarded-Geolocation: latlong={client_city_lat_long};city={client_city}
Yönləndirmə qaydası: host *, yol /olcme/*, backend
measurement-be-svc.
Amazon CloudFront
Bir origin, bir behavior. Origin domeni G-XXXXX.fps.goog, protokol
HTTPS Only.
Behavior-da diqqət tələb edən ayarlar: yol şablonu /olcme/*,
Compress objects automatically = No, Cache policy =
CachingDisabled, Origin request policy = AllViewerExceptHostHeader,
icazə verilən metodlar GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE.
Sonuncu vacibdir: standart behavior yalnız GET və HEAD buraxır, POST ilə gedən ölçmə sorğuları düşür.
Akamai
Property konfiqurasiyasına yeni versiya açılır. Qayda adı
Route measurement, uyğunluq Path = /olcme/*, Origin Server
Hostname G-XXXXX.fps.goog, Forward Host Header ayarı
Origin Hostname olur.
Coğrafiya üçün Content Targeting (EdgeScape) davranışı əlavə edilir
və Enable dəyəri true edilir.
Fastly
Burada əl ilə kod yazılır. Condition tipi Request, şərt
req.url.path ~ "^/olcme". Host fps.goog, Override host eyni
dəyərə qoyulur.
Sonra iki VCL parçası əlavə olunur, ikisi də eyni kodu daşıyır: biri
vcl_miss, biri vcl_pass içinə.
set bereq.http.X-Gtg-Tag-Id = "G-XXXXX";
set bereq.http.X-Forwarded-Country = client.geo.country_code;
set bereq.http.X-Forwarded-Region = client.geo.region;
İkisinin də əlavə edilməsi lazımdır. Yalnız vcl_miss qoyulsa keşi
keçən sorğular başlıqsız gedir.
Yoxlama: iki ünvan
Qurulum bitəndən sonra Google-un iki yoxlama ünvanı var. İkisi də düz
mətn ok qaytarır.
https://sizinsayt.az/olcme/healthy
https://sizinsayt.az/olcme/?validate_geo=healthy
Birincisi ok verib ikincisi verməsə, yönləndirmə işləyir amma məkan
başlıqları ötürülmür: Cloudflare-də "Add visitor location headers",
Akamai-də EdgeScape, Fastly-də VCL parçaları çatışmır.
Ən çox buraxılan addım
Qurulum bitdi, iki ünvan da ok verir. Amma saytın teq yükləyicisi hələ
də köhnə ünvanı çağırır:
j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl;
Bu halda gateway quruludur və heç kim ondan istifadə etmir. Konteyner Google-dan yüklənir, ölçmə sorğuları da Google-a gedir. Yoxlama yaşıl görünür, qazanc sıfırdır.
Düzəlişi bir sətirdir: yükləyicidəki ünvan öz yolunuza dönür.
j.src = '/olcme/gtm.js?id=' + i + dl;
Lokal işləyəndə o yol olmadığına görə dəyəri mühit dəyişənindən oxuyun
və boş olanda googletagmanager.com ünvanına düşürün.
Şəbəkə tabında nə görünməlidir
Brauzerdə Inspect, sonra Network tabı, səhifəni yeniləyin.
- googletagmanager.com/gtm.jskonteyner
- region1.analytics.google.com/g/collectGA4 hit
- www.google.com/ccm/collectAds konversiya
- sizinsayt.az/olcme/gtm.jskonteyner
- googletagmanager.com/gtm.js?gtg_health=1sağlamlıq yoxlaması
- region1.analytics.google.com/g/collectGA4 hit
gtg_health=1 sorğusu normaldır, silinmir: teq gateway-in ayaqda olub
olmadığını oradan öyrənir.
Üçüncü sətir hələ də qırmızıdır. Konteyner birinci tərəfdən gəlir, amma içindəki teqlər köhnə ünvana göndərməyə davam edir. Yol bunu daşıya bilir, infrastrukturda çatışmazlıq yoxdur:
- /olcme/healthy200 · ok
- /olcme/?validate_geo=healthy200 · ok
- /olcme/g/collect204
- /olcme/gtag/js200 · konteyner
Bu mərhələdə növbə CDN-də deyil, GTM tərəfindədir: konteyneri yenidən dərc etmək və Google teqinin ayarlarını yoxlamaq lazımdır. İnfrastrukturu qurub konteyneri dərc etməyi unutmaq bu qurulumun ən çox ilişdiyi yerdir.
Beş maddəlik yoxlama
Qurulumun bitdiyini heç bir ekran sizə demir. Bu beş maddəni bir-bir keçin; hamısı düzgündürsə gateway həqiqətən data daşıyır.
- Harada
- Brauzerdə /olcme/healthy ünvanını açın.
- Düzgün cavab
- Ekranda düz mətn kimi ok yazılır, başqa heç nə görünmür.
- Səhvdirsə
- 404 və ya saytınızın öz səhifəsi qayıdırsa CDN qaydası sorğunu tutmur: yol prefiksi səhv yazılıb və ya qayda deaktivdir.
- Harada
- /olcme/?validate_geo=healthy ünvanını açın.
- Düzgün cavab
- Yenə ok qayıdır.
- Səhvdirsə
- Birinci maddə keçib bu keçmirsə məkan başlıqları çatışmır: Cloudflare-də Add visitor location headers bağlıdır, Akamai-də EdgeScape əlavə edilməyib, Fastly-də VCL parçaları yoxdur və ya yalnız biri var.
- Harada
- Inspect, Network tabı, səhifəni yeniləyin və gtm.js axtarın.
- Düzgün cavab
- Sorğu öz domeninizə gedir. googletagmanager.com sətri yalnız gtg_health=1 parametri ilə görünür, o sağlamlıq yoxlamasıdır.
- Səhvdirsə
- gtm.js hələ də googletagmanager.com üzərindən gəlirsə yükləyicidəki ünvan dəyişməyib. Gateway quruludur, amma dövrədə deyil.
- Harada
- Tag Manager, sağ yuxarıdakı Submit və versiya tarixçəsi.
- Düzgün cavab
- Yükləyici dəyişikliyindən sonra alınmış versiya var.
- Səhvdirsə
- Son versiya qurulumdan köhnədirsə teqlər köhnə konfiqurasiya ilə işləyir: konteyner birinci tərəfdən gəlir, amma teqlər ölçməni yenə Google ünvanına göndərir.
- Harada
- GA4, Hesabatlar, Real vaxt. Başqa cihazdan saytı açın.
- Düzgün cavab
- Öz ziyarətiniz otuz saniyə ərzində siyahıda görünür.
- Səhvdirsə
- Network tabında sorğu 200 qaytarıb GA4-də heç nə görünmürsə problem gateway-də deyil, ölçmə identifikatorunda və ya razılıq vəziyyətindədir.
Beşinci maddə niyə sonda: ilk dördü infrastrukturu yoxlayır, beşincisi nəticəni. İnfrastruktur düzgün olduğu halda beşinci maddə keçmirsə gateway-ə toxunmayın, ölçmə tərəfinə baxın.
Nəyi həll etmir
| Həll edir | Həll etmir | |
|---|---|---|
| Sorğu bloklanması | Domenə görə bloklanma azalır | Yol adına görə bloklayan siyahılar yenə bloklayır |
| Kuki ömrü | Kuki birinci tərəf kontekstində yazılır | Safari ITP birinci tərəf kukilərini də məhdudlaşdırır |
| Razılıq | Qurulumdan asılı olmadan işləyir | Consent Mode-u əvəz etmir, icazəsiz ölçmə etmir |
| Data keyfiyyəti | Çatan siqnal sayı arta bilər | Səhv qurulmuş konversiyanı düzəltmir |
Sonuncu sətir ən vacibidir. Konversiyanız real satışla uyğun gəlmirsə, əvvəl oranı düzəldin.
Bir də sənədləşdirilmiş məhdudiyyət var: <noscript> hissəsi
dəstəklənmir. GTM-in <noscript> iframe-i www.googletagmanager.com
ünvanında qalır.
Sıra
- Yol prefiksini seçin, saytda boş olduğuna əmin olun
- CDN-də yönləndirməni və coğrafiya başlıqlarını qurun
- İki yoxlama ünvanını çağırın, ikisi də
okverməlidir - Yükləyicidəki ünvanı öz yolunuza çevirin
- Network tabında host siyahısını yoxlayın
- GTM konteynerini yenidən dərc edin
- GA4-də real vaxt hesabatında hadisələrin gəldiyini görün
Dördüncü addımı buraxsanız, birincidən üçüncüyə qədər gördüyünüz iş yoxlamada yaşıl görünür və heç bir fayda vermir.