Question

GCLID not feeding through even as a hidden field


Userlevel 1
Badge

I’m trying to record the GCLID value from the URL into a hidden field of a typeform. I’ve looked through community threads and followed instructions.

Here is my embed form code that I use on pages

<div data-tf-widget="HPrRmoO4" data-tf-inline-on-mobile data-tf-hide-headers data-tf-transitive-search-params="utm_source, utm_medium, utm_term, utm_campaign" data-tf-hide-headers data-tf-iframe-props="title=Request a FREE Income Protection quote" data-tf-medium="snippet" data-tf-hidden="zc_gad=,gclid=,utm_source=,utm_medium=,utm_campaign=,utm_term=,utm_content=" data-transferable-url-parameters="gclid,zc_gad,utm_source,utm_medium,utm_campaign,utm_content" style="width:100%;height:500px;"></div>

<script src="//embed.typeform.com/next/embed.js"></script>

I’ve added the gclid= value as =, but typeform isn’t recording it. 

My objective was to record GCLID as a hidden field and then use Zapier to push the form data into our CRM database. Everything apart from the hidden field recording value isn’t.

Any ideas?
Thanks
 


17 replies

Userlevel 7
Badge +5

Hi @Matt_22 If you test the form on the regular URL (not the embedded one), does the data pass? Meaning, is the issue only happening in the embedded version? 

Userlevel 1
Badge

Hi @Matt_22 If you test the form on the regular URL (not the embedded one), does the data pass? Meaning, is the issue only happening in the embedded version? 



Hi @Liz 
I tested a direct link (Get the link or share on social), and this is successfully recording the GCLID from the URL as a hidden field.

So this is an issue with embed forms? How can I resolve this?​​​​​​​

Userlevel 7
Badge +5

@Matt_22 Is it just the gclid that doesn’t pass? Or any of the other fields as well? If you wouldn’t mind sharing the URL where you have it embedded, that would be great!

Userlevel 1
Badge

@Matt_22 Is it just the gclid that doesn’t pass? Or any of the other fields as well? If you wouldn’t mind sharing the URL where you have it embedded, that would be great!

 

Hi @Liz  

  • Here is the URL of the page where we have embedded the form 
  • I want the GCLID to be recorded under the hidden field zc_gad, however, I added another hidden field called gclid to see if it was the field names that is causing the issue. This is why in the code I have both hidden fields zc_gad and gclid
<div data-tf-widget="HPrRmoO4" data-tf-inline-on-mobile data-tf-hide-headers data-tf-transitive-search-params="utm_source, utm_medium, utm_term, utm_campaign" data-tf-hide-headers data-tf-iframe-props="title=Request a FREE Income Protection quote" data-tf-medium="snippet" data-tf-hidden="zc_gad=,gclid=,utm_source=,utm_medium=,utm_campaign=,utm_term=,utm_content=" data-transferable-url-parameters="gclid,zc_gad,utm_source,utm_medium,utm_campaign,utm_content" style="width:100%;height:500px;"></div>

<script src="//embed.typeform.com/next/embed.js"></script>


My current process is

  • Setup Typeform with hidden field to capture gclid
  • Using Zapier map the GCLID from typeform’s hidden field into our CRM’s GCLID field
  • This seems to work for a form that isn’t embed.

I tested this by checking a direct link to the form. I changed the GCLID to a random string (&gclid=whkfjhwf239728374hkj) and upon submission, data successfully was recorded in our CRM.

Just isn’t working for the embed version. Let me know if you need anything else.

Userlevel 7
Badge +5

@mathio do you happen to see anything in the URL above that would be preventing the hidden field data from passing into the embedded form? 😁

Userlevel 7
Badge +5

Yes @Liz , I see data-tf-hidden attribute that passes empty value to all hidden fields listed there. If you remove this attribute I thinkit should start loading the values from host page query string.

Userlevel 1
Badge

Yes @Liz , I see data-tf-hidden attribute that passes empty value to all hidden fields listed there. If you remove this attribute I thinkit should start loading the values from host page query string.

Thank you
I tried that too @mathio @liz but no luck

I removed the following:

data-tf-hidden="zc_gad=,gclid=,utm_source=,utm_medium=,utm_campaign=,utm_term=,utm_content="


And code is now just this:

<div data-tf-widget="HPrRmoO4" data-tf-inline-on-mobile data-tf-hide-headers data-tf-transitive-search-params="utm_source, utm_medium, utm_term, utm_campaign" data-tf-hide-headers data-tf-iframe-props="title=Request a FREE Income Protection quote" data-tf-medium="snippet" data-transferable-url-parameters="gclid,zc_gad,utm_source,utm_medium,utm_campaign,utm_content" style="width:100%;height:500px;"></div>

<script src="//embed.typeform.com/next/embed.js"></script>

 

Userlevel 7
Badge +5

Also the attribute data-transferable-url-parameters is not necessry, but it should not do any harm.

You data-tf-transitive-search-params seems to be correct. When I visit your page using a URL like this:

https://www.manorfinancial.co.uk/income-protection-policy-sick-pay-self-employed/?utm_source=my-source&utm_medium=my-medium&utm_term=my-term&utm_campaign=my-campaign

I can see your typeform is loaded using a URL like this (with hidden fields populated from your page URL):

https://form.typeform.com/to/HPrRmoO4?typeform-embed-id=409504998841109&typeform-embed=embed-widget&typeform-source=manorfinancial.co.uk&typeform-medium=snippet&typeform-medium-version=next&embed-hide-headers=true&utm_source=my-source&utm_medium=my-medium&utm_term=my-term&utm_campaign=my-campaign

Can you see those values when a response is submitted? See this help doc on how to find them in your responses.

Userlevel 1
Badge

Also the attribute data-transferable-url-parameters is not necessry, but it should not do any harm.

You data-tf-transitive-search-params seems to be correct. When I visit your page using a URL like this:

https://www.manorfinancial.co.uk/income-protection-policy-sick-pay-self-employed/?utm_source=my-source&utm_medium=my-medium&utm_term=my-term&utm_campaign=my-campaign

I can see your typeform is loaded using a URL like this (with hidden fields populated from your page URL):

https://form.typeform.com/to/HPrRmoO4?typeform-embed-id=409504998841109&typeform-embed=embed-widget&typeform-source=manorfinancial.co.uk&typeform-medium=snippet&typeform-medium-version=next&embed-hide-headers=true&utm_source=my-source&utm_medium=my-medium&utm_term=my-term&utm_campaign=my-campaign

Can you see those values when a response is submitted? See this help doc on how to find them in your responses.

 

@mathio to record the GCLID, I had to amend your URL and add the GCLID bit at the end

https://form.typeform.com/to/HPrRmoO4?typeform-embed-id=409504998841109&typeform-embed=embed-widget&typeform-source=manorfinancial.co.uk&typeform-medium=snippet&typeform-medium-version=next&embed-hide-headers=true&utm_source=my-source&utm_medium=my-medium&utm_term=my-term&utm_campaign=my-campaign&gclid=testGCLID&zc_gad=TESTZCGAD

After test submitting that form URL, I can successfully see the GCLID being recorded


In the CRM system, we aren’t recording the utm fields (just using it for reporting purposes), however I can easily add the fields in our CRM and i’m confident we can record, as the GCLID is being recorded.

Seem a bit lost this url works, but embed doesn’t

Userlevel 1
Badge

Any thoughts on the above @mathio @Liz 

Thanks

 

Userlevel 7
Badge +5

Sorry, I think I missed this in my previous post. In the attribute data-tf-transitive-search-params you should add gclid if you want to transfer it from your host page URL to your typeform. Like this:

data-tf-transitive-search-params="utm_source, utm_medium, utm_term, utm_campaign, gclid"

This will pass all the query params listed in the attribute from host page to your typeform.

Badge

Hi all!

Faced with the same problem and when I tryed to add data-tf-transitive-search-params="gclid" it didn’t help - still gclid field is empty

Userlevel 7
Badge +5

Hi @Jerome Bstl I asked in your other post, but would you mind sharing the URL where you have the form embedded so we can take a look at the setup? Thanks!

Badge

Hi @Jerome Bstl I asked in your other post, but would you mind sharing the URL where you have the form embedded so we can take a look at the setup? Thanks!

Ofcs - this is the form https://www.slidor.fr/contact.

Users arrive from  https://www.slidor.fr/

Userlevel 7
Badge +5

There is one issue with your embed code. You defined gclid in both transitive search params and hidden field:

data-tf-transitive-search-params="gclid" data-tf-hidden="gclid"

Hidden field overrides the transitive search param. This means you should only include one - in this case data-tf-transitive-search-params attribute.

 

Another issue I see is that there is no gclid in the URL when I navigate from https://www.slidor.fr/. You need to add it as query parameter, eg update your link, something like this: https://www.slidor.fr/contact?gclid=123

 

I am no expert on Google Ads / Analytics, however if I am not mistaken gclid is related to that. This other community post might be helpful: 

 

Badge

@mathio Thanks for your reply! I’ve fixed the code as you advised, but looks like still not working for me(

Gclid is a dynamic parameter from Adwords so for transfer it from LP to contact page it must be in url like https://www.slidor.fr/?gclid=123

Userlevel 7
Badge +5

Upon further inspection I see your embed code is completely wrong. It is some kind of mixture of old and new embed SDK code.

I suggest you go to the share page of your typeform and get the code from there again and add the data-tf-transitive-search-params=”gclid” again.

Where did you get the embed snippet from? If it is one of Typeform articles we need to make sure it is up to date.

Reply