How double firing happens
A tag fires when the conditions of its trigger are met. Double firing is when those conditions are met more than once for something the visitor experienced as a single action, so the same event reaches your analytics or ad platform twice. The person filled in one form; the report says they filled in two.
The causes are structural rather than mysterious. The same tag is installed in the site theme and again in Google Tag Manager. A form trigger listens for the submit event and a second trigger fires again on the thank-you page. A click trigger set to catch all elements matches both the button and the wrapper it sits inside. On a site that loads pages without a full refresh, a history change trigger repeats the page view every time the address bar changes. Browser-side and server-side copies of the same purchase arrive with nothing to tie them together.
Why double firing matters
Every number downstream inherits the fault. Conversions inflate, cost per conversion falls, and the campaign looks better than it is — which is the dangerous direction, because nobody investigates good news. A client sees a healthy lead count in the dashboard while the inbox tells a quieter story, and trust in the reporting goes before the error is found.
Automated bidding suffers more than reporting does. Smart Bidding learns from the conversions it is given, so a doubled event teaches the system that a keyword, audience or placement is worth far more than it is, and budget shifts towards it. Fixing the tag later does not refund the spend it caused.
Common mistakes with double firing
The most common mistake is simply not looking. Nobody compares the enquiries that actually arrived with the conversions the platform recorded, so a duplicate sits in place for months and quietly shapes every decision made in that period.
The second is reaching for the wrong fix. Deleting a tag when the real problem is an over-broad trigger removes tracking instead of repairing it. And event deduplication is often mistaken for a cure-all: matching event IDs stop the browser and the server counting the same action twice, but they do nothing about one badly scoped trigger firing twice in the same browser.
How to act on it
Test with a real submission rather than reading the configuration. Open preview mode in Tag Manager, watch DebugView in GA4, and complete the form, the call click and the checkout yourself. A duplicate is obvious the moment you see the event stream; it is invisible in a monthly report.
Then reconcile against something outside analytics — the enquiry inbox, the CRM, the phone log. If the platform is ahead of reality, assume a tag problem before you assume the marketing worked. Do the same check whenever the site is redesigned, a plugin is added or a new platform’s tag goes on, because those are the moments a second copy appears.