Why are my custom events not being forwarded to GA4?

Kilian Müller
Kilian MüllerOwner of 1hold.de · Google PartnerUpdated
Google Tag ManagerGoogle Certified Specialist

Custom events usually do not reach GA4 because the event name in the data layer does not match the trigger in Google Tag Manager, the GA4 event tag never fires, or the tag is blocked by consent settings. Less often the event does arrive, but you are looking in the wrong place: new events and parameters take time to show up in standard reports, and parameters only appear there once you register them as custom dimensions.

The chain has three links: your website pushes an event into the data layer, a Tag Manager trigger reacts to it, and a GA4 event tag sends it to your property. The fastest way to find the break is to check each link in that order.

Where does the chain usually break?

  • Name mismatch. The trigger listens for form_submit_success, but the website pushes formSubmitSuccess. Custom event triggers in Tag Manager compare the name exactly, including upper and lower case.
  • Trigger conditions not met. The trigger fires only on certain pages or only when a variable has a certain value. If that condition is false when the event happens, the tag stays silent.
  • Wrong or missing measurement ID. The GA4 event tag sends to a different property, for example a test property, or the measurement ID variable is empty on some pages.
  • Consent blocks the tag. If the visitor has not consented, the Google tag works according to your consent mode setup. With a strict setup no event is sent at all, so it cannot appear in DebugView.
  • Reserved or invalid names. GA4 has reserved event names, such as form_submit, click or page_view, and reserved parameter prefixes. Event names are case sensitive, must start with a letter and may only contain letters, numbers and underscores.
  • Container not published. Changes that only exist in the workspace work in preview mode but not for real visitors.

How do I find the cause step by step?

  1. Start preview mode in Tag Manager and trigger the event on your website. In the left-hand event list, check whether your custom event appears with exactly the expected name.
  2. Check the data layer. Click the event and open the Data Layer tab. Are the event name and all parameters there with the values you expect?
  3. Check whether the tag fired. In the Tags tab, find your GA4 event tag under “Tags Fired” or “Tags Not Fired”. If it did not fire, open the trigger and compare every condition with the actual values shown in preview.
  4. Check consent. In the Consent tab of preview mode, check whether analytics_storage was granted at the time of the event.
  5. Check arrival in GA4. Open Admin → Data display → DebugView while preview mode is running. If the event appears there with its parameters, collection works.
  6. Register parameters. If you want to use a parameter in reports, create a custom dimension or metric for it. According to Google, it takes 24 to 48 hours until you can report on it.

Why does the event show in DebugView but not in reports?

DebugView shows incoming events almost immediately. Standard reports need processing time, so a new event can be missing there for a day or two. Parameters you have not registered as custom dimensions are collected but do not appear as their own dimension in standard reports. Check in Explorations or after the processing time before you change the setup again.

Use one naming convention for all custom events, lower case with underscores, and keep the data layer name and the GA4 event name identical. Test every new event in preview mode and DebugView before you publish the container.

Sources

Are your custom events still missing in GA4? We check data layer, triggers, consent and property settings and fix the gap step by step. Book a free intro call or read more about our tracking agency.

Need personal advice?

Our Google-certified experts are happy to help – free and without obligation.

Book a meeting