Webclat / GTM Practice

Why does my Google Ads conversion tag fail with a 400 status or never call its success callback?

Quick answer

A 400 from the Google Ads conversion endpoint almost always means a malformed or missing required parameter in the request - most commonly a Conversion ID or Label pulled from the wrong account, a missing or malformed transaction_id on a tag with dedup settings on, or a value parameter that is not a plain number. Read the actual response body, not just the status code.

Why this happens

The Google Ads conversion tracking tag sends a request with several required and optional fields - the Conversion ID and Label together identify which conversion action in your Google Ads account this hit counts toward. A 400 means the server parsed the request and rejected it as invalid, which is a request-shape problem rather than a network or blocking problem, which would show as no response at all.

Fix it

  1. Open the Network tab, find the failing request to googleadservices.com or the pagead/conversion endpoint, and read the actual response body, not just the 400 status - it typically names the specific rejected field.
  2. Verify the Conversion ID and Label in your GTM tag match exactly what is shown in Google Ads under Tools & Settings > Conversions > your conversion action > Tag setup - a Label copied from a different conversion action in the same account is a common cause.
  3. If enhanced conversions or a dedup transaction_id is enabled, confirm the value is actually populated at fire time - a blank or malformed transaction_id on a tag configured to require one is a common 400 cause distinct from the ID/Label problem.
  4. Confirm the value parameter, if set, resolves to a plain number, not a currency-formatted string or undefined - check the Variables tab of the tag's firing record in Preview.
  5. If the tag never calls its success callback rather than showing an explicit 400, check whether a Consent Mode denial or an ad blocker is preventing the request from completing at all.

How to verify it worked

After correcting the identified field, reload and check the Network tab for the same request now returning a 200/204. Then check Google Ads' own conversion diagnostics (Tools & Settings > Conversions > the conversion action > Diagnose issues), which reports recent tag health independently of your own testing.

Still stuck after working through this?

Send us what you are seeing in Preview and the Network tab. We trace GTM containers for a living and can usually tell you what is actually happening in one look.

Ask a GTM Engineer