You’re running into one of the trickiest parts of conversion tracking: the iframe.
When you embed a form using an iframe from a service like Brevo, you’re essentially placing a window to a separate website onto your own page.
Because of a security measure in web browsers called the same-origin policy, the code on your main page - including your Google Tag Manager script - can’t easily see or interact with what’s happening inside that iframe, which is why a standard GTM Form Submission trigger likely won’t work to track the conversion.
One of the most robust and reliable ways to track a confirmed form submission, especially from an iframe, is to use a server-side solution, which completely bypasses the limitations of the client-side browser tracking that you’re currently facing.
This involves a stack of tools like the Brevo API + Google Ads API + Google Analytics Data API + Google Tag Manager, potentially utilizing a server-side tagging environment like Stape or Google Cloud Platform.
The reason this is a good solution is because you’re moving the conversion validation from the user’s browser, which can be blocked by ad blockers or complicated by iframes, to a system you control on the server.
Brevo, once it successfully processes the form, can use its API or a webhook to send a confirmation signal to your server-side GTM container (Stape or GCP).
From there, your server-side GTM can then use the Google Ads API to report a conversion directly to Google Ads, typically as a Lead or Purchase Standard Event, and use the Google Analytics Data API to send a corresponding event to your GA4 property via the Measurement Protocol.
This method ensures that the conversion is attributed only upon a confirmed submission on Brevo’s side, provides a more reliable data stream, and gives you total control over the data sent to Google’s platforms, which is the gold standard for conversion tracking, especially when dealing with complex setups like third-party iframes and popups.