Instalat greșit, Google Tag Manager pe Shopify îți poate dubla conversiile raportate sau le poate pierde complet. Configurarea corectă presupune un singur snippet GTM, excluderea paginilor de checkout din scripturi conflictuale și un layer de date curat, legat direct de evenimentele Shopify. Fără asta, deciziile de buget se iau pe cifre false.
De ce Shopify și GTM se înțeleg greu de la sine
Shopify are propriul sistem de tracking inclus: Shopify Pixel, Customer Events API și integrări native cu Google și Meta. Problema apare când adaugi GTM deasupra acestuia fără să coordonezi cele două sisteme. Ajungi cu două surse care raportează același eveniment: o achiziție înregistrată o dată de Shopify Pixel și o dată de tag-ul de conversie Google Ads din GTM, de exemplu.
Pe piața românească, un număr semnificativ de magazine Shopify (estimativ 30 la sută din cele cu buget de ads activ) rulează tracking dublu fără să știe. Semnalul cel mai comun: ROAS-ul raportat în Google Ads este de 2 ori mai mare decât cel calculat manual din vânzările reale. Un retailer de fashion din București care a descoperit această problemă în 2025 a coborât bugetul de Google Ads de la 15.000 lei/lună la 7.000 lei, păstrând același număr de comenzi reale, pentru că optimizarea automată a campaniilor se baza pe semnale false.
Cauza structurală: Shopify injectează codul de conversie Google Ads pe pagina /thank_you prin conectorul nativ din admin (Online Store → Preferences → Google). Dacă adaugi și un tag de conversie în GTM declanșat pe același URL, ai dublare garantată.
Cum instalezi GTM corect pe un magazin Shopify
Există două locuri unde trebuie plasat snippet-ul GTM pe Shopify, și ordinea contează.
1. Theme-ul (head + body): în theme.liquid, inserezi fragmentul <head> imediat după <head> și fragmentul <body> imediat după <body>. Aceasta acoperă toate paginile publice: homepage, colecții, pagini de produs, coș.
2. Checkout și pagina de mulțumire: din versiunea Shopify Plus poți edita checkout.liquid. Pe planurile standard (Basic, Shopify, Advanced), poți injecta scripturi în checkout doar prin secțiunea "Additional scripts" din Settings → Checkout, sau prin Customer Events API disponibil din 2023 pe orice plan. Acesta din urmă este metoda recomandată în 2025 pentru că rulează în sandbox și nu interferează cu performanța checkout-ului.
Pașii concreți:
- Creezi un cont GTM și un container nou (tipul "Web").
- Adaugi snippet-urile în
theme.liquidvia Shopify CLI sau direct din theme editor (Actions → Edit code). - Dezactivezi TOATE conectivitățile native din Shopify care duplică taguri: Google & YouTube app, Facebook & Instagram app, dacă ai de gând să gestionezi acele taguri manual din GTM.
- Verifici că nu există scripturi hardcodate în
theme.liquidsau în Additional Scripts care să mai trimită conversii direct.
Un detaliu critic pe care mulți îl ratează: Shopify Plus adaugă automat un script de remarketing Google pe toate paginile dacă ai conectat Google Ads nativ. Îl poți vedea în sursa paginii ca gtag('config', 'AW-XXXXXXXXXX'). Dacă ai același ID și în GTM, trimite de două ori.
Configurarea Data Layer pentru Shopify: ce variabile ai nevoie
Data layer-ul este stratul de date care face comunicarea între Shopify și GTM. Fără un data layer configurat, GTM nu știe ce se întâmplă pe site: ce produs a văzut utilizatorul, ce a adăugat în coș, ce valoare a avut comanda.
Shopify nu populează un data layer standard în mod nativ. Trebuie să îl construiești tu, fie manual prin scripturi Liquid, fie folosind o aplicație dedicată (DataLayer app, Elevar, littledata).
Un data layer minimal pentru ecommerce conține aceste events:
view_itempe paginile de produs (cuitem_id,item_name,price,currency)add_to_cartla click pe "Adaugă în coș"begin_checkoutla intrarea în checkoutpurchasepe pagina de confirmare, cutransaction_id,value,currency,items[]
Exemplu de snippet Liquid pentru view_item, plasat în product.liquid:
<script>
window.dataLayer = window.dataLayer || [];
window.dataLayer.push({
event: 'view_item',
ecommerce: {
currency: '{{ shop.currency }}',
value: {{ product.selected_or_first_available_variant.price | money_without_currency | remove: ',' }},
items: [{
item_id: '{{ product.selected_or_first_available_variant.sku }}',
item_name: '{{ product.title | escape }}',
item_category: '{{ product.type | escape }}',
price: {{ product.selected_or_first_available_variant.price | money_without_currency | remove: ',' }}
}]
}
});
</script>
Pe pagina de confirmare a comenzii (order-status.liquid sau Additional Scripts), evenimentul purchase trebuie să folosească {{ checkout.order_id }} ca transaction_id pentru a preveni deduplicarea comenzilor recomenzite sau reîncărcate de utilizatori.
Cel mai frecvent punct de pierdere: checkout-ul Shopify
Checkout-ul Shopify rulează pe un domeniu controlat de Shopify (checkout.shopify.com sau domeniul propriu cu Shopify Plus), nu pe domeniul tău. Pe planurile non-Plus, nu ai acces complet la HTML-ul paginilor de checkout. Asta înseamnă că GTM nu se poate încărca acolo dacă nu îl adaugi explicit prin metodele permise.
Consecința: dacă un utilizator adaugă în coș, intră în checkout și finalizează comanda, ai doar evenimentul add_to_cart în data layer, dar îți lipsesc begin_checkout și purchase. Raportezi parțial sau deloc.
Soluția pentru magazinele non-Plus în 2025 este Customer Events API (Settings → Customer events → Add custom pixel). Acesta permite să rulezi cod JavaScript în contextul checkout-ului, în sandbox, și să trimiți manual evenimente GTM sau direct spre GA4/Google Ads. Codul rulează asincron și nu poate bloca checkout-ul, ceea ce îl face sigur. Un pixel custom simplu arată astfel:
analytics.subscribe('checkout_completed', (event) => {
const order = event.data.checkout;
window.dataLayer = window.dataLayer || [];
window.dataLayer.push({
event: 'purchase',
ecommerce: {
transaction_id: order.order.id,
value: parseFloat(order.totalPrice.amount),
currency: order.totalPrice.currencyCode,
items: order.lineItems.map(item => ({
item_id: item.variant.sku,
item_name: item.title,
quantity: item.quantity,
price: parseFloat(item.variant.price.amount)
}))
}
});
});
Dacă ai Shopify Plus, poți edita checkout.liquid direct și inserezi snippet-ul GTM acolo, exact ca în theme.liquid.
Deduplicarea: cum eviți să numeri aceeași conversie de două ori
Deduplicarea este problema nr. 1 în tracking-ul Shopify avansat. Există trei surse principale de dublare:
Sursa 1: Reîncărcarea paginii de confirmare. Un utilizator dă refresh pe /thank_you. Dacă evenimentul purchase se declanșează la orice încărcare a acelei pagini, comanda apare de două ori. Soluția: folosești transaction_id în Google Ads și activezi opțiunea "Count" la "One" (nu "Every") în setările acțiunii de conversie. În GA4, deduplicarea se face automat pe transaction_id dacă îl trimiți corect.
Sursa 2: Conectori nativi Shopify activi simultan cu GTM. Dacă Google Ads este conectat nativ din Shopify admin (prin Google & YouTube app) ȘI ai un tag de conversie în GTM pentru același ID de conversie, ai dublare structurală. Dezactivezi unul sau celălalt, nu pe amândouă.
Sursa 3: Întârzieri de redirecționare. Pe unele teme, redirecționarea către /thank_you se face înainte ca scripturile de pe pagina de confirmare să se încarce complet. Dacă folosești un tag GTM cu trigger pe Page View, se poate declanșa înainte ca data layer-ul să fie populat, iar evenimentul purchase ajunge fără parametri sau nu ajunge deloc. Soluția: trigger pe evenimentul purchase din data layer, nu pe Page View.
Poți verifica rapid starea tracking-ului tău cu extensia de Chrome "Tag Assistant Companion" de la Google sau cu GTM Preview mode. Pentru un audit mai detaliat al performanței magazinului, analytics-ul pentru antreprenori și metricile GA4 acoperă întregul tablou de bord, nu doar tracking-ul tehnic.
Taguri specifice pentru piața românească: Facebook Pixel, TikTok, retargeting
Pe lângă Google Ads și GA4, un magazin românesc activ rulează de obicei cel puțin Meta Pixel și adesea TikTok Pixel. GTM simplifică gestionarea lor, dar introduce propriile riscuri de coliziune.
Meta Pixel prin GTM vs. integrare nativă Shopify: Facebook & Instagram app din Shopify instalează Pixel-ul nativ și folosește Conversions API server-side simultan. Dacă muți Pixel-ul în GTM și dezactivezi app-ul, pierzi Conversions API, care în 2025 este esențial pentru atribuire după iOS 14+. Recomandarea corectă: păstrezi app-ul nativ pentru Conversions API, adaugi în GTM doar evenimentele custom pe care app-ul nu le trimite (ex: ViewContent cu parametri extins, Search). Evitați să aveți Pixel-ul browser atât în app cât și în GTM fără deduplicare pe event_id.
TikTok Pixel: TikTok app din Shopify este mai puțin matur și adesea merită gestionat complet din GTM pentru control mai fin. Poți folosi template-ul oficial "TikTok Pixel" din GTM Gallery. Evenimentele standard (ViewContent, AddToCart, CompletePayment) se mapează direct pe data layer-ul Shopify dacă l-ai configurat corect.
Remarketingul Google Ads: tag-ul de remarketing dinamic pentru Google necesită ecomm_prodid și ecomm_pagetype. Acestea trebuie populate în data layer pe fiecare tip de pagină: produs (ecomm_pagetype: 'product'), coș (ecomm_pagetype: 'cart'), confirmare (ecomm_pagetype: 'purchase'). Fără asta, listele de remarketing dinamic (RLSA, Display) nu funcționează corect, indiferent de câte conversii ai.
Un alt aspect relevant: dacă magazinul tău are trafic dar rata de conversie este slabă, problema poate fi dincolo de tracking. Articolul De ce magazinul tău Shopify nu vinde explorează cauzele din perspectiva UX și a paginii de produs.
Ce înseamnă pentru tine
Dacă rulezi ads pentru magazinul tău (Google Shopping, Search sau Meta), tracking-ul rupt înseamnă direct bani aruncați. Campaniile Smart Bidding și Performance Max se optimizează pe semnalele de conversie pe care le primesc: dacă primesc dubluri, licitează excesiv; dacă primesc jumătate din conversii, sub-licitează și lasă comenzi pe masă.
Un audit GTM de câteva ore poate scoate la iveală erori care costă zeci de procente din ROAS. Ordinea verificărilor: (1) Tag Assistant Preview pe pagina de confirmare, (2) Comparați conversiile din Google Ads cu comenzile reale din Shopify admin pe ultimele 30 zile, (3) Verificați dacă există ID-uri de conversie duplicate în taguri. Dacă diferența depășește 15 la sută în orice direcție, ai un tracking problem, nu un performance problem. Rezolvi tracking-ul înainte să schimbi bugetele sau strategia de licitare.
Un exemplu concret din 2025: un magazin de electronice din Cluj raporta 180 de conversii/lună în Google Ads la un ROAS de 6.2. Auditul a descoperit tracking dublu: 90 conversii reale, ROAS real de 3.1. Campania fusese scalată agresiv pe baza cifrelor false. Corectarea tracking-ului, urmată de recalibrarea bugetelor, a salvat efectiv 8.000 lei/lună cheltuiți inutil.
Mini-FAQ
Ce se întâmplă dacă instalez GTM fără să dezactivez conectivitățile native Shopify?
Cel mai probabil dublezi conversiile raportate în Google Ads și GA4. Shopify trimite deja evenimentele prin conectori proprii; dacă GTM trimite același eveniment cu același ID de conversie, platforma îl numără de două ori. Verifici întotdeauna ce este activ în Settings → Customer events și în Preferences înainte să activezi taguri în GTM.
Pot folosi GTM pe planul Basic Shopify, nu doar pe Plus?
Da. Pe orice plan Shopify adaugi snippet-ul GTM în theme.liquid pentru paginile publice. Pentru checkout și pagina de confirmare, folosești Customer Events API (Custom Pixel) din Settings → Customer events, disponibil pe toate planurile din 2023. Singura diferență față de Plus este că nu poți edita direct checkout.liquid.
Cum testez că tracking-ul funcționează corect după configurare?
Folosești GTM Preview mode (butonul Preview din container) împreună cu extensia Tag Assistant Companion în Chrome. Parcurgi un flux complet de comandă de test (Shopify are modul de test cu carduri fictive) și verifici că evenimentele view_item, add_to_cart, begin_checkout și purchase apar în Preview cu parametrii corecți. Compari apoi numărul de tranzacții din GA4 Realtime cu comenzile din Shopify admin în aceeași fereastră de timp.
Configurarea GTM pe Shopify nu este complicată dacă știi capcanele, dar face diferența între decizii bazate pe date reale și optimizări pe cifre false. La allsoftmedia.ro documentăm sistematic setup-urile tehnice pentru magazine Shopify românești, de la tracking corect până la Google Shopping în 2026, cu exemple concrete din proiecte reale de pe piața locală.
Comentarii
Ca sa lasi un comentariu, conecteaza-te sau fa-ti un cont gratuit.
Niciun comentariu inca. Fii primul.