We plan to create a survey question in Typeform and embed it into our website. 
After the customer submitting the survey questions, will the Typeform capture the customer's IP address? 
Will Typeform deduct the customer's unique IP address and restrict the customer from submitting multiple surveys?
- Community
- Typeform conversations
- Typeform developers
- Capture customer IP address
Capture customer IP address
- March 9, 2021
- 28 replies
- 1840 views
- Explorer
- 2 replies
Best answer by Liz
Hi 
As for restricting multiple responses, we have a workaround here that may help you.
28 replies
- Tech Community Advocate
- 15035 replies
- Answer
- March 9, 2021
Hi 
As for restricting multiple responses, we have a workaround here that may help you.
- Author
- Explorer
- 2 replies
- March 10, 2021
At the end of the survey, we plan to provide the voucher to our customers. So We want to restrict them to submits multiple responses.
- Tech Community Advocate
- 15035 replies
- March 10, 2021
Hi 
- Navigating the Land
- 2 replies
- May 15, 2021
Best regards
I would like to know if you plan to carry out this functionality in the future.
The business finds it important to have the IP addresses from where the client is sending the form to identify the origin of the regions and if from the same IP address they are filling out the same form several times.
- Tech Community Advocate
- 15035 replies
- May 17, 2021
Hi 
- Navigating the Land
- 7 replies
- June 20, 2021
The IP Address helps Facebook track conversions. This is essential for ad optimization, especially after the iOS update.
Typeform converts better than Wufoo, but FB can better track Wufoo forms since they include IP Address.
- Explorer
- 6 replies
- June 29, 2021
+1 for this. We use typeform for ISP troubleshooting guides and this would be extremely helpful for us.
- Sharing wisdom
- 57 replies
- December 20, 2021
Hello,
We have multiple forms, and we don’t to ask clients extra questions non-related to the forms, but for our data purposes we want to collect identify which city clients are from, and thus we want to identify their IP address. What are possible workarounds to do that? Any suggestions?
- Tech Community Advocate
- 15035 replies
- December 20, 2021
Hi 
- Explorer
- 2 replies
- February 18, 2022
Hi all,
Just want to add our interest in this feature as well. The notion to hide IP addresses eludes me. We would only need it however, to verify a users location to country and town. This could still be done without revealing the actual IP address.
- Tech Community Advocate
- 15035 replies
- February 18, 2022
Thanks, 
- Sharing wisdom
- 57 replies
- February 21, 2022
- Ex–Typefomer
- 1776 replies
- February 21, 2022
Hey 
As far as I know, I think there might be a way to do this but since it's more of a 3rd party tool configuration workaround case, I don't have a way to say it for sure.
Also, we don't have the expertise in Google Tag Manager to know for sure. So, I'd wait for 
Sorry if I couldn't help you more! 
- Sharing wisdom
- 57 replies
- February 21, 2022
Is there any specialist around who could comment on this, help with a solution? To help get client IP to typeform hidden field when he is filling the typeform?
- Certified Partner & Champion
- 5462 replies
- February 21, 2022
just a thought..
- Ex–Typefomer
- 1776 replies
- February 22, 2022
- Sharing wisdom
- 57 replies
- February 22, 2022
- Ex–Typefomer
- 1776 replies
- February 22, 2022
- Typeform
- 888 replies
- February 22, 2022
Hello all 👋
For embedded typeforms you can pass this values as hidden field.
However you can not read the IP address client-side (in JavaScript). You can either return it from your own webserver or use a 3rd party service to obtain an IP address of your customer:
1<div id="wrapper" style="width:100%;height:500px;"></div>2<link rel="stylesheet" href="//embed.typeform.com/next/css/widget.css">3<script src="//embed.typeform.com/next/embed.js"></script>4<script>5  async function getIpAndLoadWidget() {6    // load data about your customer from db-ip.com7    const result = await fetch('https://api.db-ip.com/v2/free/self')8    const data = await result.json()9    const { ipAddress, continentCode, continentName, countryCode, countryName, stateProv, city } = data || {}1011    // create widget embed12    window.tf.createWidget('<form-id>', {13      container: document.querySelector('#wrapper'),1415      // pass the data to your typeform as hidden fields16      hidden: {17        ip: ipAddress,18        continent: continentName,19        country: countryName,20        city: city,21      }22    })23  }24  getIpAndLoadWidget()25</script>For details, limitations and terms of service about this 3rd party API see https://db-ip.com/api/free.php
- Sharing wisdom
- 57 replies
- February 22, 2022
Perfect, thank you! We shall try it out! Will report once tested!
- Ex–Typefomer
- 1776 replies
- February 24, 2022
Hey 
- Sharing wisdom
- 57 replies
- February 24, 2022
- Navigating the Land
- 3 replies
- July 12, 2023
- Sharing wisdom
- 57 replies
- July 13, 2023
1. Created hidden fields
2. Upon opening form, my website adds the ip from 3rd party (as users has been identified on opening the webpage)
3. Add the ip, city, country and all the data to hidden fields
- Navigating the Land
- 3 replies
- July 13, 2023
We plan to create a survey question in Typeform and embed it into our website. 
After the customer submitting the survey questions, will the Typeform capture the customer's IP address? 
Will Typeform deduct the customer's unique IP address and restrict the customer from submitting multiple surveys?
Hi 
As for restricting multiple responses, we have a workaround here that may help you.
At the end of the survey, we plan to provide the voucher to our customers. So We want to restrict them to submits multiple responses.
Hi 
Best regards
I would like to know if you plan to carry out this functionality in the future.
The business finds it important to have the IP addresses from where the client is sending the form to identify the origin of the regions and if from the same IP address they are filling out the same form several times.
Hi 
The IP Address helps Facebook track conversions. This is essential for ad optimization, especially after the iOS update.
Typeform converts better than Wufoo, but FB can better track Wufoo forms since they include IP Address.
+1 for this. We use typeform for ISP troubleshooting guides and this would be extremely helpful for us.
Hello,
We have multiple forms, and we don’t to ask clients extra questions non-related to the forms, but for our data purposes we want to collect identify which city clients are from, and thus we want to identify their IP address. What are possible workarounds to do that? Any suggestions?
Hi 
Hi all,
Just want to add our interest in this feature as well. The notion to hide IP addresses eludes me. We would only need it however, to verify a users location to country and town. This could still be done without revealing the actual IP address.
Thanks, 
Hey 
As far as I know, I think there might be a way to do this but since it's more of a 3rd party tool configuration workaround case, I don't have a way to say it for sure.
Also, we don't have the expertise in Google Tag Manager to know for sure. So, I'd wait for 
Sorry if I couldn't help you more! 
Is there any specialist around who could comment on this, help with a solution? To help get client IP to typeform hidden field when he is filling the typeform?
just a thought..
Hello all 👋
For embedded typeforms you can pass this values as hidden field.
However you can not read the IP address client-side (in JavaScript). You can either return it from your own webserver or use a 3rd party service to obtain an IP address of your customer:
1<div id="wrapper" style="width:100%;height:500px;"></div><link rel="stylesheet" href="//embed.typeform.com/next/css/widget.css"><script src="//embed.typeform.com/next/embed.js"></script><script>  async function getIpAndLoadWidget() {    // load data about your customer from db-ip.com    const result = await fetch('https://api.db-ip.com/v2/free/self')    const data = await result.json()    const { ipAddress, continentCode, continentName, countryCode, countryName, stateProv, city } = data || {}    // create widget embed    window.tf.createWidget('<form-id>', {      container: document.querySelector('#wrapper'),      // pass the data to your typeform as hidden fields      hidden: {        ip: ipAddress,        continent: continentName,        country: countryName,        city: city,      }    })  }  getIpAndLoadWidget()</script>For details, limitations and terms of service about this 3rd party API see https://db-ip.com/api/free.php
Perfect, thank you! We shall try it out! Will report once tested!
Hey 
1. Created hidden fields
2. Upon opening form, my website adds the ip from 3rd party (as users has been identified on opening the webpage)
3. Add the ip, city, country and all the data to hidden fields
Reply
Related topics
- Ending Button is hidden on iPhone14 - embedded widgeticonIntegrate your typeform
- (Form embed) - Make my ending button return to the starticonBuild your typeform
- Ending ButtoniconBuild your typeform
- Link endings page button to a certain sheet or to the first page of typeform.iconBuild your typeform
- how do i remove the ending button "create typeform"iconBuild your typeform
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.
Scanning file for viruses.
Sorry, we're still checking this file's contents to make sure it's safe to download. Please try again in a few minutes.
OKThis file cannot be downloaded
Sorry, our virus scanner detected that this file isn't safe to download.
OK










