Form builder and field types
What each field type submits, and how to pre-fill a hosted form from its link.
Field types
Every field has a name, made from its label (for example Email address becomes email_address). Answers arrive under that name in your notification email, exports, webhooks, integrations and the REST API.
| Field | Type | What it submits |
|---|---|---|
| Short text | text | The text typed. |
email | An email address, checked for its format. | |
| Phone | tel | The number typed, as text. |
| URL | url | A full web address, such as https://example.com. |
| Number | number | A number, such as 42 or -0.5. |
| Long text | textarea | The text typed, line breaks included. |
| Date | date | A date as YYYY-MM-DD. |
| Time | time | A time of day as HH:MM. |
| Dropdown | select | One of its options. |
| Single choice | radio | One of its options. |
| Checkboxes | checkbox | A list of the options ticked. With no options, a single box that sends "on". |
| Multi-select | multiselect | A list of the options chosen from a dropdown. |
| Yes / No | yesno | "Yes" or "No". |
| Rating | rating | A whole number on its scale: 1 to 5 by default, or 0 to 10 for a Net Promoter Score question. |
| Consent | consent | "Yes" when ticked. Can link to your policy. |
| Hidden | hidden | A value the respondent never sees: from the form's link, else the default you set. |
| Address | address | Six answers, one per part: <name>_line1, _line2, _city, _region, _postcode and _country. |
| File upload | file | The file's name as the answer, and the file itself, stored encrypted. Starter plan and up, on forms that store submissions. |
| Calculation | calculation | A number worked out from other answers by its formula. Shown as the respondent answers, and worked out again when the form is sent. |
Headings and paragraphs are layout: they show text on the form and submit nothing.
Start from a template
Create Form offers a blank form or one of 40 templates, in eight categories: contact, registration, application, order, feedback, survey, booking request and intake. A template gives you its questions, pages, logic and thank-you message, and you can change any of it in the builder. Browse the templates.
Some templates ask for a file, which needs the Starter plan or above. On the Free plan the form starts without that question.
Calculations
A Calculation field works out a number from other answers: an order total, a quiz score, a price with tax. Write its formula in the field's settings, using an answer by its name in braces:
{quantity} * {price} + 4.99— arithmetic with+ - * / %and brackets.round(({speed} + {quality}) / 2, 1)— the functionssum,min,max,avg,round,floor,ceil,absandcount.if({plan} = 2, 20, 10)— a choice, with= != > < >= <=.
A number counts as itself, Yes as 1 and No as 0, a ticked box as 1, a list of choices as their total (or how many were chosen), and an empty answer as 0. One calculation can use another. Choose the decimals, and what to show either side of the number, such as $.
Respondents see the result as they answer, and conditional logic can use it. When the form is sent, SimplyForms works it out again from the answers and stores that, whatever the browser sent, including for forms embedded on your own site.
Pages
Add a Page break from the Layout group to start a new page; its text is the page's title. On your hosted form, respondents see one page at a time, with Back and Next buttons and a progress bar. Next checks the page's answers before moving on.
Or set Layout to One question at a time, above the builder, to give every question its own page. All answers are still sent together when the form is submitted, and a browser without JavaScript shows every page at once.
Conditional logic
Under the builder's canvas, Logic holds rules that change the form as it is filled in. Each rule reads as a sentence: If a question's answer is, is not, contains, is more than (and so on) a value, then do one of these:
- Show a field or page. It stays hidden until the answer matches.
- Hide a field or page while the answer matches.
- Require a field while the answer matches, such as an order number for a support request.
- Skip to a later page, passing over the pages in between.
A hidden field sends nothing, and isn't required, even when it's marked as required. Your form's answers are checked against the same rules when they arrive. Try your rules in the live preview as you build.
Rules on pages work when the layout is split at page breaks, not one question at a time. The Free plan includes 3 rules per form; paid plans include up to 50.
After submit
Under the canvas, After submit sets what respondents see once they send your hosted form: a thank-you message of up to 500 characters, in plain text. A redirect URL set in Settings sends them to your own page instead.
Thank-you rules end the form differently by answer: if a question's answer matches, then show another message, or go to another page. The first rule that matches wins, and they work alongside your conditional logic: an answer to a hidden question never matches.
The thanks page never repeats what someone submitted, so a link to it can't be used to put words in your mouth. On a form embedded in your own site, your page decides where people go.
Save and continue later
On the Pro plan and up, turn on Save and continue later in a form's Settings, and your hosted form gets a link of that name under its Submit button. A respondent enters their email address and we send them a link back to their answers, which they can also copy on the spot. It works for 7 days. Saving again from it keeps the same link and gives it another 7 days; sending the form removes the saved answers.
Saved answers are encrypted with your team's key, like submissions, and only the link opens them, so anyone with it can see them: we tell respondents to keep it to themselves. We use the email address to send the link and don't keep it. Files and tick-to-agree boxes aren't saved: respondents attach and tick them again. A form that doesn't store submissions can't save answers either.
Sending by answer
On the Starter plan and up, Send by answer, on a form's Recipients tab, sends each submission to only some of its recipients, depending on an answer: for example, sales questions to your sales address and support questions to support. A submission that matches a rule goes to that rule's recipients, or to every matching rule's recipients when it matches more than one. A submission that matches none goes to all of the form's recipients, so nothing is lost.
A rule can give the email its own subject, and quote an answer in it with {{question_name}}: New lead from {{name}}. Answers that look sensitive, such as card numbers, show masked. A rule can only send to the form's own recipients; remove someone from the form and they stop getting its submissions, whatever the rules say.
Submission PDFs
On the Pro plan and up, any stored submission can be a PDF: PDF in a submission's panel downloads it, and Download PDFs on a selection downloads up to 100 of them in a zip. Each PDF carries your form's name, logo and brand colour, then every answer under its question, in the form's order.
A PDF can also ride your emails: tick Attach a PDF of each submission on the Recipients tab for the notification, and Attach a PDF of their answers on the Autoresponse tab for the respondent's copy. Answers that look sensitive, such as card numbers, are masked in every PDF, as in the inbox and the email. PDFs are made when asked for and never stored. They show Latin, Greek and Cyrillic text; for other scripts, use the CSV or Excel export. A form that doesn't store submissions has no PDFs.
Analytics
A form's Analytics tab shows, for the last 7, 30 or 90 days, how many times its hosted page was opened (views), how many people started answering (starts) and how many sent it (completions), with the conversion from views to completions, day by day. On the Pro plan and up it also shows where people stop on a form with pages, where visits come from (utm_source in the link, else the referring site), each utm_campaign, and how long people take to finish.
The counts come from the hosted page, without cookies or anything stored on visitors' devices, and only as daily totals: no record of a single visit is kept. So they count visits, not people, and a reload counts again. A form embedded in your own site counts its submissions only. To tell campaigns apart, add ?utm_source=newsletter&utm_campaign=autumn to the link you share.
Themes and custom CSS
Theme, under the canvas, sets your hosted form's look: Classic, Minimal, Ocean, Forest, Sunset, Lavender, Editorial or Midnight. Each comes in light and dark; choose one, or Match the visitor's device. The theme also styles the thanks and error pages, and the live preview shows it as you choose. A brand colour, set on the Design tab, still colours the buttons.
On the Pro plan and up, Custom CSS styles the form card further. Your rules apply inside the card only, so write selectors such as label or button[type="submit"]. For your respondents' safety, custom CSS can't load anything (no url() or @import), can't add text (no content), and can't reach the page around the card. The builder says what it refuses, and saves your CSS once it's accepted.
Pre-fill a form from its link
Add a field's name and a value to the end of your hosted form's link, and the form opens with that answer filled in. The respondent can still change it.
?email=jo@example.comfills the field namedemail.?topics=Sales&topics=Supportticks two boxes of a checkboxes or multi-select field.?home_city=Leedsfills one part of an address field namedhome.- Join several with
&:?email=jo@example.com&plan=Pro.
Track where people came from by adding Hidden fields named after your campaign parameters, such as utm_source and utm_campaign. A link like ?utm_source=newsletter then arrives with every submission, and the respondent never sees it.
What a link can and can't do
- It only fills fields the form has. Any other name in the link is ignored.
- A value for a dropdown, choice or rating must be one of its options, or it is ignored.
- It never ticks a Consent box or a single checkbox: agreeing is up to the respondent.
- Values over 500 characters are ignored.
- Every answer is still checked when the form is sent, the same as one typed in.
- Links end up in browser history and server logs, so don't put anything private in one, such as a password or health details.
Pre-filling works on hosted forms (your /f/… link or custom domain). On a form embedded in your own site, your page's HTML sets the values.