Open to new projects

Send a quick note.

Hiring, or an account that needs better results. A couple of lines is enough; I reply within a working day.

I only use your details to reply. Privacy notice

Tracking · Architecture and interiors · Islamabad and Lahore, Pakistan

Arsyn: tracking every call, email, WhatsApp and form enquiry on an architecture studio website

A Google Tag Manager set-up for an architecture and interiors studio on WordPress: five enquiry routes tracked as GA4 events and Meta Pixel conversions, with form submissions counted only when the form actually sends.

Client
Arsyn
Platform
Google Tag Manager, GA4, Meta Pixel
Role
Freelance
Period
2026
  • 01 5 Routes tracked: call, email, WhatsApp, button, form
  • 02 10 Tags in one Tag Manager container
  • 03 2 Platforms sharing the events: GA4 and Meta
  • 04 Good Google’s container quality rating

The brief

I run Arsyn’s Meta ads, and the lead campaigns use Meta’s own forms. But some people who see the ads go to the website instead, and from there they call, email, WhatsApp or fill in the contact form. The aim was simple: every way someone can get in touch from the website recorded as its own event, in GA4 and in Meta, before the website is used as a destination for paid traffic.

What I did

One Tag Manager container for everything. GA4 and the Meta Pixel both load through Tag Manager, so any new event can be added without touching the WordPress theme.

A listener for Contact Form 7. The site’s form plugin doesn’t talk to Tag Manager on its own. A small custom HTML tag listens for the plugin’s “mail sent” event, which only fires when a submission actually goes through, and pushes a cf7_submit event to the data layer with the form ID. That one event drives both the GA4 generate_lead event and the Meta Lead event, so the two platforms count the same thing.

Click tracking for calls, emails and WhatsApp. Link-click triggers for tel:, mailto: and WhatsApp links fire GA4 events (click_call, click_email, click_whatsapp) and a Meta Contact event. A separate trigger on the “Send an enquiry” button records cta_enquiry, so it’s clear how many people started an enquiry and how many finished one.

Kept the IDs in variables. The GA4 measurement ID sits in a constant and the form ID in a data layer variable, so the set-up is easy to read and easy to change later.

Results

Google rates the container “Good”, and every enquiry route on the site now arrives in GA4 and Meta as a named event, with form submissions counted only when the form actually sends. The lead campaigns run on Meta's own forms today; when a campaign sends people to the website instead, it can optimise on real enquiries from day one rather than on page views.

In short

Five ways to get in touch, each one tracked as its own event in both GA4 and Meta, ready for the first campaign that sends people to the website.

From Tag ManagerScreenshots from Google Tag Manager, cropped for readability. Tap a screenshot to open it full size.
More work

Other case studies

All work →

Most of my week is spent inside client accounts, so case studies get written up when there's a gap between campaigns. More are on the way. If you want figures from an account or platform that isn't here yet, ask and I'll pull them from the account.