# Měření konverzí Google Analytics 4, odesílání data do DataLayeru

> Jak měřit odeslání formuláře jako konverzi v GA4 — dostupné události, nastavení spouštěče a tagu v GTM a posílání vlastních dat do dataLayeru.

- **Zdroj:** https://www.webotvurci.cz/navody/kontaktni-formulare/mereni-konverzi-google-analytics-4-odesilani-data-do-datalayeru/
- **Doplněk / kategorie:** Kontaktní formuláře (https://www.webotvurci.cz/navody/kontaktni-formulare/)
- **Datum:** 2024-08-08
- **Autor:** Webotvůrci (https://www.webotvurci.cz/)

---

Doplněk **Kontaktní formuláře** má měření konverzí připravené rovnou v sobě. Po každém úspěšném odeslání formuláře automaticky odešle událost do `dataLayer`, na kterou stačí v Google Tag Manageru navázat spouštěč (trigger) a tag pro Google Analytics 4. Pro pokročilé scénáře navíc doplněk nabízí vlastní JavaScriptové události, na které se dá poslouchat přímo v kódu.

**V tomto článku:**

1. Automatické odesílání do dataLayeru
2. Dostupné události formuláře
3. Nastavení v Google Tag Manageru
4. Vlastní data do dataLayeru (pokročilé)
5. Krok za krokem

## Automatické odesílání do dataLayeru

Po úspěšném odeslání každého formuláře doplněk sám vloží do pole `window.dataLayer` následující událost. Nemusíte tedy psát žádný vlastní kód — základní měření funguje hned po instalaci.

```
window.dataLayer = window.dataLayer || [];

window.dataLayer.push({
    event: 'formSubmit',
    formName: 'w-form-<ID formuláře>'
});
```

Klíč `event` má vždy hodnotu `formSubmit` a podle něj se v GTM spouští trigger. Hodnota `formName` obsahuje konkrétní formulář ve tvaru `w-form-12` (kde `12` je ID formuláře) — díky tomu poznáte, který formulář byl odeslán, pokud jich máte na webu víc.

> **Tip:** ID formuláře najdete v administraci doplňku, případně v HTML stránky jako `id="wt-form-wrapper-12"`. Stejné číslo se objeví i v hodnotě `formName`.

## Dostupné události formuláře

Kromě zápisu do `dataLayer` doplněk vyvolává vlastní DOM události (`CustomEvent`) na objektu `document`. Na ty se dá poslouchat pomocí `document.addEventListener(...)` a využít je například pro vlastní měření, A/B testy nebo navazující logiku.

| Událost | Kdy se spustí | Obsah `event.detail` |
|---|---|---|
| `wtFormLoaded` | po vykreslení formuláře na stránce | `formId`, `formWrapper` |
| `wtFormSubmitSuccess` | po úspěšném odeslání formuláře | `formId`, `response` |
| `wtFormSubmitFail` | při chybě během odeslání | `formId`, `error` |

Automatický push do `dataLayer` z předchozí kapitoly je ve skutečnosti posluchač právě na událost `wtFormSubmitSuccess`.

## Nastavení v Google Tag Manageru

Aby se odeslání formuláře projevilo jako konverze v Google Analytics 4, propojte událost `formSubmit` z dataLayeru se spouštěčem a tagem v GTM.

### 1. Spouštěč (trigger) na vlastní událost

- V GTM zvolte Triggers → New → Custom Event.
- Do pole Event name zadejte přesně formSubmit.
- Spouštěč nechte na All Custom Events, nebo ho omezte podle proměnné formName na konkrétní formulář.

### 2. Proměnná pro název formuláře (volitelné)

Pokud chcete v reportech rozlišovat jednotlivé formuláře, vytvořte **Variables → New → Data Layer Variable** s názvem proměnné `formName`.

### 3. Tag pro Google Analytics 4

- Vytvořte tag typu Google Analytics: GA4 Event.
- Jako Event Name zvolte libovolný název (např. generate_lead nebo form_submit ).
- Volitelně přidejte parametr události, např. form_name s hodnotou {{formName}}.
- Jako spouštěč přiřaďte trigger formSubmit z kroku 1.

> **Ověření:** před publikací použijte **Preview / Tag Assistant** v GTM, odešlete testovací formulář a zkontrolujte, že se v záložce událostí objeví `formSubmit` a navázaný GA4 tag se spustil.

## Vlastní data do dataLayeru (pokročilé)

Když potřebujete do měření poslat víc než jen název formuláře, napište si vlastní posluchač na událost `wtFormSubmitSuccess` a vložte do `dataLayer` libovolnou strukturu. Kód umístěte do šablony e-shopu nebo do tagu typu *Custom HTML* v GTM.

```
document.addEventListener('wtFormSubmitSuccess', function (event) {
    window.dataLayer = window.dataLayer || [];

    window.dataLayer.push({
        event: 'formSubmitSuccess',
        formId: event.detail.formId
    });
});
```

> **Důležité:** v `event.detail` doplněk předává pouze `formId` a objekt `response` (odpověď serveru) — žádné osobní údaje vyplněné ve formuláři. Pro měření konverzí to plně stačí: poznáte, *že* a *který* formulář byl odeslán, aniž byste do měřicích nástrojů posílali cokoli citlivého.

## Krok za krokem

1. Ujistěte se, že máte na webu nasazený Google Tag Manager a doplněk Kontaktní formuláře s alespoň jedním formulářem.
2. V GTM vytvořte spouštěč typu Custom Event s názvem události formSubmit.
3. Přidejte tag GA4 Event a přiřaďte mu tento spouštěč; volitelně předejte {{formName}}.
4. Pro pokročilá data napište vlastní posluchač na wtFormSubmitSuccess a pushněte si vlastní strukturu do dataLayer.
5. Vše ověřte v režimu Preview a publikujte kontejner.

Díky tomu, že doplněk odesílá konverzi do `dataLayer` automaticky, máte základní měření odeslaných formulářů funkční během pár minut a přitom si můžete kdykoli dotáhnout vlastní data pro pokročilé vyhodnocení v Google Analytics 4 i Google Ads.

---

*Návod pochází z webu Webotvůrci — Zlatý a Premium partner Shoptetu.*
*Všechny návody: https://www.webotvurci.cz/navody/ · Kontakt: jsme@webotvurci.cz*
