Skip to content
  • Analytics
  • Tag Manager
  • PPC
  • SEO
  • Directories
  • News
  • Write for us
  • Contact
gtm ga4 seo ppc consultant

seo mileage

marketing + analytics

  • Services
    • SEO Services
    • Digital Marketing
    • GTM & GA4
  • Glossary
  • Classified Home
  • Add Listing
  • Toggle search form
track forms through gtm

Track iFrame Forms with Google Tag Manager

Posted on April 18, 2023September 25, 2024 By seomileage No Comments on Track iFrame Forms with Google Tag Manager

How to track iFrame forms with Google Tag Manager.

This is much requested tutorial where I will tell you how to track iframe within our website using Google Tag Manager. Let me tell you first about iframe. iFrame is basically a third party code or website within our website. Before going forward I am sure you have access to that iframe code and you can make changes there.

Basically, We are here using postmessage api of browser which allows us communicate between iframes. Below is step by  step tutorial to track iframe forms using google tag manager.

  1. Install Google Tag Manager by putting gtm tracking code into iframe html code
  2. Identify form id or form class of the form you want to track
  3. Create Trigger – Form Submission equals :Form id/class
  4. Create Tag – Sender Postmessage choose above trigger
<script>
  try {
    var postObject = JSON.stringify({
      event: 'iframeFormSubmit',
      form: 'Contact Us'
    });
    parent.postMessage(postObject, 'https://www.yourmainsite.com');
  } catch(e) {
    window.console && window.console.log(e);
  }
</script>


  1. Create Tag – Listener postmessages
<script type="text/javascript">
  (function(window) {

    addEvent(window, 'message', function(message) {
    try{
     var data = JSON.parse(message.data);
     var dataLayer = window.dataLayer || (window.dataLayer = []);
     if (data.event) {
       dataLayer.push({
         'event': data.event,
         'postMessageData': data
       });
     }
    }catch(e){}
    });
 
    //Cross-Browser event listener
    function addEvent(el, evt, fn){
     if (el.addEventListener) {
       el.addEventListener(evt, fn);
     } else if (el.attachEvent){
       el.attachEvent('on' + evt, function(evt) {
      fn.call(el, evt);
       });
     } else if (typeof el['on' + evt] === 'undefined' || el['on' + evt] === null) {
       el['on' + evt] = function(evt) {
         fn.call(el, evt);
       };
     }
    }
  })(window);
</script>


  1. Create DataLayerVariable for form – dlv-form

postmessageData.form

  1. Create Tag GA Event Tag

Category : FormSubmit

Action: dlv-form

Choose Trigger : Custom event – iframeformSubmit

  1. You are done. You can see the event appears in the Google analytics real time events sections. You can further use those event fields to create goal.

Reach out to me in case of any query or concerns regarding iframe google tag manager. Also comment if you want me to share any other tutorial in my blog.

Analytics, Google Tag Manager Tags:gtm, iFrames, tracking

Post navigation

Previous Post: Local SEO Strategies For Doctors And Dentists
Next Post: 40 Google Analytics Individual Qualification Questions you may find difficult to Answer

Related Posts

top marketing automation platforms 5 Best CRM Platforms in 2023 Analytics
[Solved] How to Set Up Cross-Domain Tracking in GA4 with Multiple GTM Containers for Separate Domains Analytics

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

seo blog

Marketing + Analytics Tips to help you achieve your Digital Marketing Goals!

Copyright © 2025 seo mileage.

Powered by PressBook Grid Dark theme