Home - Digital Marketing - How to Track Website Forms and WhatsApp Enquiries to Sales

How to Track Website Forms and WhatsApp Enquiries to Sales

October 15, 2026

•

Digital Marketing

How to Track Website Forms and WhatsApp Enquiries to Sales

Most Singapore businesses can tell you how many sessions their website had last month. Far fewer can tell you how many enquiries it produced, and almost none can tell you how many of those became customers.

The gap is not a tooling problem. The tools are free and the setup takes a day. The gap exists because enquiries arrive through four or five different routes and each one has to be wired up separately, so most businesses wire up the website form, miss everything else, and conclude the website does not work.

This guide covers the full chain: capturing every enquiry route, getting them into one place, and following them through to a closed sale.

The four routes, and which ones usually go uncounted

Route How it is usually tracked Commonly missed?
Website form GA4 event on submission (often misconfigured) Partly: fires on thank-you page only
WhatsApp Click on wa.me or api.whatsapp.com links Yes, very often
Phone Click on tel: links (mobile) Yes
Email Click on mailto: links Yes

If you only track the form, you are measuring a fraction of your enquiries and attributing none of the rest. In Singapore, where WhatsApp is a default business channel, this is often most of your pipeline.

Step 1: Track the form submission, properly

The most common failure here is subtle. Many setups fire a conversion when the thank-you page loads. That misses every form that submits via AJAX without a redirect, which is most modern forms.

What to do instead: fire the event on the form’s own success callback, or on the appearance of the success message in the DOM.

In Google Tag Manager, an Element Visibility trigger watching the success message is the most reliable approach for forms you cannot modify. Set it to fire once per page, on the element containing the confirmation text.

Send a GA4 event with a consistent name and useful parameters:

event_name: generate_lead
parameters:
  form_name: contact_main
  form_location: /services/web-design/
  enquiry_type: quote_request

Name events consistently across all routes. If your form fires generate_lead and your WhatsApp link fires whatsapp_click, you cannot count total enquiries without manual work. Use one event name with a parameter that distinguishes the route.

Verify it before moving on. Submit the form yourself and confirm the event appears in GA4’s DebugView. A conversion event that was configured but never tested is the most common cause of a reporting discrepancy nobody can explain.

Step 2: Track WhatsApp clicks, and understand the limit

Most Singapore businesses link to WhatsApp with a wa.me URL. Tracking the click is straightforward.

In GTM, create a Click trigger matching links where the URL contains wa.me or api.whatsapp.com, and fire a GA4 event.

event_name: generate_lead
parameters:
  enquiry_route: whatsapp
  click_location: /services/web-design/

The honest limitation, which a lot of guides gloss over: you are tracking that someone clicked, not that they sent a message, and certainly not what they said. Once the user lands in WhatsApp, the trail ends. A click is an intent signal, not a confirmed enquiry.

Two things make the click more useful:

Pre-fill the message with a source marker. A wa.me link accepts a text parameter. Pre-fill something that identifies the page:

https://wa.me/65XXXXXXXX?text=Hi%2C%20I%27m%20enquiring%20about%20web%20design

Your team then sees in the chat itself which page the person came from, which is crude but works without any integration.

Use the WhatsApp Business API if volume justifies it. It supports conversation tracking and CRM integration properly. For most SMEs the click plus a pre-filled message is sufficient and free.

Step 3: Track phone and email clicks

Both are one trigger each in GTM and both are routinely skipped.

  • Phone: a Click trigger on links starting tel:. Only meaningful on mobile, but that is where most calls originate.
  • Email: a Click trigger on links starting mailto:. Note that this tracks the click, not whether an email was sent.

If call volume is high enough to justify it, dynamic number insertion swaps the displayed phone number based on traffic source, which attributes calls to channels properly. For most SMEs, click tracking is enough to start.

Step 4: Get everything into one place

This is the step that separates businesses who know their numbers from businesses who argue about them.

You need one record per enquiry, created at the moment it arrives, containing:

Field Why it matters
Date and time Measures response time and volume trends
Route Form, WhatsApp, phone or email
Landing or source page Shows which pages produce enquiries
Channel and gclid (if present) Attributes the enquiry and enables offline conversion import
Self-reported source Catches what analytics cannot see
Qualified (yes/no) Separates real prospects from noise
Outcome and deal value Connects marketing to revenue

A CRM does this. So does a shared spreadsheet, if one person owns it. The tool matters far less than the discipline of creating the record at the moment of enquiry rather than reconstructing it later from memory.

The one field people leave out and regret: self-reported source. A single optional question on the form, “how did you hear about us”, catches everything your analytics cannot see. Keep it optional so it does not cost you submissions.

For WhatsApp and phone enquiries, your team creates the record manually. That requires a habit, and the habit requires that someone checks it weekly for the first month.

Step 5: Close the loop back to the ad platforms

Once an enquiry becomes a customer, send that outcome back to the platform that produced the click.

For Google Ads, this is offline conversion import. Store the gclid from the landing URL with the lead record, then upload the conversion when the deal closes.

For Meta, this is the Conversions API with offline events, matched on email or phone.

Why this matters more than it sounds. Without it, the platform optimises toward form fills, because that is the only outcome it can see. It gets progressively better at finding people who fill in forms and do not buy. With it, the platform optimises toward revenue.

This is the single highest-return item in this guide for anyone running paid media, and it is the one most commonly skipped.

A realistic implementation order

  1. Audit what exists. List every way an enquiry can reach you, then check which have tracking. Most businesses find two or three untracked routes. One hour.
  2. Fix the form event so it fires on actual submission, and test it in DebugView. Half a day.
  3. Add WhatsApp, phone and email click triggers in GTM, using one consistent event name with a route parameter. Half a day.
  4. Add the self-reported source field to every form. Thirty minutes.
  5. Create the enquiry record structure in your CRM or sheet, and agree who creates records for WhatsApp and phone. One hour, plus a month of habit-building.
  6. Set up offline conversion import for whichever ad platforms you run. A day, and worth it.
  7. Reconcile monthly. Compare GA4 enquiry events against actual records. They will not match exactly. They should be close.

That last step is the one that keeps the system honest. If GA4 says 30 enquiries and your records show 11, something is firing that should not be, or your team is not creating records. Either way you need to know.

What good looks like after a month

You should be able to answer these without opening more than one report:

  • How many enquiries did we get, by route?
  • Which pages produced them?
  • What share were qualified?
  • How long did we take to respond?
  • How many became customers, and what were they worth?
  • Which channel produced the customers, not just the enquiries?

If you can answer those, the question of whether your marketing works stops being a matter of opinion. The strategic side of that, comparing channels on lead quality rather than volume, is covered in measuring qualified leads from Google Ads and SEO.

Frequently Asked Questions

How do I track WhatsApp enquiries from my website?

Create a click trigger in Google Tag Manager matching links containing wa.me or api.whatsapp.com, and fire a GA4 event. You are tracking the click, not the conversation, since the trail ends once the user enters WhatsApp. Pre-filling the message with a source marker using the text parameter lets your team see which page the person came from.

Why do my GA4 conversions not match my actual enquiries?

The most common cause is a form event firing on thank-you page load rather than on submission, which misses forms that submit without a redirect. The second most common is untracked routes: WhatsApp, phone and email clicks that produce enquiries nobody counts. Reconcile GA4 against your real records monthly.

Can I track whether someone actually sent a WhatsApp message?

Not with a standard wa.me link. You can only track the click. The WhatsApp Business API supports conversation tracking and CRM integration, which is worth it at higher volumes. For most SMEs, tracking the click and pre-filling a source marker in the message is sufficient.

Should I use a CRM or a spreadsheet?

Either works if one person owns it and records are created at the moment of enquiry. The discipline matters more than the tool. A CRM becomes necessary when you need automated follow-up, multiple people updating records, or offline conversion import at volume.

What is offline conversion import and do I need it?

It sends the real outcome of a lead back to the ad platform so it optimises toward customers rather than form fills. Without it, Google Ads and Meta get progressively better at finding people who enquire and do not buy. If you run paid media with a sales cycle longer than a few days, it is the highest-return item in this guide.

How do I track phone call enquiries?

At minimum, a click trigger on tel: links as a GA4 event, which covers mobile where most calls originate. If call volume is high, dynamic number insertion swaps the displayed number by traffic source so calls can be attributed to channels properly.

Do I need to ask “how did you hear about us”?

It is the single most valuable optional field on an enquiry form. Analytics cannot see referrals, offline conversations, or an ad someone saw three weeks ago on another device. Self-reported data is imperfect, but used alongside analytics it is considerably better than either alone.

How long does this take to set up?

About two days of work for the tracking itself, plus a month of habit-building for manual record creation on phone and WhatsApp enquiries. Offline conversion import adds roughly another day and is usually the piece worth doing properly.

If You Want It Built and Verified

Most of this is configuration rather than strategy, and it is done once. The part that goes wrong is verification: events that were configured but never tested, and routes nobody remembered to wire up.

We set this up as part of our conversion rate optimisation and campaign work, starting with an audit of what currently fires against what actually happens. If GA4 is not yet configured properly, start with the GA4 setup guide. And if the problem is that no enquiries are arriving rather than that they are not being counted, the diagnosis in traffic but no enquiries comes first.

You Might Also Like

Google Consent Mode v2

October 23, 2026

Google Consent Mode v2: Do Singapore Websites Need It?

Do Singapore websites need Google Consent Mode v2? Not for Singapore-only traffic. When it is required, when it is still worth it and how to set it up.

Read More
WordPress Site Hacked

October 23, 2026

WordPress Site Hacked: How to Clean It and Recover

WordPress site hacked? What to do in the first hour, how to find the entry point, clean the site, recover Google rankings and stop it happening again.

Read More
PHP 8.2 Ends 31 December 2026

October 23, 2026

PHP 8.2 Ends 31 December 2026: What WordPress Owners Must Do

PHP 8.2 stops getting security patches on 31 December 2026. How to check your WordPress PHP version, which version to move to and how to upgrade safely.

Read More

Is Your Brand Invisible to AI? Find Out Now.

Grab your free AI Visibility Audit to see if AI engines are recommending your services. 100% free, zero obligations.