Form labels and instructions
Making form inputs clear and understandable.
On this page
Overview
What you need to do
Each form field needs a clear label that:
- screen readers can announce
- speech recognition users can select
- clearly describes what the field is for.
Labels must be programmatically associated with their form fields and remain visible when users interact with those fields.
If it’s not clear from the label how to fill out the form field, additional instructions are required.
Also check out our guidance on Form validation and error messages — Knowledge Area: Mobile applications.
Meeting the Web Accessibility Standard
When a form field has a visually associated label that is also programmatically associated with the field, it meets WCAG 2 Success Criterion 1.3.1 Info and Relationships (Level A) and Success Criterion 4.1.2 Name, Role, Value (Level A).
When a form field has a label or instructions, it meets WCAG 2 Success Criterion 3.3.2 Labels or Instructions (Level A).
When a form field's label describes its topic or purpose, it meets WCAG 2 Success Criterion 2.4.6 Headings and Labels (Level AA).
Why this matters
Forms without proper labels can be difficult, if not impossible, for some users to understand and complete. Clear instructions help everyone, especially people with learning or intellectual disabilities, understand what information is expected.
When this applies
When you need labels
- Text inputs: Email, password, search, name fields, free text
- Selection controls: Dropdown menus, radio buttons, checkboxes
- Toggles and switches: Settings, preferences, filters
- Complex inputs: Date pickers, sliders, multi-part forms.
When you need instructions
- Required fields: Clearly mark required fields, both visually and programmatically or in text
- Format requirements: Email format, password rules, date formats
- Error prevention: Guidance to help stop users from making mistakes
- Complex workflows: Multi-step forms or conditional fields.
Design
Checklist for accessible form labels and instructions
- Label every input clearly and concisely.
- Keep labels visible (don’t hide them in placeholders).
- Mark required fields clearly with text, not just colour or symbols.
- Provide instructions, including expected input formats, before users start typing.
- Group related fields with clear headings.
- Use consistent labelling patterns throughout the app.
- Position labels and instructions logically (typically above or to the left of inputs).
Design resources
For web-oriented guidance on providing labels and instructions, read Form Instructions — WAI Tutorials — W3C.
Development
Quick implementation
For technical documentation on adding accessible form labels and instructions, read the following Apple Developer Documentation resources:
Techniques and code examples for creating accessible form labels and instructions that meet WCAG 2 can be found in the following resources:
- Success Criterion 3.3.2 Labels or Instructions — Appt
- Success Criterion 4.1.2 Name, Role, Value — Appt.
For complete guides on iOS accessibility from Apple Developer Documentation, read:
Android implementation
For technical documentation on adding accessible form labels, read Describe each UI element — Android Developers.
Techniques and code examples for creating accessible form labels and instructions that meet WCAG 2 can be found in the following resources:
- Success Criterion 3.3.2 Labels or Instructions — Appt
- Success Criterion 4.1.2 Name, Role, Value — Appt.
For a complete guide on Android app accessibility, see Make apps more accessible — Android Developers.
Testing
Quick test
These steps help you verify that all form inputs have clear, accessible labels and sufficient instructions for completion.
- Turn on your device’s screen reader (VoiceOver on iOS, TalkBack on Android).
- Focus on each field — are all visible labels and instructions announced?
- Navigate without using the visual design — can you understand what each field expects?
- Review required fields — are they clearly identifiable?
Automated testing
Use the platform accessibility testing tools to check what labels are programmatically associated with each form field:
- iOS — Accessibillity Inspector — Apple Developer Documentation
- Android — Accessibility Scanner — Android Accessibility Help
- Android — axe Accessibility Analyzer — Deque Systems — Google Play.
Testing resources
The most practical way to test for accessible form labels and instructions in your app is to use the built-in screen reader.
How to test with VoiceOver on iOS
- Turn on and practice VoiceOver on iPhone — Apple Support
- VoiceOver: screen reader for iOS — Appt
- How to Test Accessibility with an iPhone — Harvard University
How to test with TalkBack on Android
- Get started with TalkBack — Android Accessibility Help
- TalkBack: screen reader for Android — Appt
- How to Test Accessibility with Android TalkBack — Harvard University
Learn more
Platform guidance
Official design and development guidance for creating forms on each platform.
- iOS — Entering data — Human Interface Guidelines — Apple Developer Documentation
- Android — Text fields — Material Design 3
Other guidance
For web-oriented guidance on accessible form labels and instructions, read Understanding Success Criterion 3.3.2: Labels or Instructions — WCAG 2 — W3C