Jotform Conversion Tracking – 7 methods ranked best to worst

I can’t believe how bad the recommended solutions are…

Let’s clear up some confusion. Several Jotform conversion tracking methods (even ones recommended by Jotform) do not really work. You could follow every step exactly, but it wouldn’t matter. The solutions suggested are bad.

Some used to work, but are now outdated. Some have never worked. Others are almost like a joke. Most waste your time.

We’ll explain why they don’t work, and recommend better alternatives.

All methods listed and ranked

We will list and rank every Jotform conversion tracking method on a scale of 0–10 on difficulty and accuracy. You can find a fast method or the best one if you run a serious business.

You will save time not trying to use bad methods and will find a solution that works for you. Let’s go!

Conversion Tracking for Jotforms — why it’s important

Conversion tracking is the foundation of a website. It’s the base on which the rest is built.

Imagine going to a doctor and not having blood work done, everything would be pointless without the ability to measure key metrics to see — to see what works, and what doesn’t. That’s why we’re called conversiontracking.io. Not doing conversion tracking is like trying to learn golf with your eyes closed – you have no idea if your marketing works.

If you have a Jotform on your website, you must track how many Jotform submissions you get, where the users come from, how well your ad campaigns perform etc.

You can also check my blog post on Jotform + Google Tag Manager integrations.

TL;DR -Short Version

Jotform conversion tracking is important. You don’t want to run your website without it.

Jotform conversion tracking is difficult. There are a lot of solutions suggested. Most of them suck. A few of them do not work at all.

I recommend not wasting time with bad solutions, and getting the Jotform Conversion Tracker. It’s not free, but it really works.

Jotform Conversion Tracker
$29.00

The quickest, hassle-free way to track Jotform conversions. A pre-built Google Tag Manager setup you can install with a few clicks. Includes step-by-step video instructions. A 5-year-old could install this.

Demo video for the product 👇


3 Levels of Tracking

To illustrate why Jotform conversion tracking and Jotform Google Tag Manager integrations are vital, let’s consider three scenarios — different levels of accuracy in our Jotform conversion tracking.

Level 1 — No Conversion Tracking for our Jotforms

Screenshot of Jotform Google Analytics conversion tracking example - in this example we do not have Google Tag Manager tracking in place, so we do not see how many Jotform submits we got

👆 We don’t know if we’re making money or wasting money.

You can see how many clicks you got and try to guess.
But every visitor may have bounced after 1 second and got you 0

Maybe Campaign A is better? We don’t know.

Level 2 — Tracking Jotform Submissions

Screenshot of Jotform Google Analytics conversion tracking example - in this example we have have Google Tag Manager tracking in place, so we now see how many Jotform submits we got

👆Now we’re talking! We added basic conversion tracking using Google Tag Manager, and see that although Campaign B brought in fewer clicks, it brought in more Jotform submissions.

We don’t care about clicks, we care about conversions. We have a more accurate picture.

Maybe Campaign B is better after all?

Level 3 — Tracking Profit with “Offline Conversion Tracking”

Screenshot of Jotform Google Analytics conversion tracking example - in this example we have have Offline Conversion tracking in installed,  we see how many Jotform submits we got and how much profit those made

👆Take a close look.

In our third scenario, we added “offline conversion tracking” – the most advanced option. We also track conversions in the real world (instead of our website), clients paying an invoice or with a credit card at our physical location.

Although Campaign B brought in 10 leads. No purchases.
Campaign A brought in only 3 leads. One bought for $5000 🎉🥳.

Campaign A is better.

The deeper and more accurate our data is, the better decisions we make with digital marketing. You cannot do serious business, without conversion tracking your Jotforms, and integrating with Google Tag Manager.

In this article we’ll cover:

  • Why you should integrate Jotform with Google Tag Manager, and implement Jotform conversion tracking

  • The different methods to track Jotforms, with (and without) Google Tag Manager

  • The pros and cons of the different Jotform tracking methods

  • Why you (probably) want to get a pre-built Jotform Google Tag Manager setup, instead of making your own

  • Info on specific tools, like Jotform → Google Analytics (GA4) events, Jotform → Google Ads conversions, Jotform → Facebook Pixel conversions

  • More important Jotform & Google Tag Manager info

Video

Jotform Google Tag Manager & Conversion Tracking video coming soon!

Video Block
Double-click here to add a video by URL or embed code. Learn more

7 Ways to Track Jotform Conversions

If you want to send conversion events for Jotform submits, to Google Analytics (GA4), Google Ads, Facebook Pixel, TikTok Pixel, Linkedin Insight Tag & More

There are seven ways to approach Jotform conversion tracking:

  1. Jotform iFrame JavaScript listener, via a Google Tag Manager custom HTML Tag

  2. Redirect from Jotform to an external page, and track page views and URL parameters with Google Tag Manager

  3. Prepopulating hidden fields in Jotform — e.g. Google Ads offline conversion tracking

  4. Built-in GA4 integration with Zapier

  5. Using Jotform Source code embed with Google Tag Manager form submission trigger

  6. Jotform Google Analytics Widget

  7. NEW - Google Analytics “Create Event” based on page_location

It’s a pre-built Google Tag Manager container, with all the tags and triggers ready. Just copy your Google Analytics and Google Ads ID’s!

Jotform Conversion Tracker is a reliable, easy-to-use, professional setup, which saves hours or even days you can spend on more important things than getting 👨‍🦳 grey hair with Google Tag Manager.

Which method to use?

A) I’d never use methods 4, 5 or 6. They suck

B) If I had a small side-venture, e.g. a one-person website, I would use Method 1: Simple iFrame listener, ideally from the Jotform Conversion Tracker. Quick, cheap and easy.

C) If I had a bit more serious business and especially if I ran Google Ads, I’d use Method 2: redirect. The more accurate Google Ads Enhanced conversions, and the option to send Jotfform field values to GA4 make it better long term.

D) If I were really ambitious, running a real business and if I wanted to know how much revenue (not just how many form submits, but how many dollars) the new clients from my ad campaigns bring to my business, I would combine both Method 2: Redirect with redirect, and Method 3: Prepopulate.

E) If I needed a quick solution for a small company with zero money to invest, I might use method 7 (temporarily) to get a solution that’s not 100% perfect but gives maybe ~70% result.

💎 Using Method 2 and Method 3 together is the best possible Jotform conversion tracking –especially if we add Facebook Conversion API not to lose valuable data to ad blockers.

Why is Jotform so hard to track?

Jotform conversion tracking and Jotform Google Tag Manager setups are difficult because Jotform is a form hosted on another website. It’s not part your website although it may look like it is.

If you use a WordPress form plugin or a Squarespace contact form, the form is a part of your website’s HTML. You have complete access to it and know what happens inside.

Jotform forms are hosted on jotform.com, not inside yourwebsite.com. You cannot add custom code (like Google Tag Manager) to jotform.com, any more than you can add custom code to facebook.com or conversiontracking.io – you don’t have permission.

Even if Jotform is embedded inside your website, as an iFrame, and it looks like a part of your website, it’s not. It’s a different website, just jotform.com/yourform added as a window inside your website.

We don’t know what happens inside the Jotform, so we need workarounds to for when a visitor clicks the Jotform submit button and converts.

Jotform tracking methods:

1) iFrame JavaScript Message

One of the best methods to track Jotform conversions is to use a Custom HTML tag in Google Tag Manager, add a JavaScript listener, and listen for a message our Jotform iFrame always send to the parent window (our website) when the Jotform is successfully submitted.

Jotform Google Tag Manager custom HTML Javascript listener for iFrame conversion tracking

My Jotform Conversion Tracker is the easiest way to listen for Jotform iFrame messages and send conversions with Google Tag Manager. It hosts a pretty complex JavaScript code, which works out-of-the-box without doing anything.

Simple, easy, and reliable.

Jotform iFrame message pros and cons

  • 👍 Easiest
    iFrame message listener requires the least effort to set up. Just import a prebuilt Google Tag Manager container and it works.

  • 👍 Very reliable

  • 👍 No unwanted GA4 referrers
    Google Analytics will not show like jotform.com as a traffic source, which may happen if you use the redirect to an external page incorrectly. My Jotform Conversion Tracker has a fix for those, but if you do-it-yourself you will often see this very annoying problem)

  • 👍 Accurate conversion data, no duplicates
    The Jotform iFrame message is received once per form submit. But if you redirect, and the visitor refreshes the thank you page (or clicks the back button, or opens their mobile browser where they left off and the page refreshes) Google Tag Manager will send duplicate conversions leading to inaccurate data in Google Analytics especially. This is also not a problem in my Jotform Conversion Tracker, because it has a built-in duplicate prevention system.

  • 👍 No PII issues
    If you use the Jotform redirect to fire your Google Tag Manager Tags, you often do it because you want to use form field values like the email or phone number, e.g. for Google Ads Enhanced conversions. Google Analytics doesn’t allow Personally Identifiable Information (PII), so it needs to be cleaned up. My Jotform Conversion Tracker also solves this issue, the iFrame listener doesn’t have it.

  • 👎 No Jotform field values
    The only real downside of the iFrame listener method is that we can’t get field values like email, and phone, and we can’t do Google Ads Enhanced conversions, we can’t get a $ value, or some other important field information.

Result Score: 8/10
Difficulty: 7/10


2) Redirect URL Parameters with Google Tag Manager

👆This is the best, most professional, most accurate method with all the features. If your business makes $5000+ per month, this is the method you should pick. If using Google Ads, I’d always use this method. Other methods will not track as many conversions as this.

This works by using the “Redirect to an external link after submission” , sending visitors back to your website, to a page like example.com/thank-you, and using URL parameters to track conversions with all the information from the Jotform submission.

👍 Screenshot above is the right way - using URL parameters, especially the unique {id} to prevent duplicate events and faulty data

👎 This is the bad way - using a Google Tag Manager page view trigger like bad tutorials suggest

The redirect method for Jotform Google Tag Manager conversions has these pros and cons

  • 👍 Get field values
    We can now get the value of each field the user submitted! This is the biggest benefit of using “Redirect to an external link after submission” for Jotform Google Tag Manager conversions.

  • 👎 More complex to setup than iFrame listener
    Setting up the URL parameters, and a custom JavaScript that will parse the URL and populate the Google Tag Manager data layer with them, is pretty difficult. It’s easy with my Jotform Conversion Tracker though as it’s done automatically.

  • 👎 Unwanted referrers
    If you use the Jotform Redirect to an external link after submission a common problem is that Google Analytics will think that jotform.com is there traffic source (when it actually should be google.com, instagram.com or where ever the visitor came from)

My Jotform Conversion Tracker fixes these 👆 bad traffic sources automatically, which is another reason to use it.

  • 👎 Duplicates events!
    When visitors refresh the thank you page, click the back button, or open a phone browser which may reload, Googe Tag Manager sends another conversion event for the same Jotform submission.
    I wasn’t worried about this in the past but I’ve noticed that this happens a lot, and it messes up conversion data. Google Analytics has no unique ID for events (except the e-commerce ‘purchase’ event transaction_id), so event deduplication is very hard afterwards—another reason to use Jotform Conversion Tracker which only sends the first conversion, not duplicates.

  • ⚠️ Potential PII in URL
    The main reason to use redirect instead of iFrame is the field values. We get them in the URL. But a URL with PII is not ok for GA4. We must clean it first which can be difficult (my Jotform Conversion Tracker cleans the PII from the URL automatically 🙂)

Jotform Google Tag Manager tracking - screenshot example of PII (Personally Identifiable Information) email in browser URL, which can't be sent to Google analytics

Results

I give Method 2 a result of 9/10. It’s just a great setup. We get field values – yay! Ad blockers may cause issues, so it’s not 100% perfect but that’s life.

Difficulty is 9/10 when done right – the PII fixes and duplicate prevention are a hassle (unless you use Jotform Conversion Tracker) and parsing the thank you page URL parameters like email, phone number etc. into Google Tag Manager data layer requires custom JavaScript coding. Even with Chat GPT, it’s difficult hard.

Result Score: 9/10
Difficulty: 9/10

3) Prepopulate Hidden fields

An often overlooked, quite advanced method is to prepopulate hidden fields in your Jotform, with conversion information instead of only sending conversions to Google Analytics, Google Ads, Facebook Pixel etc.

I recommend doing both, sending online conversions to Goole Analytics etc and adding conversion information to hidden Jotform fields – as they have different benefits but do not overlap in any problematic way.

Screenshot - Jotform conversion tracking - prepopulating Jotform hidden form fields with GCLID (Google Click ID for Google Ads offline conversion tracking), and UTM parameteres like utm_campaign, utm_medium

The pros and cons of Jotform hidden field pre-population:

  • 👍 Offline conversions
    This is the big one. If your visitors convert through Jotform, they usually are not yet paying clients, but leads that may turn into paying clients later. When someone submits our Jotform, we don’t know yet if the value of this specific Jotform submission was $0 or $10,000. We find out later. So, the best approach is to store all conversion info inside the Jotform submission. So if the visitor came from Google Ads for example, and we know which Google Ad johnconnor@cyberdyne.com who filled our form came from, we can later send an “offline conversion” to Google Ads saying this lead, this Google Ad click was worth $10,000, when we sell a big thing to John.

    So, in Google Ads you can now see that your ad campaign brought in $10,000, instead of seeing the campaign brought in 100 form submissions, not knowing at all if they were worth $0 or $50,000.

    You can track your revenue down to a dollar, and get accurate ROAS of your digital marketing.

  • 👍 Practical
     Day to day, practical without going to complex GA4 to see anonymous data with 70% only. Instead of seeing “we got 50 form submits” you see “Steve who became a client for $10K, came from this Google Ads Campaigns

  • 👍 Super accurate!
    Ad blockers don’t block this method from working. Compared to GA4, which may lose up to 58% of data to ad blockers, especially if your target audience is tech-savvy.

  • 💁‍♂️ No downsides
    It’s just a different approach, which is best used to complement your “normal” Jotform Google Analytics, Google Ads and Facebook Pixel tracking.

If you store the conversion info to the Jotform submission itself, you can use automation tools (like make.com) to upload conversions directly, or send conversions after you’ve marked the lead as converted in your CRM like Hubspot once you know the value of the client – how much they paid you.

Make a Jotform API key…

Jotform conversion tracking - sending the Google Ads offline click conversion in the backend with Jotform API key

…and send your conversions behind the curtains.
Ad blockers won’t slow you down here👇

make.com automation to send Jotform conversions to Google Ads as "offline click conversions" with GCLID (google ads click ID) stored as a hidden field

Results

Method 3 gets the result of 10/10, because you should not lose any data to ad blockers (normally ad blockers may cut 30-50% of GA4 data) and you can track not only how many submissions, but how many dollars you got. It’s a huge difference for serious marketers. Difficulty is 10 – this is hard. We must store URL variables as cookies or localStorage, and generate the entire Jotform iFrame dynamically with JavaScript while prepopulating the hidden form fields to the iFrame src. And then add some automations to use the data which is probably the easiest part.

Result Score: 10/10
Difficulty: 10/10

Do you want 👆this setup?
I don’t have a product for this yet but get in touch if you want it.


4) Jotform Zapier Integration

🚫 This method does not work. Only listing so people know to avoid and not waste time.

Sorry to say, but this is the worst conversion tracking setup I’ve ever seen. This has so many problems it’s hard to explain. This does not make any sense.

The guy seems chill though!

I genuinely think the Jotform team has no idea what they’re doing in this video. Probably someone from high up said, “Go make a Jotform GA4 Zapier integration and a tutorial video”.

And they did.

Pros

  • None.

Cons

  • 👎 Waste of time

  • 👎 Does not do anything useful

  • 👎 Fills Google Analytics 4 property with garbage

  • 👎 Confuses people who don’t know how Google Analytics events work

  • 👎 Costs money (Zapier subscription)

  • 👎 Gives false confidence to newbies, who think they’ve connected Jotform with Google Analytics

I will try to explain, although this is so weird it’s hard.

What we would like to happen
When someone fills our Jotform, we’d want GA4 to receive a GA4 event, (like ‘form_submit’), which is would be to the Google Analytics 4 session and GA4 client ID, including the traffic source (the previous website from which the user came), any UTM parameters, Google Ads campaign info etc.

What happens instead
This automation only marks a potential event as a conversion / key event. And we never send such an event! It’s like telling someone “If you ever get a call from 555-555-5555 it’s an important call!”

But there never is a call.

We’d want to say to Google Analytics:
“Hey, Google Analytics 👋 at 9:34 pm received a new Jotform submission 🙂 The visitor came from google.com, via our Google Ad campaign B), they clicked on Ad #7. Remember this info and this event, so we can come and see how many Jotform submits we got in January, and learn where those people came from

Jotform Zapier integration to Google Analytics 4 - GA4 dashboard with real events compared to zapier just marking events we never send, as conversions

Instead, we say:
“Hey Google Analytics, just in case you ever receive an event with the name 5893568401317170400 that would be an important event indeed.

Even if this worked the event name is absolute nonsense.

✅ Examples of real GA4 event names

  • click

  • scroll

  • form_submit

  • purchase

  • add_to_cart

  • video_start

  • jotform_submit

❌ GA4 events should not be random strings like

  • 5893568401317170400

  • 5893602791318769212

  • 5893591631314312719

Also, even if this would track events instead of marking events as conversions, GA4 event names should not be unique. Event parameters like price can be unique (like $249,75 or $5499,99), but the purchase is always purchase.

In a nutshell, the Jotform Zapier integration with Google Analytics 4 marks potential events as conversions events, instead of sending events

Jotform Zapier integration to Google Analytics 4 - marking GA4 events as conversions events, instead of actually sending events

I think this👇 method could theoretically kind of work, but the tutorial used the wrong zap.

Send Measurement Events for an Application Zap could almost work, but again it wouldn’t have the traffic source, no GA4 Client ID, no UTM parameters, and no referrer ☹️

The video said, “Let us know what you think about this integration in the comments”. So I commented:

Let’s see if Jotform let the comment stay or remove it… 🙂

Results

I give this the result of 0/10 because it doesn’t work. The difficulty is 3, as the steps are fairly easy.

Result Score: 0/10
Difficulty: 3/10

5) Source Code Embed + GTM Form Trigger

🙅‍♂️ I do not recommend this method either.
This only works for some GTM tags – not all.

I only include this bad method in my article, because it’s in this popular Google Tag Manager / GA4 tutorial by Jotform itself, and is recommended by Jotform on their jotform.com/answers support forum.

I’ll show how it works, and explain why you should not use this method.

1) You embed your Jotform as a Source Code embed

Example of a bad Jotform Google Tag Manager tracking method - Source code embed instead of iFrame embed

2) Then you use the Google Tag Manager form submission trigger

Bad Jotform Google Tag Manager tracking method - normal Form submission trigger

🤞 Then you hope things will work. They won’t 🙂.

The problems with the Jotform Source Code & Google Tag Manager form trigger method:

Problem #1: It does not work

The Google Tag Manager form submit trigger does work reliably, because our conversion tags (mainly Google Ads conversion tag) do not have enough time to be sent before the redirect to submit.jotform.com

While this method may work for Google Analytics 4 events (I still do not think it’s reliable enough because the redirect is so fast) it doesn’t work for others. For example, the Google Ads Jotform conversion tag gets triggered but does not have enough time to arrive in Google Ads. The tag status gets stuck at “Still running”.

Bad Jotform Google Tag Manager tracking method - Google Ads conversion fired but stuck on "still running"


Problem #2: Pointless, annoying redirect away from your website

For iFrame embeds the “Thank you page after submission” only shows within the iFrame, so visitors stay on your website. That’s good!

But with the Jotform Source code embed, users get redirected to submit.jotform.com which is a bad experience. There is no reason to send visitors away from your website.

It also causes the problem of tags not having enough time to fire.

I have nothing good to say about the Source code + GTM Form submit trigger combo. It is an objectively bad experience, an unreliable method which doesn’t work with Google Ads conversions.

Results

I give this the result of 4/10 because the experience for the user is weird, it’s stupid to send traffic away from your website to a “dead end”, and we are stuck with no option to track Google Ads. It’s fairly straightforward as there is no JavaScript needed.

Result Score: 4/10
Difficulty: 5/10


6) Jotform Google Analytics Widget

🚫 This method does not work. We are only listing it so you know to avoid it and not waste your time.

Unfortunately, Jotform still recommends this method in their support forums, for example here.

Screenshot of Jotform support recommending an outdated Google Analytics Universal Analytics Method, which no longer works

This method doesn’t work because the widget only supports the outdated Universal Analytics, which GA4 replaced.

Result Score: 0/10 - Does not work
Difficulty: 3/10


7) Google Analytics “Create Event”

A quick and easy way to measure Jotform conversions (or Key Events as they’re now called in GA4) with no Google Tag Manager required.

Make a redirect in Jotform. Redirect to a page like example.com/thank-you

In GA4 use “Create events” and do a setup like this

We make a new GA4 event based on another event. So pageview where the page_location contains “thank-you”, will result in a new event.

We can then mark this new event as a GA4 Key Event / Conversion.

Pros

  • 👍 Super easy

  • 👍 Doesn’t need Google Tag Manager (although I still recommend it)

  • 👍 You can import the Key Event to Google Ads conversion for semi-decent Google Ads conversion tracking. It’s an ok temporary solution for very small companies

Cons

  • 👎 Google Analytics only. No Meta Pixel, No Google Ads conversion. No TikTok, No LinkedIn, Reddit, Twitter etc.

  • 👎❗Google Ads Conversion is less accurate than using Google Tag Manager Google Ads Conversion tag, because

    1. ☹️ Ad blockers are more of a problem with Google Analytics than with Google Ads

    2. 🤔 Data attribution usually assigns clicks differently, showing 10-30% less Google Ads conversions

    3. 😭 You can’t do Google Ads Enhanced Conversion tracking

  • 👎 Event count will not be as accurate, due to duplicate events for one Jotform submission. Refreshing the thank you page (especially when re-opening the mobile browser with the last page loading again)

  • 👎 No Jotform field values

I rate this method 6. It’s an ok solution if you only use Google Analytics. This will work temporarily if you’re a one-person company and can’t invest in a more accurate Jotform Conversion Tracking setup.

Difficulty is 3, no Google Tag Manager, no coding.

Result Score: 6/10
Difficulty: 3/10

Jotform + Google Analytics

Coming soon.

Jotform + Google Ads

Coming soon.

Jotform + Facebook Pixel

Coming soon.

Jotform + Facebook Conversions API

Coming soon.

Jotform Card form conversion tracking

Coming soon.

Previous
Previous

Jotform & Google Tag Manager Explained (2024)

Next
Next

Lemon Squeezy · Google Analytics, Google Ads, Meta Pixel & More