Prefill form fields with URL parameters
Open a form with fields already filled in by adding values to the link. Useful for pre-filled requests, quick demos, and quietly passing tracking data along with a submission.

How it works
Add one or more data. parameters to the end of a form's link. Each one fills a single field with the value you provide:
https://app.droplet.io/form/<formId>?data.<fieldId>=<value>
Chain several together with & to prefill multiple fields at once:
https://app.droplet.io/form/yGwOVy?data.submittedByName=Jane%20Doe&data.department=Finance
When someone opens that link, the form loads with those fields already populated. They can still edit any field that is visible and editable before submitting.
Find a field's ID
Each data. parameter targets a field by its ID, not its label. To find a field's ID, open the form in the Form Builder, select the component, and look under Details in the Properties panel. Use that exact ID in the link.
Format the values
- URL-encode the value
- Spaces become %20, and other special characters need encoding too: & → %26, / → %2F, @ → %40, , → %2C, ( → %28, ) → %29. Most spreadsheet and scripting tools have an "encode URL" function that does this for you.
- Match choices exactly
- For a Dropdown or Single Choice field, the decoded value must match one of its options exactly. For example, data.paysheetType=Time%20%26%20Attendance sets the option "Time & Attendance."
- Dates use YYYY-MM-DD
- A Date/Time field takes an ISO date, like data.startDate=2026-09-01.
Pass hidden data with a submission
Here is the useful trick: prefill a field through the link, then hide that field on the form. The submitter never sees it, but the value is still saved with their submission. It is a clean way to tag where a submission came from (a campaign name, a referral source, a routing code, or an internal reference) without cluttering the form.
Add an Input (or other field) for the data you want to capture, and note its ID.
Set the field's Visibility to Hidden, or add a Show/Hide rule that keeps it hidden. Leave the field's "clear when hidden" option off, otherwise the prefilled value is wiped when the field hides.
Distribute a link like ?data.source=spring-newsletter. Each submission from that link records "spring-newsletter" in the hidden field.
Prefill a draft while testing
To prefill an unpublished draft while you are building, add preview=true and the draft's version before the data. parameters:
https://app.droplet.io/form/<formId>?preview=true&version=draft-<timestamp>&data.<fieldId>=<value>
Things to know
- Tables aren't prefillable. Table rows and columns are list fields and don't reliably accept simple data. parameters, so leave those for live entry.
- Sign-in can override the submitter fields. If a form requires sign-in or submits as the signed-in account, the logged-in person's name and email replace any prefilled submittedByName / submittedByEmail.
- Links change when the form is re-saved. A draft's version (and sometimes the form ID) updates when you save or re-import, so refresh your test links after changes.