A Google Ads dashboard can show a steady stream of conversions while the sales team is fielding far fewer real enquiries than the numbers suggest. This mismatch is common, and it rarely announces itself. Conversion tracking tends to degrade quietly — a caching plugin update, a new cookie banner, a redesigned thank-you page — and the numbers a marketing team is optimising against stop reflecting what is actually happening on the website. For any Malaysian business running paid media or reporting on website performance, understanding why tracking breaks, and how to catch it early, matters more than adding another dashboard on top of a broken one.
Why conversion tracking breaks more easily than it looks
Tracking a single conversion depends on a chain of small technical steps working correctly at the same time: the page has to load without being blocked, the tracking script has to fire, a consent signal has to allow it, the event has to reach the right platform, and it has to be matched to the correct ad click or session. None of these steps produce an error message when they fail. The dashboard simply shows a lower number, or the wrong number, and there is nothing on screen to say why.
This is also why conversion tracking sits awkwardly between teams. A web developer may consider their job done once the site works. A media buyer assumes the numbers coming from the ad platform are accurate. Neither is responsible for checking the handoff between the two, which is usually where the problem actually lives.
The most common causes on Malaysian business websites
Caching and speed-optimisation plugins strip or delay scripts. Tools such as WP Rocket, LiteSpeed Cache and various “optimise unused JavaScript” features are built to improve page speed, not to distinguish a decorative script from a conversion pixel. Deferred or delayed loading can mean a Google Ads or Meta pixel fires after a visitor has already left the page, or gets removed from the critical path entirely during an aggressive optimisation pass.
Duplicate or conflicting tags fire on the same action. It is common to find a manually installed gtag.js snippet sitting alongside a Google Tag Manager container doing the same job, or an old container left behind from a previous developer. The result is either double-counted conversions or two tags competing to fire on the same trigger, with one silently losing.
Thank-you page and URL-based triggers stop matching reality. Many conversion actions are still set up to fire when a visitor reaches a specific URL, such as a thank-you or confirmation page. A website redesign that changes that URL, or a contact form that switches to an inline confirmation message instead of a page redirect, breaks the trigger without breaking the form itself. The enquiry still comes through; it just stops being counted.
Consent settings block tracking signals without anyone noticing. Google’s Consent Mode framework ties tracking behaviour to the consent choices a visitor makes in a cookie banner, and Google has continued to expand how central that consent signal is to what Google Ads and GA4 are allowed to record. A cookie banner plugin update that changes a default category from “allow” to “deny”, or a banner that was never properly connected to Consent Mode in the first place, can quietly cut off a meaningful share of conversion data. This is worth checking even for businesses outside markets where a consent banner is a strict legal requirement, since the technical effect on Google’s own measurement now applies more broadly than the legal obligation does.
Genuine enquiries happen through channels that were never wired up as conversions. WhatsApp click-to-chat buttons, phone number clicks and enquiries from a Google Business Profile listing are increasingly where Malaysian customers actually make first contact, but they are not tracked as conversions by default. A campaign can be generating real commercial interest while its reported conversion numbers look weak, simply because the site was never told that a WhatsApp click counts as a result worth recording.
Why this is worth rechecking now, specifically
GA4’s conversion handling and its relationship with Google Ads has changed more than once recently, including adjustments earlier in 2026 to how conversions are imported and counted between the two platforms. Google has also continued rolling out changes to how consent signals gate advertising data inside GA4, most recently narrowing what determines whether ad-related data is recorded at all. Neither change requires a business to do anything by law in Malaysia, but both can alter what a tracking setup that worked correctly a year ago is now actually recording. A setup that has not been reviewed since it was first installed is a reasonable place to start looking.
A practical way to check whether tracking is actually working
Rather than waiting for numbers to look obviously wrong, a short manual check on a normal working day is usually enough to catch most of these issues:
- Submit a real test enquiry through every conversion path on the site — the main form, WhatsApp button, phone link and any booking or quote tool — and confirm each one appears in Google Tag Manager’s preview mode and then in GA4’s real-time or DebugView report.
- Check the diagnostics or recommendations panel inside Google Ads for warnings about conversion tracking, which often flag issues such as missing tags or a drop in recorded conversions before anyone notices manually.
- Compare the number of leads the sales team actually logged over a month against the number of conversions the ad platform reported for the same period. A gap in either direction is worth investigating rather than explaining away.
- Open the cookie or consent banner in an incognito window and check what the default state actually allows, rather than assuming it matches what was configured when it was first installed.
- List every action that counts as a genuine enquiry for the business, and confirm each one has a corresponding tracked event. If WhatsApp or phone enquiries are not on that list, they are not being measured.
Fixing it without over-engineering the setup
The fix is rarely a bigger analytics stack. It is usually about reducing the number of places where tracking can quietly fail, and being clear about who owns it. That means removing duplicate tags rather than adding new ones, documenting what each conversion action is actually meant to represent so a future redesign does not break it by accident, and treating a consent banner as part of the tracking setup rather than a separate legal checkbox exercise. For businesses with higher ad spend or more complex funnels, server-side tagging and Google’s enhanced conversions can make tracking more resilient to browser-level blocking, but they solve a different problem to the ones above and are not a substitute for fixing a broken trigger.
The underlying issue is usually structural rather than technical: tracking sits at the point where a website, an ad account and a business’s actual sales process meet, and it tends to break whenever those are treated as three separate concerns handled by three different people. A website built with tracking considered from the start, rather than added afterwards, is far less likely to develop these gaps in the first place — which is part of why MRVS treats website design and development and conversion measurement as one piece of work rather than a handover between two vendors.
The same applies on the advertising side. A campaign can only be optimised as well as the data feeding it, which is why MRVS treats conversion tracking as part of the paid media engagement itself, not a one-off setup task completed at the start and left untouched. For businesses juggling several systems — a CRM, WhatsApp Business, a booking tool — connecting all of it into one accurate conversion picture is typically technology and automation work rather than something an ad account can solve on its own.
If it has been more than a few months since anyone checked whether the numbers in the ad account actually match what the sales team is seeing, that gap is worth closing before adjusting budgets any further.