Hidden fields
Save data the respondent does not see with each submission, such as a campaign source or a CRM ID. On a share link, the value comes from the URL; on a request, from the request's context.
What they are for
- Track where answers come from, such as an email campaign or a social media post.
- Link answers to your systems with a contact, deal, or order ID.
Change the form with logic, for example show extra questions for
plan=enterprise.Check answers against what you know with AI Validation, for example an order number an uploaded invoice must mention.
Add a hidden field
Click Hidden Field in the Blocks tab, or type / and pick it. It cannot go inside a column or a repeating
group. Then set:
Field type: text (the default) or number.
Parameter name: the URL parameter that fills it, such as
utm_sourceorcontact_id. It is also the field's field key.
Fill it from the URL
When someone opens a share link with a matching parameter, the hidden field takes its value:
https://form.formstep.io/abc123?utm_source=newsletter&contact_id=12345
- Values are read once, when the form opens.
A number hidden field ignores values that are not numbers, so
?score=abcleaves it empty.To add parameters to a share link without editing the URL, use the link's Query parameters. UTM tags and campaign tracking are explained there too.
To show a URL value in a question the respondent can edit, such as their name, see Default values from other fields.
On a request
Request links ignore URL parameters, so the recipient cannot change your values. A request fills hidden fields from its context, and can fill visible questions directly. See Prefill, locked fields and hidden fields.
Where values show up
Hidden fields have their own columns in the Submissions table, marked with an eye-slash icon. They also appear in exports and integrations.