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
| Tag | GA4 Event | Trigger |
|---|---|---|
| GA4 - Config Tag | page_view (automatic) | All Pages |
| GA4 - Event - Form | generate_lead | Form Submission |
| GA4 - Event - Phone Call | phone_call | Click on tel: link |
| GA4 - Event - WhatsApp (JoinChat) | whatsapp_click | JoinChat dataLayer event |
| GA4 - Event - Email (mailto) | email_click | Click on mailto: link |
| Conversion Linker | — | All Pages |
Step 1: Download the JSON template
Download gtm-wordpress-servicios-conversiones.json from Google Drive:
📥 Download Services Template (JSON)

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-XXXXXXXXXXto 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 Event | Fires when... |
|---|---|
| view_item_list | User views a product list (category, search) |
| view_item | User views a product page |
| select_item | User clicks a product from a list |
| add_to_cart | User adds a product to cart |
| remove_from_cart | User removes a product from cart |
| view_cart | User views the cart |
| begin_checkout | User starts checkout |
| add_shipping_info | User adds shipping info |
| add_payment_info | User adds payment method |
| purchase | Purchase 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)

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
purchasefires 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
| Template | For whom | Events included |
|---|---|---|
| WordPress Services | Service websites, leads, professionals | generate_lead, phone_call, whatsapp_click, email_click |
| WooCommerce eCommerce | WooCommerce online stores | view_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
- Google Tag Manager - Official documentation
- Google Analytics 4 - Recommended events
- GA4 eCommerce events reference
- GTM4WP - GA4 eCommerce documentation
- Google Consent Mode v2
- LLMFY AI Traffic Analytics
Article updated: February 2026. Templates tested with Google Tag Manager, GA4 and GTM4WP v1.20+.
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.