Forms are where your website does business: enquiries, bookings, quotes, checkouts. They are also where accessibility problems hurt most, because a form someone cannot complete is a customer you lose.

1. Every field needs a visible label

Placeholder text inside a field is not a label. It disappears as people type, often has low contrast, and may not be read reliably by assistive technology. Use a visible label connected to its field.

2. Explain requirements up front

Mark required fields clearly and explain formats before people type, such as “Phone number, including area code”.

3. Make errors clear and helpful

When something goes wrong, say which field and how to fix it, in text. “Please enter an email address like [email protected]” is far better than a red outline.

4. Everything must work with a keyboard

People should be able to move through fields with the Tab key, select options, tick boxes and submit without a mouse, with a visible focus indicator at each step.

5. Group related fields

Sets of radio buttons or checkboxes should be grouped with a clear question, so screen reader users hear the context.

6. Be careful with CAPTCHAs

Visual puzzles can block people with disabilities. Prefer spam protection that works invisibly, or offer accessible alternatives.

7. Do not rush people

Avoid short time limits, or let people extend them.

8. Confirm success

After submission, clearly confirm that the form was sent and what happens next, in a way screen readers announce.

Test it yourself

Try completing your form using only the keyboard, then with a screen reader. You will learn a lot in five minutes. Our guide to testing your website’s accessibility explains how.

Need forms that work for everyone? We fix forms as part of our accessibility remediation service.

Need a hand?

TheWebsiteMakers.ca is a Toronto-based team with 19+ years of experience building websites for businesses across Canada and the US. We design accessible websites, host them on servers we manage ourselves, and look after them every month. Get a free, no-obligation quote.