Help center
Go to home
Go to templates
Go to settings
Go to help center

Create a form

Build a form in the editor: add questions from the block menu, tune each question's settings, add logic and answer piping, then publish and share it.

The Tinyform editor behaves like a text document. Open a form at /forms/<id>/edit, put the caret on the page and start typing; every question, heading and picture is a block in one list. That one idea carries a plain contact form and a branching survey with scores alike.

A sentence typed into a Feedback form, then an Email question inserted with the slash menu

Add questions

Hover a block and press the + in its margin, or press Add block on an empty form, to open the block picker. Its search box reads Find questions, input fields and layout options…, and the list is grouped five ways: Questions, Layout blocks, Embed blocks, Advanced blocks and Input blocks. A Question is an answer box with a caption above it; an Input block is the box alone, for a form whose wording already sits in the text around it.

The + button in a block's margin, which opens the block picker

Customize question settings

Every question type carries its own settings. Hover the block and click the ⋮⋮ grip in its margin to open the block menu.

A Phone number question's block menu, opened from the grip in its margin

What you find there depends on the type, for example:

  • Mark the question as required
  • Set a default answer
  • Choose a number format, or a minimum and maximum
  • Put an image on each multiple choice option
  • Randomize the options of a choice list or dropdown
  • Restrict a file upload to certain types and sizes
  • Disable weekdays or date ranges in a date picker
  • Let a dropdown accept several answers
  • Turn the block into another question type
  • Hide, duplicate or delete the block

Add smart features

The Advanced blocks group holds the pieces that make a form react to its respondent: conditional logic, calculated fields, answer piping and hidden fields. Together they cover quizzes with a score, surveys that branch, and forms that greet people by name.

Conditional logic

A logic block reads what the respondent has answered and acts on it: show or hide blocks, require an answer, jump to another page, or run a calculation. Most actions re-evaluate as the person types; a page jump fires when they press Next or Submit.

A logic block that jumps to page 2 when the answer is 18 or more

Calculations

A calculated field holds a number or a piece of text that logic can add to, multiply, assign or compute with a formula. Typical uses:

  • Score a quiz
  • Grade a lead
  • Apply a discount, a tax or a surcharge
  • Build a sentence that changes with the answers
A published booking form adding two picked services into a subtotal

Answer piping with @ mentions

Type @ in any text and pick an earlier question to pipe its answer into the wording. That is how a form can:

  • Address the respondent by the name they typed on page one
  • Show a running total as items are picked
  • Tell a quiz taker their score
  • Phrase a later question around an earlier answer
A name typed on a published form appearing in the sentence under it

Hidden fields

A hidden field reads a value off the form's URL and stores it with the submission without drawing anything. Use it to record where a visitor came from, to carry a campaign tag, or to prefill a name you already know.

Customize your form

The Customize panel changes colours, the font, the theme, and the logo and cover above the title, and it has a Custom CSS box for anything the controls do not reach. Layout is part of the same story: text formatting, columns, and images, video and embedded content between the questions.

A published form wearing a custom colour, font and background

To rearrange the page, hover a block and take hold of the ⋮⋮ grip:

  • Drag up or down to change the order
  • Drop a block beside another one to put the two in columns
The email question dragged above the name question by its grip

Add a Thank you page

The Thank you page is what respondents see once they have submitted. Every form ends with a default one; type /thank to insert your own and fill it with headings, text, links, images and mentions of the answers the respondent gave.

The Thank you page a respondent sees after submitting

Publish and share

The editor saves as you type; the topbar reads Saving…, then Saved. Publishing is a separate act: Publish freezes the draft as a version and is what respondents see at /r/<id>. Edits after that stay in the draft until you publish again. From the Share tab you can then:

  • Copy the link and send it by mail or post it anywhere
  • Embed the form in a page of your own site
  • Open it as a popup from a button on your site
  • Serve it from a custom domain

Whichever way it is shown, the form keeps the design you gave it.

Integrations

Webhooks deliver every submission to an address you name, and the REST API reads forms and submissions from your own code. The Integrations tab lists the rest of what is planned.

Do more with Tinyform