Monitoring

How Do You Know If Your Website Tracking Is Broken?

8 min read··By the TrackingCoder team
A purchase event chart that flatlines to zero after a theme update, with an alert card saying the purchase event has not been seen and was emailed to you.

Broken tracking rarely announces itself. GA4 keeps showing page views, Google Ads keeps spending, and the only clue is a number that quietly makes less sense than it did last month. Here are the seven signs to look for, a ten-minute check you can run right now, the causes we see most, and how to be alerted next time instead of finding out at month end.

Seven signs your tracking is broken

  1. A conversion drops to zero overnight while traffic stays flat. Real behaviour changes gradually; tracking breaks on a deploy.
  2. Conversions double. Two purchase events per order, or a form submission that fires on page load, usually after a plugin update or a duplicated tag.
  3. Google Ads says "No recent conversions" or "Inactive" on a conversion action that used to record.
  4. Meta Events Manager shows no activity for an event that fired last week.
  5. GA4 Realtime shows nothing when you test it yourself. The most reliable sign, and the one nobody checks.
  6. Your ad platform's automated bidding gets worse without a change in budget or creative. It is optimising towards fewer or wrong signals.
  7. Revenue in GA4 disagrees wildly with your shop's own reports. Small gaps are normal; a 40 percent gap means purchase tracking is missing orders or counting some twice.

The ten-minute check

  1. Test each conversion yourself. Open GA4 Realtime in one tab and your site in another. Submit the form, click the phone number, add to cart, place a test order. Each event should appear within a minute, once.
  2. Open GTM Preview and repeat. Tag Assistant shows which tags fired on each action, and which did not. A trigger that no longer matches shows as "not fired".
  3. Check Meta. Events Manager, Test Events, perform the action, confirm the event and its name.
  4. Check Google Ads. Goals, Conversions, look at the status column and the last conversion date for each action.
  5. Check consent. Decline cookies on your banner and repeat the GA4 test. With Consent Mode v2, GA4 should still receive modelled pings; without it, a banner update can silently block everything.

The usual causes

CauseWhat it looks likeFix
Theme or plugin update changed a class nameButton or form event stops; page views fineUpdate the trigger selector; a scan-based regeneration does this in one go
Checkout or booking tool changed its confirmation pagePurchase or booking event stopsPoint the trigger at the new page or data layer event
Someone published a GTM version that removed your tagsSeveral events stop at onceRestore the earlier version from GTM version history
Consent banner update blocks tags by defaultBig drop in all events, mostly EU and UK trafficFix the consent integration; enable Consent Mode v2
Duplicate tags after an import with Overwrite or Merge without renamingConversions doubleRemove the duplicate; always Merge and rename
Tracking ID changed or property was recreatedEverything stopsUpdate the ID in the GTM variable
Attribution missing rather than brokenConversions arrive but with no sourceSee tracking the traffic source of an event

How to find out on the day, not at month end

Manual checks work if you do them. Most people do them once, after a scare, and then stop. The reliable answer is monitoring that watches each event per site and compares it with what normally happens:

  • No-activity alerts: the purchase event on a shop that usually fires hourly has not fired for a day.
  • Drift alerts: form submissions are down 60 percent versus the trailing average while traffic is flat.
  • Spike alerts: an event suddenly fires ten times more, which usually means a duplicate.
  • Probe checks: a scheduled test that loads the site and confirms the container and key tags are still present.

GA4's custom insights can cover the first two for a single property with some setup. For agencies and anyone managing more than one site, a dedicated monitoring layer is easier because it shows every domain in one place.

Where TrackingCoder fits

TC Pro, the monitoring layer of TrackingCoder, watches every event on every domain you manage and shows live counts, goals and traffic sources per site. It sends no-activity, drift, spike and probe-failure alerts by email and in the dashboard, so a broken purchase event is a same-day fix rather than a month of bad bidding data. When something has changed on the site, regenerating the affected event from a fresh scan is included. If you have not set up tracking yet, start here; if you want to see what a site is currently running, use the free tracking detector.

Skip the manual setup

TrackingCoder detects your CMS and plugins automatically, then generates ready-to-use tracking code. No more adapting generic tutorials - get code tailored to your exact setup in under 2 minutes.

Try TrackingCoder Free →

2 free credits on signup. No card required.