How to Set Up Conversions in Google Tag Manager & GA4: The Definitive Guide with JSON Templates [2026]

18 min read
Guide to set up conversions in Google Tag Manager GA4 with downloadable JSON templates

Jesús LópezSEO

Founder & CEO @ LLMFY · 18+ years in SEO

SEO expert with over 18 years of experience. Pioneer in LLMO (Large Language Model Optimization) and founder of Posicionamiento Web Systems. Helping companies optimize their presence in traditional search engines and AI search engines.

Measuring conversions isn’t optional — it’s the difference between data-driven decisions and guesswork. If you have a service website or WooCommerce store and you’re not tracking forms, phone calls, WhatsApp and purchases in Google Analytics 4, you’re flying blind.

In this guide you’ll learn how to set up all your conversions in Google Tag Manager step by step. But here’s what makes this different: we give you 2 ready-to-import JSON templates that save you hours of manual configuration.

And at the end, we’ll show you how to use LLMFY AI Traffic Analytics to see those conversions broken down by traffic source — including how many come from ChatGPT, Perplexity, Gemini and other AI search engines.


What you’ll achieve with this guide

By the end you’ll have:

  • Form submission tracking (Contact Form 7, WPForms, Gravity Forms, etc.)
  • Phone call tracking (clicks on tel: links)
  • WhatsApp tracking via JoinChat (the most popular plugin)
  • Email click tracking (mailto: links)
  • Full eCommerce tracking for WooCommerce (view_item, add_to_cart, purchase, etc.)
  • All events marked as conversions in GA4
  • Conversion visibility by channel in LLMFY AI Traffic Analytics

Prerequisites

Before starting you need:

  • A Google Tag Manager account — Create one free at tagmanager.google.com
  • A Google Analytics 4 property — With your Measurement ID (G-XXXXXXXXXX)
  • GTM installed on WordPress — We recommend the GTM4WP plugin (free)
  • Your GA4 Measurement ID — Found in GA4 → Admin → Data Streams → Your web stream

If you don’t have GTM on WordPress yet, install GTM4WP, enter your GTM Container ID (GTM-XXXXXXX) in Settings → Google Tag Manager, and enable the container code.

Important for EU compliance: In your GTM container, go to Admin → Container Settings and enable "Enable Consent Overview". Without this, Consent Mode v2 won’t work properly and you may have GDPR issues. This setting allows GTM to manage consent state for each tag and is required for your CMP (Cookiebot, Cookie Script, Complianz, etc.) to communicate correctly with GA4 tags.


Part 1: Conversions for Service Websites

This template is perfect for law firms, clinics, agencies, consultancies, real estate and any service website that generates leads through forms, phone, WhatsApp or email.

What’s included in the template

TagGA4 EventTrigger
GA4 - Config Tagpage_view (automatic)All Pages
GA4 - Event - Formgenerate_leadForm Submission
GA4 - Event - Phone Callphone_callClick on tel: link
GA4 - Event - WhatsApp (JoinChat)whatsapp_clickJoinChat dataLayer event
GA4 - Event - Email (mailto)email_clickClick on mailto: link
Conversion LinkerAll Pages

Step 1: Download the JSON template

Download gtm-wordpress-servicios-conversiones.json from Google Drive:

📥 Download Services Template (JSON)

Infographic: GA4 Conversions for WordPress Service Websites
Infographic: GA4 Conversions for WordPress Service Websites

Step 2: Change your GA4 ID (after importing)

The template uses a constant variable called GA4 Measurement ID that feeds all tags. You don’t need to manually edit the JSON file.

After importing (step 3), simply:

  • Go to Variables in GTM
  • Open the variable "GA4 Measurement ID"
  • Change G-XXXXXXXXXX to your real Measurement ID (e.g. G-A1B2C3D4E5)
  • Save

All tags update automatically because they reference this variable.

Step 3: Import into Google Tag Manager

  • Open your container at tagmanager.google.com
  • Go to Admin → Import Container
  • Select the JSON file you edited
  • Choose “New Workspace” (recommended to avoid mixing with existing config)
  • Select “Merge” as import method
  • Choose “Rename conflicting tags, triggers and variables”
  • Review the summary — you should see only “New” items
  • Click “Confirm”

Step 4: Verify with Preview

Before publishing, always verify:

  • Click “Preview” in GTM
  • Tag Assistant will open in a new tab with your site
  • Check that “GA4 - Config Tag” fires on page load
  • Submit a form → verify “GA4 - Event - Form” fires
  • Click a phone link → verify “GA4 - Event - Phone Call” fires
  • Click the WhatsApp button (JoinChat) → verify “GA4 - Event - WhatsApp” fires
  • Click an email link → verify “GA4 - Event - Email” fires

Step 5: Publish

If everything works in preview, click “Submit”“Publish” and name it “Service conversions setup v1”.

Step 6: Mark as conversions in GA4

Events don’t automatically become conversions. You need to do it manually in GA4:

  • Go to GA4 → Admin → Events
  • Wait for events to appear (can take up to 24h)
  • Find: generate_lead, phone_call, whatsapp_click, email_click
  • Toggle “Mark as key event” next to each one

Faster alternative: Go to Admin → Key events → New key event and create each event manually without waiting.


Part 2: GA4 Enhanced eCommerce for WooCommerce

This template covers the full eCommerce funnel in WooCommerce: from a user viewing a product to completing a purchase.

Pre-setup: GTM4WP plugin in WordPress (required)

Before touching Google Tag Manager, you need to configure your WordPress to send eCommerce data. Without these steps, the JSON template won’t work because GTM won’t receive any events from your store.

Everything is done in WordPress → Settings → Google Tag Manager (the GTM4WP plugin panel):

Step A — General tab:

  • Enter your GTM Container ID (GTM-XXXXXXX)
  • Make sure "Container code ON/OFF" is set to ON
  • Save changes

Step B — Integration tab → WooCommerce:

  • Click the "Integration" tab
  • Click the "WooCommerce" sub-tab
  • You’ll see: "WooCommerce 5.0+ is required to use this integration" and below "This plugin (woocommerce/woocommerce.php) is active" — confirms WooCommerce is detected
  • Check "Track e-commerce"
  • Save changes

This checkbox makes GTM4WP inject dataLayer.push() calls into your store’s HTML. Without it, when a user adds a product to cart or completes a purchase, no dataLayer event is generated and GTM has nothing to capture.

With the checkbox enabled, GTM4WP automatically inserts Google’s standard eCommerce events (view_item, add_to_cart, begin_checkout, purchase, etc.) on every page of your WooCommerce store, with full product data (name, price, quantity, category) using Google’s recommended event names.

Once done, you can move on to Google Tag Manager to import the template.

Source: GTM4WP — Official GA4 eCommerce setup documentation

What’s included in the template

GA4 EventFires when...
view_item_listUser views a product list (category, search)
view_itemUser views a product page
select_itemUser clicks a product from a list
add_to_cartUser adds a product to cart
remove_from_cartUser removes a product from cart
view_cartUser views the cart
begin_checkoutUser starts checkout
add_shipping_infoUser adds shipping info
add_payment_infoUser adds payment method
purchasePurchase completed

All events are captured with a single tag using the dynamic event name {{Event}} and eCommerce data from the dataLayer.

Steps 1-3: Download, Edit ID, Import

Same process as the services template: download gtm-woocommerce-ecommerce-ga4.json from Google Drive and import into GTM. Then go to Variables → GA4 Measurement ID and change G-XXXXXXXXXX to your real ID. Just one place to update.

📥 Download eCommerce WooCommerce Template (JSON)

Infographic: GA4 eCommerce Funnel for WooCommerce
Infographic: GA4 eCommerce Funnel for WooCommerce

Step 4: Verify with a test purchase

This verification is critical:

  • Enable GTM Preview mode
  • Browse your store: visit a category, click a product, add to cart
  • Verify these fire: view_item_list, view_item, add_to_cart
  • Go to cart → verify view_cart
  • Start checkout → verify begin_checkout
  • Make a test purchase — Use Stripe/PayPal test mode if available, or make a real €1 purchase and refund yourself
  • Verify purchase fires with the correct value

Step 5: Mark purchase as conversion in GA4

Important: events do NOT appear instantly. After publishing the GTM container and making your first test purchase, events can take 24 to 48 hours to show up in GA4 → Admin → Events. Don’t get frustrated if you don’t see them right away — this is normal.

To skip the wait, you can create them manually: go to Admin → Key events → New key event and type purchase. GA4 will recognize it as a key event as soon as the first data comes in.

Once events appear (or you’ve created them manually):

  • Go to GA4 → Admin → Events
  • Find purchase
  • Toggle "Mark as key event"

Google recommends marking only high-value events: purchase is mandatory. Optionally mark begin_checkout and add_to_cart to measure the funnel.


Part 3: Combined Template (Services + eCommerce)

If you have a WooCommerce store that also generates leads (contact form, phone for custom quotes), you can import both templates. GTM allows combining multiple imports without conflict as long as you choose “Rename conflicting items”.


Part 4: Measure conversions by traffic source with LLMFY

Setting up conversions is only half the job. The other half is knowing where they come from.

With LLMFY AI Traffic Analytics you can connect your GA4 property and see conversions broken down by channel:

  • AI Traffic: How many conversions come from ChatGPT, Perplexity, Gemini, Claude, Copilot
  • Traditional organic search: Google, Bing, DuckDuckGo
  • Direct, Social, Referral, Paid
  • Full eCommerce: Revenue, purchases, average order value, conversion rate — all broken down by channel

This answers the question every business is asking in 2026: How much business is AI generating for me?

For example, with AI Traffic Analytics you can see that ChatGPT sent you 88 sessions with 1 purchase worth €153, while Google organic sent 5,371 sessions with 42 purchases worth €3,929, and AI traffic has a 73% engagement rate (very high).

These insights are only possible if you have conversions and eCommerce properly set up in GTM/GA4. Without that foundation, there’s nothing to measure.


Common mistakes and how to avoid them

Mistake 1: Not verifying before publishing. Always use GTM Preview before publishing. A production error can mean weeks of lost data.

Mistake 2: Having Google Analytics installed twice. If you already have GA4 via a plugin like MonsterInsights, Site Kit, or directly in your theme code, disable it before using GTM. Otherwise you’ll send duplicate pageviews.

Mistake 3: Not marking events as conversions in GA4. Importing the GTM template sends events, but GA4 doesn’t treat them as conversions automatically. You must mark them manually.

Mistake 4: Consent Mode not configured. If you’re in the EU, you need a CMP (Cookiebot, Cookie Script, Complianz, etc.) integrated with GTM for GDPR compliance. The templates don’t include CMP as each site uses a different one.

Mistake 5: Not enabling eCommerce in GTM4WP. The WooCommerce template needs GTM4WP configured to push eCommerce data to the dataLayer. Without enabling “Register enhanced e-commerce”, events won’t fire.


Summary and template downloads

TemplateFor whomEvents included
WordPress ServicesService websites, leads, professionalsgenerate_lead, phone_call, whatsapp_click, email_click
WooCommerce eCommerceWooCommerce online storesview_item, add_to_cart, purchase and 7 more events

Quick instructions for both:

  • Download the JSON
  • Import in GTM → New workspace → Merge
  • In Variables, open "GA4 Measurement ID" and enter your real ID → New workspace → Merge
  • Verify with Preview
  • Publish
  • Mark events as conversions in GA4

Sources and resources

Download files:

📥 Services WordPress Template (JSON) — Form, Phone, WhatsApp, Email

📥 eCommerce WooCommerce Template (JSON) — Full funnel 10 events


Article updated: February 2026. Templates tested with Google Tag Manager, GA4 and GTM4WP v1.20+.

Share:

Jesús LópezSEO

Founder & CEO @ LLMFY · 18+ years in SEO

SEO expert with over 18 years of experience. Pioneer in LLMO (Large Language Model Optimization) and founder of Posicionamiento Web Systems. Helping companies optimize their presence in traditional search engines and AI search engines.

47articles
4.2hread