Highlighted

iFrame causing second pageview

Rookie Contributor

We have a microsite that includes an iFrame in the footer which includes a simple email submission form.

The tealium tag is implemented in the template on both the parent page and the iFrame (although it doesn't have to be). What we're seeing now is an additional page view being sent to our analytics tools (Adobe and GA), which we'd like to prevent.

What is the best way to do this? The reason the Tealium tag is located in the iFrame form is that we want to use Tealium to track form submissions for this form (We fire a utag.link() call on form submissions).

I don't think we want to create a specific load rule for our analytics tags to exclude this particular page, due to the overhead. How is this type of thing typically done?

In summary, we want to track the form submission for the form contained in the iFrame but not fire a utag.view() for the iFrame load.

3 REPLIES 3
Highlighted

iFrame causing second pageview

Tealium Employee

Hey Jon,

It sounds like you just want to suppress the initial, automatic page view from Tealium for the iFrame. You can take advantage of our configuration options to do this. In a JS extensions scoped to Pre-Loader, you could use the following code with an if statement that checks for the url of the iFrame:

if(location.href == "YOUR IFRAME LOCATION HERE"){
window.utag_cfg_ovrd = {noview:true};
}

This would prevent the initial page view from occurring, but won't block the subsequent utag.link() on the form submit.

Let me know if that helps.

Highlighted

iFrame causing second pageview

Rookie Contributor
This is perfect, Gilbert. Thanks so much!
Highlighted

iFrame causing second pageview

Silver Contributor
Silver Contributor

Hi

 

The below is how it should be setup:

 

1) The iFrame should be on the same domain as your site. You need this, Use CNAME trick to fix this, if not on the same domain.

2) If or Once the iframe is in the same same domain, do not include the Tealium script in the iframe. Rather, use parent.utag.view({}) or parent.utag.link({}). What this does is, it calls the utag function of the outerframe.

3) If for any reason you don't want the outer frame to be tracked, exclude it in the load rule.

 

This way it's setup correctly and never have the issue of double views.

 

Cheers,

Sam Samrat D'souza