Typeform Google Ads Conversion Tracking Guide (2023)

Other tutorials don’t work. You read that right – other tutorials for tracking Typeform submits as Google Ads conversions (or any Typeform conversion) do not work. They might look like they do, but they send conversionss from the wrong domain which doesn’t have the Google Ads cookie. Read on…

This is the only working tutorial for Typeform conversion tracking

I can’t emphasise this enough. Other tutorials don’t work. The built-in Typeform Google Tag Manager integration doesn’t work.

Simply, the reason is that Typeform is inside an iFrame, so it's a window to another website. And that other website doesn't share the Google Ads Conversion Linker cookie. Google Ads conversion cookie is only stored on your website, not with Typeform.

Other tutorials might (kind of) work with Google Analytics – if you make a crazy complex setup using Typeforms hidden fields and inputting UTM codes there. But they do not work for Google Ads.

Repeat after me: ”Other tutorials for tracking Typeform submits as Google Ads conversions do not work. On January 12th 2023, this is the only method that works for tracking Typeform Conversions in Google Analytics. Others lead to tears and wasted Google Ads budget”

I hope that grabbed your attention.

This post will explain why other methods do not work. I’ll also explain the only working method for Typeform & Google Ads conversion tracking –with the help of Google Tag Manager.

Google Ads conversion tracking - Why you need it

If you’re running Google Ads, and one of the important actions is someone filling the Typeform on your website, it’s absolutely must that you keep track of each successful Typeform form submit, and send that information back to Google. The reason is, you don’t want visitors, you want conversions.

You don’t care if 1000 000 000 people visit your site if none of them fill your Typeform. On the other hand, if just 500 people visit your website but everyone fills your Typeform you have a huge business.

Without conversion tracking, and telling Google Ads about each Typeform submit and which Google Ad campaign and specific Google Ad lead to that conversions, you are wasting your Google Ads budget.

It’s like shooting a gun blindfolded – you have no idea know if you’re hitting or missing every shot.

Before any Google Ads campaign

Before running any Google Ads, there are two things you must do.

A) You must have conversion tracking in place. Whether it’s e-commerce sale, or in this case, Typeform form submi
B) You must do a keyword research to find out what people are really searching for.

Without those two, you are 100% sure to waste your money.

The challenge with Typeform Google Ads conversion tracking

The problem is, Typeform is another website. It looks like it’s added to your website, but it’s only a “window” to another website: https://form.typeform.com/your-form

Because it is another website, it doesn’t share the Google Ads cookie that was set when visitor clicked on your Google Ad.

Your website know that the visitor came through a Google Ad. Typeform does not.

You can check the details of the Google Ads conversion linker cookie here. There seems to be a method for conversion tracking across domains, which could be another possible solution for tracking Google Ads conversion by sending the conversion from typeform.com directly:

”Link across domains

Conversion linker tags in web and AMP containers can be configured to link across domains for cases where you have the landing pages and conversion pages on multiple domains. When you select this option, hyperlinks that point to a linked domain will have a linker parameter appended to the URL. A destination domain with a compatible linker tag will check inbound URLs for linker parameters. If a valid linker parameter is found, a 1st party measurement cookie is extracted and stored. ”

…however I still think the method shown below is better. It has no downsides, and it even works with the free version of Typeform. It’s definitely better if you’re tracking anything in addition to Google Ads Conversions, like Facebook pixel events. So it’ll always keep those conversion tracking options possible in the future 🙂

The problem with Typeform’s built-in method for tracking Google Ads conversions

So this leads to the #1 problem in tracking Typeform conversions. Or tracking any iFrame conversion. Cookies are not shared.

This means that the Google Ads cookie is not shared with Typeform.

Your UTM codes are not shared with Typeform.

The referrer (the website that lead to your website, like google.com or facebook.com) is not shared. Traffic inside Typeform with look like direct traffic, like someone wrote your url in their browser, even if they really came from google.com and clicked on a Google Ad.

Why I don’t like other tutorials for tracking Typeform submits as Google Ads conversions

A popular tutorial for tracking Typeform conversions is the Typeform Conversion Tracking in Google Tag Manager Tutorial by martian.ventures.

The reason I do not like that tutorial (although their website looks fantastic) is that…well, it doesn’t work.

All the problems I explained above, it doesn’t have a solution for them. I even has a section titled ”How to add a Google Ads conversion pixel to Typeform?” but it totally fails to deliver, because in that tutorial Google Tag Manager is installed inside Typeform, instead of installing it to your website.

It goes into great lengths to do things like add UTM codes to Typeform via hidden fields and editing Google Ads to add typeform.com to Google Analytics "Referral Exclusion List".

Sorry, but it’s just a bad idea. The real solution is million times simpler – just send the conversion from your website instead of sending it via from Typeform.com. Install Google Tag Manager to your own website instead.

You can even use the free version of Typeform unlike with that complex method which doesn’t work for Google Ads.

Solution: How to track Typeform submits as Google Ads conversions?

So other methods don’t work. What can we do instead?

The solution takes a bit of effort but it’s worth it. And it’s the only method that works, so you kind of have to do it. Here are the steps:

In your Google Ads account, go to conversions and create a new conversions. Name it ”Typeform Submit (GTM)”. Click next, and for installation select “Google Tag Manager”

Install Google Tag Manager to your website by copy-pasting the container code to your websites <head> tag, as high as you can get it.

The Google Tag Manager noscript -tag is useless, don’t bother installing it.

Inside Google Tag Manager create a new custom HTML tag called “Typeform submit listener”.

Google Tag Manager Typeform submit listener custom HTML tag

Add a script similar to this. It should listen for any Typeform submits.

Fire that custom tag on all pages.

Google Tag Manager Typeform - triggering on all pages

Modify the script above to fill the Data Layer with a custom event, for example it could be called 'typeform-submitted-successfully'.

You can also send the Typeform form ID to the datalayer, by adding something like 'typeform-form-id': data.formId

Inside Google Tag Manager, create a User-Defined Variables, and select Data Layer Variable. Name it “dl.typeform-form-id” and for Data Layer Variable Name add “typeform-form-id“.

Google Tag Manager data layer variable for Typeform form-ID value, for Google Ads conversion tracking

In Google Tag Manager, create a new tag and select Conversion Linker (Google). Fire that to be triggered on all pages.

Now, create a new tag and select “Google Ads Conversion Tracking”. Name it “Google Ads - Typeform Success”.

Create a new trigger and select “Custom Event”. You can name it “Successful Typeform Submit”.
For it’s Event name add: “typeform-submitted-successfully”

Google Tag Manager custom event trigger for Typeform submit

Copy-paste the Conversion ID and Conversion Label from your Google Ads account. For trigger choose the “Successful Typeform Submit” Custom Event you created in the previous step.

You can now preview in Google Tag Manager, and fill your typeform. In the Google Tag Assistant window you should see your “Google Ads - Typeform Success” fired.

Visit your Google Ads account admin panel. The conversion you created called Typeform Submit (GTM)” should turn from “Unverified” into “No recent conversions”.

Perfect. Last step is to publish your Google Tag Manager container.

New Google Ads Enhanced conversions and Typeform?

Unfortunately it’s not possible to use Google Ads Enhanced Conversions with this setup. The Google Ads Enhanced Conversions is based on adding some user data, like their name, email or phone number in the conversion. Unfortunately, unlike Hubspot or Acuity Scheduling, Typeform is not kind enough to share that information through the iFrame and to the the parent window where we have our Google Tag Manager and our Google Ads conversion tracking tags.

I’m looking into a solution using a redirect and custom thank you page. We are able to send Typeform variables into the thank you page URL. But it seems that we cannot assign answers (like email adderrss or phone number) as those variables – annoying! So it seems like we have to use normal Google Ads conversions and skip the enhanced conversions for now.

Would you like me to help you install Typeform conversion tracking?

I’d love to do that. Please get in touch via @hire. I’m looking forward to hearing from you :)

Previous
Previous

Squarespace + Google Analytics 4 E-Commerce purchases showing $0 value?

Next
Next

Calendly + Google Ads Conversion Tracking (2023)