Událost purchase je doporučená událost GA4, která zaznamenává dokončený nákup včetně čísla objednávky, částky, měny a zakoupených položek. Je zdrojem tržeb v přehledech GA4 a obvykle hlavní klíčovou událostí e-shopu.
Na děkovné stránce web zavolá: dataLayer.push({'event': 'purchase', 'ecommerce': {'transaction_id': 'OBJ-2026-0418', 'value': 2620, 'currency': 'CZK', 'shipping': 99, 'items': [{'item_id': 'K-12', 'item_name': 'Keramický hrnek', 'price': 690, 'quantity': 2}, {'item_id': 'C-03', 'item_name': 'Konvice', 'price': 1240, 'quantity': 1}]}}); Value je 2 × 690 + 1 240 = 2 620 Kč, doprava 99 Kč jde zvlášť.
Podle dokumentace Googlu má purchase povinné parametry transaction_id a items, value a currency jsou povinné pro výpočet tržeb a currency musíte poslat vždy, když posíláte value, ve formátu ISO 4217 (CZK). Value je součet cena × množství všech položek bez dopravy a daně, ty patří do parametrů shipping a tax. Volitelně přidáte coupon a customer_type s hodnotou new nebo returning, kterou ale nevyplňujte, pokud si nejste jistí, třeba u nákupu bez registrace. GA4 vyřadí duplicitní nákupy se stejným transaction_id od stejného uživatele, funguje to však jen u webových streamů. Prázdný řetězec jako transaction_id neposílejte: GA4 by všechny takové nákupy sloučil do jednoho. Vrácení peněz posíláte událostí refund se stejným transaction_id. Pro Metu má standardní událost Purchase povinné value a currency.
Časté chyby
- Odeslání purchase při každém obnovení děkovné stránky bez transaction_id, takže se objednávky počítají vícekrát.
- Chybějící currency, kvůli které GA4 tržby správně nespočítá.
- Jiný výpočet value v GA4 a v konverzní značce Google Ads, takže se tržby v obou nástrojích liší.