Labels or Instructions
Every form control that requires user input must have a label or instruction telling the user what to enter. Placeholder-only fields, icon-only inputs, and bare boxes are not enough.
What it asks
When the user is asked to provide input — a text field, checkbox, radio, select, date picker, file picker — there must be a label or instruction that tells the user what’s expected. The label can be visible text, an <label> element, an aria-label, or aria-labelledby; instructions can include the required format, allowed values, or examples.
Required fields, expected formats (“DD/MM/YYYY”), and special constraints (“minimum 8 characters, mixed case”) all fall under this SC.
How to meet it
- Pair every
<input>,<textarea>, and<select>with a<label for="…">whoseformatches the inputid. - Never use placeholder text as the only label — placeholders disappear on focus and have poor contrast.
- Indicate required fields visibly (asterisk, the word “required”, or
aria-required="true") and explain the convention near the top of the form. - Specify the expected format up front, not after the user makes a mistake: “Date (DD/MM/YYYY)” or “Phone number, e.g. 555-123-4567.”
- For groups of checkboxes or radios, use
<fieldset>and<legend>to label the group. - For icon-only or filter-bar inputs, use
aria-labelto give a meaningful name.
Common failures
- Forms where placeholder text is the only label, vanishing the moment the user starts typing.
- Required fields marked only with red asterisks and no programmatic association.
- Date-of-birth inputs that expect a particular format and only tell the user after they fail validation.
- Search inputs labelled with a magnifying-glass icon and no accessible name.
- Login forms where username and password fields are positioned visually next to labels but the labels are not programmatically associated.
Why it matters
Forms are where most users transact with a website — sign up, check out, contact, support, schedule. Unlabelled or under-labelled forms exclude screen-reader users entirely, because they cannot tell what data each box wants. They also fail dyslexic users, who lose context the moment a placeholder disappears, and cognitive-disability users, who benefit from format guidance up front.
Labels are also load-bearing for password managers, autofill, and voice-control software, all of which use label text to match fields. A well-labelled form benefits everyone.