Setting up from the UK or Europe? Compare UAE free zones for 2026 in our setup guide.

Read the guide
Blog · Marketing

Google Ads Conversion Tracking With GTM: Fixing Zero Conversions

Office towers along Sheikh Zayed Road in Dubai

If Google Ads reports zero conversions while enquiries keep reaching your inbox, the tracking is broken, not the campaign. On UAE sites the fault is nearly always one of five things: the conversion tag fires on the wrong trigger, the click ID never gets stored on the landing page, a redirect strips that click ID, a consent banner blocks the tags, or the lead happens on WhatsApp or the phone where no tag can see it. A working Google Ads conversion tracking GTM setup needs a Google tag on every page, a Google Ads conversion tag carrying your Conversion ID and Label, and a trigger that fires only when a real lead is confirmed. Test it in preview mode before you publish.

Key takeaways

  • A Google tag or Conversion Linker has to load on every landing page so the GCLID from the ad click is saved in a first-party cookie.
  • Fire the conversion tag on a confirmed lead, such as a thank-you page or a developer’s dataLayer event, never on a button click alone.
  • WhatsApp clicks can be tracked in GTM, but a click is not a lead, so keep them as a secondary action unless you have a reason not to.
  • Saving the GCLID into a hidden form field and your CRM is what later lets you import the leads that actually closed.
  • UAE law makes consent the main basis for processing personal data, and ads aimed at Europe also fall under Google’s EU consent policy.

The five parts of a working setup

A Google Ads conversion that registers correctly depends on five pieces working together. A broken setup is usually missing just one of them.

  1. Auto-tagging is switched on in Google Ads, so every ad click lands with a gclid parameter on the URL. Google says auto-tagging is on by default for new accounts, but accounts moved over from older setups sometimes have it off.
  2. A Google tag or a Conversion Linker tag fires on all pages. Google’s Tag Manager documentation explains that the linker reads the click information from the landing page URL and stores it in first-party cookies named _gcl_aw and similar. A container that already loads a Google tag on every page does not need a separate linker.
  3. A Google Ads Conversion Tracking tag holds the Conversion ID and Conversion Label from the conversion action you created in Google Ads.
  4. A trigger fires that tag once, at the moment the lead is confirmed.
  5. Consent settings tell Google what the visitor agreed to, so tags behave correctly when someone declines cookies.

The quickest way to create the tag is from the conversion action in Google Ads: open the Google Tag Manager tab, choose “Set up in Google Tag Manager”, and Google imports a suggested tag into your workspace. You still build the trigger yourself, and codeless conversion actions do not offer that button.

Why Google Ads shows zero conversions while leads arrive

Before touching the container, match the symptom to the likely cause. The table below follows the order we check in on a typical Dubai service business site, starting with the cheapest test.

What you see Likely cause First check
Status says Unverified The conversion tag has never fired GTM preview: does the tag appear under Tags Fired after a test lead?
Tag fires in preview, Google Ads still shows nothing Container changes were tested but never published GTM Versions tab: is the live version the one with the tag?
Conversions recorded in GA4 but not in Google Ads GCLID lost before the conversion page Land on the site with a test gclid and look for the _gcl_aw cookie
Numbers far lower than enquiries Most leads come through WhatsApp or calls Compare CRM lead source against form submissions
Conversions stop after a site redesign New form submits without a page load, or a new redirect drops the query string Submit the form and watch whether the trigger fires at all

Status labels confuse many owners. Google Ads uses Unverified when the tag has not fired yet, which is the default for every new action. “No recent conversions” means the tag has fired before but has recorded no conversion in the last seven days. Inactive means the tag itself has not fired in seven days, which usually points to a removed tag or an unpublished container.

Choosing the right trigger for a lead form

The trigger decides what Google Ads counts as a conversion. Pick the wrong one and you either count nothing or count every accidental button press.

Thank-you page URL

If the form sends people to a page such as /thank-you/, a Page View trigger on that URL is the simplest and most dependable option. The weakness is that anyone who bookmarks or revisits that page adds a conversion, so block the page from search indexing and keep the conversion counting set to One per click.

GTM form submission trigger

Tag Manager’s built-in Form Submission trigger has two options worth switching on. “Wait for tags” delays the page change until the tags have fired or a timeout passes, which stops slow tags from being cut off. “Check validation” makes the trigger fire only when the form is successfully sent, so a visitor who leaves the phone field blank is not counted. Google also recommends limiting the trigger to the page where the form sits.

One issue we often see on Dubai sites built with page builders and JavaScript frameworks is a form that sends its data in the background without a standard submit event. The GTM form trigger then never fires, and the account shows zero. Testing in preview mode shows this within a minute.

A dataLayer event from the developer

For custom forms, React or Next.js front ends, and booking widgets, the reliable method is for the developer to push an event such as lead_submitted into the dataLayer only after the server confirms the submission. You then fire the conversion tag on a Custom Event trigger with that name. It is a small development task and removes almost every false positive. If your site is being rebuilt, write this event into the brief before any design work starts; our web design projects treat it as part of launch, not an extra.

Tracking WhatsApp clicks without inflating conversions

For many UAE businesses WhatsApp is the main enquiry channel, and a clinic in Al Barsha or a real estate broker in Business Bay may receive more chats than form submissions. WhatsApp’s click-to-chat links use the format https://wa.me/971XXXXXXXXX, with the full number in international format and no plus sign, zeros, spaces or dashes. Some sites still use api.whatsapp.com/send links, so plan for both.

In GTM, create a Click trigger of type “Just Links” that fires when the built-in Click URL variable contains wa.me or api.whatsapp.com. Turn on “Wait for tags” so the tag fires before the browser leaves for the WhatsApp app. Attach a Google Ads conversion tag for a separate conversion action named, for example, “WhatsApp click”.

The trade-off is quality. A click only proves someone opened WhatsApp, not that they sent a message. If a WhatsApp click is a primary conversion, Smart Bidding will learn to find people who tap buttons. For most service businesses we would set it as a secondary action at first, compare it with the chats actually received for two or three weeks, and only then decide. A practical middle step is to add prefilled text to the link, such as a short reference to the page, so your team can see which ad landing page a chat came from.

The primary or secondary choice matters because Google Ads bids only on primary actions, which fill the Conversions column. Secondary actions sit in All conversions for observation. Leave an imported GA4 page view or every WhatsApp click as primary and Maximise Conversions will chase the cheapest signal, which is how cost per lead climbs, as our cost per lead comparison shows. For leads, set counting to One, which Google recommends because usually only one unique lead per ad click adds value.

GCLID capture: the step that makes offline conversions possible

A form submission tells Google Ads that someone enquired. It does not tell it which enquiries became paying clients. For a business setup firm selling licence packages or a fit-out contractor pricing office projects in JLT, one signed client is worth more than fifty unqualified enquiries, and our piece on sales qualified leads explains why.

Google’s own instructions for offline conversions set out three steps. Add a hidden GCLID field to every lead form. Update the site code to capture and store the GCLID in a cookie or local storage so it survives a visitor browsing three pages before enquiring. Then change the CRM so it saves the GCLID with the lead record. Once that is in place you can upload closed deals back to Google Ads as a conversion action of their own.

Three limits apply. Google keeps a GCLID for 90 days, so a conversion uploaded more than 90 days after the click is rejected. Google advises waiting four to six hours after creating a new offline conversion action before the first upload. And if your site uses redirects, such as a campaign URL that forwards to a language folder like /en/, Google says the GCLID must reach the final landing page, or nothing downstream will work. This wiring between forms, CRM and Google Ads is the part of marketing automation that pays back first.

UAE Federal Decree-Law No. 45 of 2021 on the Protection of Personal Data came into force on 2 January 2022, according to the UAE Government portal u.ae. The portal states that it prohibits processing personal data without the owner’s consent, apart from specific exceptions. Companies in the DIFC fall under DIFC Law No. 5 of 2020 instead, and ADGM has its own Data Protection Regulations 2021.

Google adds its own rule on top. Its EU user consent policy covers end users in the European Economic Area, the UK and Switzerland, and requires consent for cookies and for personalised ads. A Dubai firm running setup campaigns aimed at Germany or the UK is inside that policy even though the company is licensed in the UAE.

Consent mode is how GTM passes the visitor’s choice to Google. It uses four signals: ad_storage, analytics_storage, ad_user_data and ad_personalization. In basic mode Google tags do not load until the visitor interacts with the banner. In advanced mode the tags load with consent denied by default and send cookieless pings, which Google uses to model missing conversions. The practical risk we see is a plugin cookie banner that blocks every Google tag with no consent mode signals, so conversions vanish the day it goes live.

Enhanced conversions for leads

Enhanced conversions for leads sends a hashed copy of the email address or phone number a visitor typed into your form, so Google can match the lead to a signed-in Google user and to the offline conversions you upload later. In GTM this uses the “Google Ads User-Provided Data Event” tag, fired on the same confirmed-lead trigger as your conversion tag.

Google recommends the email address as the main field because it is the most unique identifier. The data is normalised before hashing: spaces trimmed, text set to lowercase, and phone numbers formatted to the E.164 standard, which for a UAE mobile looks like +971501234567. It is then hashed with SHA-256 before it leaves the browser. You also have to accept Google’s customer data terms in the Google Ads account first, and your privacy policy should mention it.

A debugging order that finds the fault quickly

When an account shows zero, work through these steps in order.

  1. Confirm auto-tagging is on under the Google Ads account settings.
  2. Open your landing page with a test parameter such as ?gclid=test123 added to the URL, then check the browser’s cookies for _gcl_aw. If it is missing, the Google tag or Conversion Linker is not firing on that page, or a redirect dropped the parameter.
  3. Start GTM preview mode, which opens Tag Assistant and lets you test the draft container without publishing it. Submit a real test lead and check that the conversion tag appears under Tags Fired, once.
  4. Check the consent state shown in Tag Assistant for that event. If ad_storage is denied and you expected it to be granted, the banner configuration is the problem.
  5. Publish the container. Preview mode does not change the live site.
  6. In Google Ads, use Troubleshoot on the conversion action to run a Tag Assistant session. Google says statuses from that session update after about 30 minutes.
  7. Wait before drawing conclusions. Google’s data freshness page gives three hours for conversion data under last click attribution and 15 hours for other models, including data-driven. Conversions imported from Google Analytics take 12 and 24 hours.

Never test by clicking your own ads. Tag Assistant does the same job without paying for the click.

Questions readers ask

Should I use the Google Ads tag or import conversions from GA4?

For bidding, the Google Ads conversion tag is faster. Google's data freshness figures give three hours for Google Ads tag data under last click, against twelve hours for goals imported from Google Analytics. Many accounts keep GA4 imports as secondary actions for comparison.

Do I need a developer to set this up?

For a site with a thank-you page, a marketer with GTM access can usually do it. For JavaScript forms, dataLayer events, GCLID capture and CRM storage, you need a developer who can change the form code and the CRM.

Why does Google Ads show fewer leads than my CRM?

Google Ads counts only conversions linked to an ad click within the conversion window. It cannot see organic, referral, walk-in or most WhatsApp leads, and people who declined cookies may only appear through modelling. A gap is normal. A gap that suddenly grows usually means something broke.

How often should conversion tracking be checked?

Check it after every website change, form plugin update or consent banner change, and glance at conversion action statuses weekly. Google flags an action as Inactive after seven days without the tag firing, which is a useful early warning.

Is phone call tracking set up the same way?

Calls from call assets are tracked inside Google Ads itself. Calls from the website need a website call conversion, which also needs the Google tag on your pages. Google sets counting for call conversions to One by default. If your account shows conversions you do not trust, or none at all, our marketing analytics team can audit the GTM container and conversion actions and tell you which fault is behind it. When the tracking is sound, performance marketing decisions start working from real lead data. Platform behaviour and time limits are taken from Google Ads Help, Google Tag Manager Help and Google's EU user consent policy as read in September 2026, and from the UAE Government portal u.ae for the data protection law. This article is general guidance and not legal advice on data protection. Cover photo: Sheikh Zayed Road, Dubai (8971328903) by Fabio Achilli from Milano, Italy, via Wikimedia Commons (CC BY 2.0).

Keep reading

Want this done for your company?

Tell us what you are launching and we will come back with a written quote.

Get a free quote