When to use
- Format requirements the user needs before they start typing, e.g., “Password must be at least 8 characters”.
- Validation feedback after a field has been interacted with, e.g., “Please enter a valid email address format (e.g., name@example.com).”
- Contextual hints that reduce input errors, e.g., “Enter the 9 digit ID found in user settings.”
When not to use
- Long explanations — use a Tooltip or Popover instead.
- Page-level or section-level guidance — use Alert or plain text.
Dos and don’ts
- Do show format hints upfront, not only after the user has already made a mistake.
- Do replace the default helper text with the error message when validation fails — don’t stack both.
- Do keep it to one or two short sentences — if you need more than that, the field or the form design probably needs rethinking.
- Do ensure error messages say what’s wrong and how to fix it, not just that something is wrong (“Enter a valid email address” not “Invalid input”).
- Don’t use it for information the user doesn’t need to complete the field.
- Don’t write helper text that just restates the label in different words.
Often used with
Tied to a single field: always with that control’s Label and one of Input, Textarea, Select, Combobox, Checkbox / Radio group, or Switch.Accessibility
- Match input references: Ensure every helper text
<span>or<p>has a uniqueidmatching its input’s ARIA reference. - Preserve instruction context on error: When an error appears, append the error element’s
idtoaria-describedbyor switch toaria-errormessagedynamically without removing the original instructionid.