Form URL Parameters (formerly Hidden Fields)

With URL parameters you can use information you already know about your respondents to customize your typeforms. Your respondents will experience a typeform that's tailored just for them!

  • Track the source of your respondents to know what channels are working better.
  • Greet and thank respondents by their real names – no more "Welcome, Shopper!"
  • Prompt respondents to confirm their email addresses.
  • Eliminate the "paperwork burden" for respondents by pre-populating information you already know.
  • Ask questions about specific products that respondents actually purchased.

You can even base Logic Jumps on URL parameters, so your typeform can do cool tricks like skip questions that aren't relevant for a particular respondent.


If you aren't familiar with Typeform's URL parameters concept, check out this Help Center article for an introduction.


URL parameters are key-value pairs that contain pre-existing information about your respondents, which you can use to customize the form's content and flow before they begin filling it out.

URL parameter values are pre-filled when respondents start the form and cannot be populated with information they enter during the form (variables handle that instead). Unlike query parameters, URL parameters provide specific information the form is expecting to receive, such as a first name for personalized greetings.

You can add URL parameter values manually to the form's URL before sharing it, or use a customer relationship management system (like Salesforce) or a marketing automation platform (like Mailchimp) to populate them automatically. In either case, you'll configure URL parameters when you create your typeform.


NOTE: You are responsible for any information you share with URL parameters. Recording and transmitting identifying information, like email addresses, is prohibited by some services (e.g., Google Analytics). Make sure the way you use URL parameters stays within the laws of your country and the terms and conditions of any service you are using with Typeform.


Here's an example of how URL parameters array are defined in the form defition.

{
  "title": "This is a great typeform",
  "hidden": [
    "name",
    "age"
  ]
  "fields": [
    {
      "type": "statement"
      "title": "Hello, {{hidden:name}}! :)"
    }
  ]
}

In this example, the typeform will use the value from the name=VALUE parameter in the URL to create a personalized greeting: "Hello, {{hidden:name}}! :)"

The typeform will load values from query params passed to the typeform URL. For example when accessing the typeform via the URLhttps://form.typeform.com/to/FORM_ID#name=Bruce%20Wayne&age=18, the greeting message will be Hello, Bruce Wayne! :).

ElementTypeDescriptionRequired?
hiddenarray of stringArray for declaring URL parameter variables.Required
fieldsarray of stringArray for configuring how your typeform will use URL parameter values.Required
{var(x)}stringVariables to use for customization.Required