Online forms are frequently designed in a fashion that makes them both frustrating and downright unusable. Forms should help improve the interaction and level of engagement for users.
However, too often forms adopt improper controls (such as drop-down menus and radio buttons), provide the user with inadequate feedback, or simply don’t work.
Great progress can be made by simply applying the consistency principle to all of your forms. Use common conventions, make form layout similar across forms, and take advantage of what users already know about or are comfortable with. When using forms to submit data, you must be consistent!
A great way to achieve consistency is to establish a style guideline for all your online forms. This is simply a guide that developers and designers can consult that makes the layout, interactions, formatting, and labeling of forms explicit. A style guide serves as a reference and is particularly valuable when designing sites with several forms or working on a site that continually adds new forms and data over time.
The style guide should address form layout, standard widget use and guide lines, labeling conventions, interaction guidelines for multiple page forms, and techniques for presenting feedback to the user. In addition, a style guide should provide a graphic demonstration of each recommendation.
Overall Form Design
Online forms should present a clear step-by-step procedure for the user. Often, it’s good to label the steps numerically within a page (1, 2, 3) so that the user can quickly see the sequence.
In the absence of numbers, make sure the next step is always clear. A common problem is to have a submission button that is not obvious and that the user never presses. If the steps occur across multiple pages, it’s helpful to note the total number of steps by labeling them as “1 of 4,” “2 of 4,” and so on.
Keep Forms Short
As in surveys, most people don’t like to fill in much information. Minimize the number of form fields. You can make the respondents’ job easier by allowing them to use checkboxes and radio buttons rather than fill in freeform text fields.
Identify Required Fields in the Form
Boldface text or asterisks next to the required fields are common conventions. We’ve found that small arrows or triangles work well too. Required fields can prevent you from getting information that’ useless – for example, it doesn’t do any good for respondents to ask for more information if they don’t provide you with contact information. However, never require any more information than the bare minimum you need. If users get blocked in submitting the form, there’s a greater likelihood of their becoming frustrated and giving up.
Form Elements
There are several common elements that appear in forms. They should be used in consistent ways and should never go against the standards.
Introductory Statement
Every form should have a few sentences at the top of the page detailing what the form is and describing any constraints of the form.
Labels
Labels are the descriptive text used to communicate what information is being requested.
Controls
Controls allow users to make selections and input data. There are several different types of controls. These are defined as follows.
Text fields: These allow users to type in responses using their keyboard.
Drop-down menus: These allow the user to select a single value from a list of choices. Drop-down menus should always be populated with a default value. The label used for the default value should be a description of the contents beginning with an action word – for example, “Select a State,” where the rest of the choices are state abbreviations (e.g., CA).
Scrolling lists: These provide a list of preset values from which the user can select any subset.
Radio buttons: These serve a similar function to drop-down menus. They are used to present a list of choices from which the user can make a single selection. Radio buttons are more direct and easier to use than drop-down menus. However, they do not scale well when there are a large number of choices.
Checkboxes: These are similar to scrolling lists in that they provide a list of elements from which the user can select any number of choices. Checkboxes are more direct and exact to use than scrolling lists. However, they do not scale well when there are a large number of choices.
Action Buttons
Action buttons are used to trigger an action. A Submit button could trigger the sending of data, and a Reset button could clear the contents of a form.
There should only be one Submit button per form, and this button should be clearly labeled. Instead of “Submit,” label it “Send This Message” or “Submit This Order” or whatever specific text is relevant to the form.
If you have a Reset button, this too should be labeled clearly, with text like “Clear All Values” or “Restore Default Values.” However, we actually recommend you don’t use the Reset functionality on a form because it generally causes more harm than good.
It is not necessary for short forms, and for long forms it poses the risk of wiping out monumental efforts on the part of the user – with no opportunity to undo its effects! Still, Reset buttons can be useful when there are default values contained within the form that are difficult to reconstruct. When using them for such cases, remember to label the button “Reset to Default Values” or something appropriately descriptive.
Form Layout
A key to developing highly usable forms is to develop a consistent layout that is used on all forms throughout a site. Here we address some layout issues that are exclusive to forms.
Introductory Statement
As mentioned earlier, the introductory statement should be placed at the top of every form. In addition, if this form is part of a multistaged process, you’ll want to be sure to indicate where the user is in the process (e.g., “Stage 1 of 3” or “Background Information ? Detailed Bug Report ? Response and Feedback”).
Labels
In general, labels should be placed to the left of the designated control. This creates a visually consistent layout and helps to clarify the layout when a form includes grouped controls such as radio buttons. If you put the labels above the controls, the relationship between label and control is less clear. Placing labels on the left of the control allows users to visually group the items based on proximity.
Labels should be right aligned so that the end of the label is flush against the corresponding control. On the Web, where font size is not set in stone and pages can be dynamically resized, left-aligned labels can end up far from the controls they are intended to label.
Controls
Controls include areas where the user enters data, selects a choice, or chooses a subset of choices. These typically include text fields, drop-down menus, and scrolling lists. The size of text fields should reflect the expected size of the input. For example, if the user is expected to enter a middle initial, the text box should be small. Controls should be left aligned so that the left edges are flush against the labels.
Checkboxes and Radio Buttons
Checkboxes and radio buttons often require additional levels of layout. They typically have a high-level description of the group (e.g., “Payment Type” (and then require labels for each of the subchoices within that group) e.g., “Visa”). The high-level group label should be placed to the left of the control and right aligned. Subchoice labels should be placed to the right of the control and should be left aligned.
Action Buttons
Action buttons should be placed at the bottom of the form. Studies have found that users go directly to the bottom of a form to look for a Submit button (Spool et al. 1997), and placing them elsewhere on the page leads to users overlooking them. Action buttons should be left aligned underneath the controls.