Hidden fields are useful for associating answers with your form without the respondent seeing the question. They can be used for a variety of tasks, including: UTM parameters, referral codes, user IDs, and more.
To add a Hidden field to your form, add a question just like you'd add any other question and choose Hidden for its type.
A Hidden field can only be answered by using:
We'll touch upon a couple of examples that illustrate why you might want to consider using a hidden field in your form. This not an exhaustive list, but serves to illustrate how they can be useful.
Submission data does include UTM parameters such as utm_campaign
& utm_source
when you export submissions as CSV file or when using some integrations (such as directly through Google Sheets or via Zapier). Other than that, though, it's typically hidden from even your view as the form editor and, thus, is usually not included when using answer piping.
To get around this, you can set Hidden fields with custom pre-fill keys equal to those parameters.
For example, if you want to capture the parameter utm_source
:
utm_source
.Then, when your URL has utm_source=twitter
in it, for example, it will populate the hidden field with the custom pre-fill key of utm_source
. That value can then be used elsewhere in the form, in custom emails or PDFs, dynamic success pages, or sent to another service through integration.
Another use case for Hidden fields is tying subsequent submissions to a specific person. There are two ways this might be useful:
On their own, distinct forms know nothing about each other. If you send a user from Form 1 to Form 2, Form 2 doesn't know what Form 1 is or that the user was sent to Form 2 from Form 1.
However, you may wish to tie those separate form submissions together by user. You can do this by pre-filling a hidden field on subsequent forms with the submission ID of the first form or with an ID you create on the first form, such as through a calculation that combines multiple pieces of data on that form.
Alternatively, you may not wish to track a user through multiple submissions but rather track multiple submissions that a specific user is responsible for; that is, a referral code.
If you set a referral code in a hidden field through pre-filling, you can tie multiple submissions to that referrer.
Note: Attributing specific submissions using the same referral code/ submission ID is the responsibility of the form owner - Paperform doesn't automate attribution within your results between forms/ different submissions.
You may wish to use pre-filling if the value passed isn't within the URL, or alternatively calculate the value a different way (a different calculation, a combination of answers from the form, etc.).
You'll need a place to store this value that isn't used in anything user-facing, though. If the value isn't in the URL, it can potentially disrupt your formatting and/or calculations. So, you can pre-fill a hidden field with that value.
For example, in a calculation you can use that value (if it exists) or another value if it doesn't. Suppose your pre-fill key for that hidden field is abc12
. Your calculation would look similar to
example_variable = IF({{ abc12 }}, {{ abc12 }}, some_other_operation);
Here, we'll use the value stored in abc12
only if it exists. Otherwise, we'll perform some_other_operation
.
Note:
some_other_operation
is not a valid expression, and only serves as an example here. Please refer to our Calculations Guide for more detailed instructions for how to use calculation fields.
These are just a few examples of what you can do with hidden fields. Explore and experiment to come up with ways that suit your unique use-cases.