✅ HTML: All id="lead_whatsapp" → data-whatsapp-link
✅ JavaScript: Updated selector to [data-whatsapp-link]
✅ Tracking: Now uses GTM dataLayer for better control
✅ All functionality: Remains exactly the same
Name: WhatsApp Link Click
Type: Click - All Elements
Condition: Click Element | matches CSS selector | [data-whatsapp-link]
Name: GA4 - WhatsApp Contact
Tag Type: Google Analytics: GA4 Event
Measurement ID: [Your GA4 ID]
Event Name: whatsapp_contact
Add Event Parameters:
- event_category:
- event_label:
- page_path:
Trigger: WhatsApp Link Click
Create for each:
- WhatsApp Event Category (Data Layer: event_category)
- WhatsApp Event Label (Data Layer: event_label)
- WhatsApp Page Path (Data Layer: page_path)
- WhatsApp Page Title (Data Layer: page_title)
1. Click Preview
2. Click WhatsApp button on your site
3. Verify event fires in GTM panel
4. Submit → Publish
whatsapp_contactconsole.log(dataLayer[dataLayer.length-1]){event: 'whatsapp_contact', ...}{
event: 'whatsapp_contact',
event_category: 'engagement',
event_label: 'whatsapp_link_click',
page_path: '/servicios/',
page_title: 'Servicios - Since Marketing',
timestamp: '2025-12-12T14:30:45.123Z'
}
| Problem | Solution |
|---|---|
| Events not firing | Check trigger condition: [data-whatsapp-link] exact match |
| GA4 shows 0 events | Wait 24h for data to process; check realtime first |
| Wrong data showing | Verify variable names match dataLayer keys exactly |
| Page title missing | Ensure GA4 tag is configured with all parameters |
Add this to your HTML:
<!-- Header button -->
<a href="#" data-whatsapp-link data-whatsapp-source="header">Contact</a>
<!-- Footer button -->
<a href="#" data-whatsapp-link data-whatsapp-source="footer">Contact</a>
<!-- CTA button -->
<a href="#" data-whatsapp-link data-whatsapp-source="cta">Contact</a>
Then in GTM:
WhatsApp Source (Data Layer: whatsapp_source)whatsapp_source: | Platform | Event Name |
|---|---|
| GTM | whatsapp_contact |
| GA4 | whatsapp_contact |
| JavaScript | whatsapp_contact |
| Conversion | Yes ✅ |
| Category | engagement |
| Label | whatsapp_link_click |
The new selector [data-whatsapp-link] matches:
// All of these work now:
document.querySelectorAll('[data-whatsapp-link]')
// Get specific ones:
document.querySelector('[data-whatsapp-link]') // First one
document.querySelectorAll('[data-whatsapp-link]')[0] // Same thing
Status: ✅ Ready to Deploy
Implementation Time: ~5 minutes
Testing Time: ~10 minutes
Data visible in GA4: 24 hours