Accessible forms: a practical checklist

Accessible forms are faster for everyone—not only people who rely on assistive technologies. The basics are straightforward: clear labels, predictable grouping, logical focus order, and concise error messages. This checklist distills high‑impact practices that improve completion rates immediately.

Labels & instructions

  • Provide a visible label for every field; connect using for/id or wrap the control.
  • Use helper text for format hints; link with aria-describedby.
  • Don’t rely on placeholder as the label—it disappears on focus.

Grouping & context

Wrap related checkboxes or radios in a <fieldset> with a concise <legend>. This provides the question’s context to screen readers and creates a visual boundary for sighted users.

Focus & keyboard

  • Ensure a visible focus outline on links and form controls.
  • Tab order should match the visual flow; avoid tabindex > 0.
  • Confirm that all actions are reachable with a keyboard alone.

Error handling

Place errors near the field and describe a fix (“Enter a date between 2025‑01‑01 and 2025‑03‑31”). Link with aria-describedby and move focus to the first invalid field on submit.

Contrast & feedback

Maintain sufficient color contrast for text, borders, and focus rings. Use more than color alone to signify states—add icons or text where helpful.

Start with these fundamentals and test with a keyboard and a screen reader. Small accessibility improvements compound—your forms become faster, kinder, and more resilient across devices and abilities.