Double tracking of HubSpot form submissions in GTM

Hey everyone, I’m having a weird problem with tracking HubSpot form submissions in Google Tag Manager. Our site is a single-page app with three HubSpot forms. I set up a custom HTML listener tag to track submissions, plus a lookup table for friendly form IDs.

The issue is when I test it and fill out more than one form in the same session, the second submission shows up twice in the debug console. I don’t want to set the tag to fire once per event because users might actually fill out multiple forms.

I’m not sure what to do. Should I ask our devs to add dataLayer pushes for each form instead? Has anyone run into this before or have any ideas? Thanks for any help!

I have encountered a similar issue with HubSpot form tracking in GTM and resolved mine by using a custom JavaScript variable to track if a form submission event had already been processed. Instead of hardcoding lists, I implemented a check within the listener tag before firing an event and updated a variable after each submission. This ensures that duplicate firing is prevented while still allowing multiple submissions in one session and avoids the need for additional dataLayer pushes by the developers.