Powered by
Forms & errors
A Form Field Has No Label
Screen readers can't say what a field is for, so people don't know what to type or choose.
labelWCAG 2.0Introduced in WCAG 2.0.Level AA — the minimum. Missing it blocks people outright.
- Status
- CriticalCritical — Someone can complete the task only with great difficulty or outside help.CurrentScanners run this rule today.
- Owner
- DesignDevContentTest
- Audit
- Automated+ManualA scanner finds it; a person confirms the fix.
Why it matters
A label is the name of a field, like "Email" or "Postcode". Screen readers read it aloud when someone reaches the field. Without a properly linked label, they hear only "edit text".
Grey hint text inside the box (a placeholder) is not a label. It vanishes when you type, and many screen readers skip it. People give up, or fill in the wrong thing.
See it in action
Who it affects
| Who | What they experience | Impact |
|---|---|---|
| Screen reader users | They hear "edit text, blank" and have no idea what the field wants. | High impact |
| Voice control users | They can't say "click Email" because the field has no name to call it by. | High impact |
| Low-vision users (magnification) | Zoomed in, they may not see nearby text, and they lose the bigger click area a linked label gives. | Partial impact |
| Cognitive and neurodivergent users | When placeholder text disappears as they type, they forget what the field was for. | Partial impact |
| Motor and dexterity | Without a linked label, small checkboxes and radio buttons are harder to hit. | Partial impact |
Business & product impact
| Area | Why | Impact |
|---|---|---|
| Legal | It fails WCAG 4.1.2 at Level A, the minimum. Australia's Disability Discrimination Act complaints point to WCAG 2.2 AA, and EN 301 549 applies in Europe. | High impact |
| Conversion | Unlabelled sign-up, checkout and contact fields stop people finishing. That is lost customers. | High impact |
| SEO | Search engines don't reward form labels. Don't sell it as an SEO fix. | Low impact |
| Brand trust | A form someone can't fill in feels like a locked door. People remember it. | Moderate impact |
| Cost to fix | Usually a small fix. Fix the shared input component once and every form benefits. | High impact |
Fixing it in code
An email field with only a placeholder
Don't
<input type="email" placeholder="Email">A screen reader says: “Edit text, blank”
Do
<label for="email">Email</label>
<input type="email" id="email">A screen reader says: “Email, edit text”
The for and id link the visible word to the field.
A search box with an icon button and no visible label
Don't
<input type="search">
<button>🔍</button>A screen reader says: “Search text field, blank”
Do
<input type="search" aria-label="Search products">
<button aria-label="Search">🔍</button>A screen reader says: “Search products, search text field”
aria-label gives a name when the design has no visible label.
Fixing it in design and content
Show a label above every field
Don't
Fields show only grey placeholder text, which disappears once someone starts typing.
Do
Each field has a short visible label above it that stays on screen. Placeholders are only for optional examples.
A visible label helps everyone and gives developers the words to link.
Designer's handoff note
Put a visible label on every field, checkbox and radio button. Don't rely on placeholder text.
If a design truly has no visible label, like a search box, write the hidden name in your handoff notes.
Quick test
Tool
Your mouse and the browser
Checklist
- Pass
- Clicking each label puts focus in its field or ticks its box.
- Fail
- Clicking the label does nothing, or there's no label to click.
What a green scan still misses
A scanner finds fields with no name at all. It can't tell if the label is clear, correct, or matches what's shown on screen.
Reference
- Rule ID
label- Raised by
- axe-core: “Form elements must have labels”
- Lighthouse: “Form elements have associated labels”
- WCAG
- 4.1.2 Name, Role, Value (opens in a new tab) · Level A · since WCAG 2.0
- Other standards
- EN 301 549 9.4.1.2 · RGAA 11.1.1
- Last reviewed
- 17 October 2026