A form submission trigger is a trigger type in Google Tag Manager that fires tags when a visitor’s browser submits a form on your page. It is one of the most common ways of recording an enquiry as a conversion in GA4, Google Ads or Meta, and one of the most common sources of wrong conversion figures.
How the form submission trigger works
Once the trigger is added, GTM listens for the browser’s standard submit event on form elements. When it hears one, it pushes a gtm.formSubmit event, and any tag attached to the trigger can fire. Two settings shape its behaviour:
- Wait for tags holds the submission briefly, up to a maximum wait you set, so tags have time to send before the browser moves to the next page.
- Check validation fires the trigger only if the form’s submission was allowed to go ahead, rather than on every press of the submit button.
You can fire it on all forms or only on some, with conditions based on built-in variables such as Form ID, Form Classes, Form URL or Page URL. Those variables have to be switched on in the workspace before you can use them.
The trigger has a structural blind spot. Many modern forms do not use the browser’s standard submission at all. AJAX forms in WordPress plugins, forms built in JavaScript frameworks, and forms embedded in an iframe from another domain, such as many booking and survey tools, either never produce the event GTM is listening for or produce it before the server has accepted the entry. The trigger cannot see whether the email actually went out.
Why it matters
If you run Google Ads or Meta ads for enquiries, the conversion that this trigger fires is what the bidding algorithm learns from. A trigger that fires on failed attempts, newsletter boxes and site search will teach the platform to find more of the wrong people. A trigger that never fires leaves the campaign with nothing to optimise towards.
Remember that a trigger firing does not override consent. Under PECR, analytics and advertising tags should only send data when the visitor has agreed, so the tags attached to the trigger still need the right consent settings.
Common mistakes
- Using All Forms, so the newsletter sign-up and the site search box count as leads.
- Leaving Check validation off and counting every click on the submit button.
- Running the trigger alongside GA4’s automatic form_submit event and counting the same enquiry twice.
- Assuming it works with an AJAX or iframe form without testing.
- Testing only a successful submission and never an empty or invalid one.
How to act on it
Test in GTM’s preview mode with three attempts: an empty form, a form with an invalid email, and a genuine entry. Only the last should fire your conversion tag. Then compare a week of recorded conversions with the entries in your form plugin or inbox; the two should be close.
If the trigger misfires, use a more dependable signal. The best option is a success event the form itself pushes to the data layer, and many WordPress form plugins offer one. Failing that, redirect to a thank-you page and track that page, or use an element visibility trigger on the success message. Getting this right is one of the first checks I make in PPC management, because no amount of bid tuning fixes a conversion that counts the wrong thing.
