Many users rely on browsers and assistive technologies to help them fill out forms quickly and accurately. When input fields collect personal information, their purpose must be programmatically identifiable. This means that browsers and assistive technologies must be able to determine what information a field is requesting based on the code, not just on visual labels, placeholders, or surrounding text.
This identification is provided using the autocomplete attribute. When the attribute is missing or incorrect, browsers and assistive technologies cannot reliably recognise the purpose of form fields. As a result, users may experience slower, more error-prone, or inaccessible form completion.
WCAG Success Criterion
This requirement corresponds to Success Criterion 1.3.5 Identify Input Purpose (Level AA).
Input fields that collect personal information must correctly identify their purpose using supported HTML autocomplete tokens referenced by WCAG. These tokens come from the HTML specification and define a fixed set of recognised input purposes that browsers and assistive technologies understand.
What “Programmatically Identifiable” Means
A form field is programmatically identifiable when its purpose can be determined from the markup alone.
This requires:
- A visible or programmatic label (for example, a <label> element)
- A valid autocomplete attribute when the field collects personal information
The autocomplete attribute does not replace labels. Labels remain mandatory under other WCAG requirements. Autocomplete enhances identification so that browsers, autofill tools, voice input, and assistive technologies can correctly understand and support the field’s purpose.
What Correct Autocomplete Usage Looks Like
The autocomplete attribute is used correctly when:
- The field collects personal information defined by the HTML autocomplete token list
- The input includes the exact token that matches its purpose
- Browsers and assistive technologies can interpret the purpose consistently
Examples of valid autocomplete values include:
autocomplete="name"
autocomplete="email"
autocomplete="address-level2"
autocomplete="postal-code"
autocomplete="bday"
Only supported tokens from the HTML specification satisfy this requirement. Custom, shortened, or partial values (for example, “addr” or “zip”) do not meet the criterion.
What Does Not Require autocomplete
Not every input field needs an autocomplete attribute. This requirement applies only to fields that collect personal information.
Examples that do not require autocomplete include:
- Search fields
- Free-form feedback or comment fields
- Product quantities or filters
- Coupon or promotion codes
- One-time verification codes
- Internal reference or account IDs
Applying autocomplete to these fields is unnecessary and can cause confusion or incorrect autofill behaviour.
Why This Matters
Correct autocomplete usage improves both accessibility and usability.
When autocomplete values are missing or incorrect:
- Browsers and autofill tools cannot reliably populate fields
- Voice input users may struggle to target the correct fields
- Users with cognitive or motor disabilities may need to re-enter data repeatedly
- Form completion becomes slower and more error-prone
Autocomplete works alongside labels to provide additional context. While screen readers primarily announce labels, autocomplete supports consistent identification across assistive technologies, autofill, and password managers.
Examples
Fails when
A form includes fields for name, email, and address, but none include valid autocomplete attributes. Although labels may be present, browsers and assistive technologies cannot reliably determine the purpose of each field for autofill or advanced input support.
Passes when
<input type="text" autocomplete="name">
<input type="email" autocomplete="email">
<input type="text" autocomplete="street-address">
<input type="text" autocomplete="postal-code">
Browsers can autofill the form accurately, and assistive technologies can better support users who rely on programmatic field identification.
Common Practices to Meet This Rule
To meet Success Criterion 1.3.5:
- Identify input fields that collect personal information
- Match each field to the correct HTML autocomplete token
- Add the exact token as the autocomplete value
- Ensure labels are present and correctly associated
- Test using browser autofill and assistive technologies
Common Developer Mistakes
Avoid these frequent errors:
- Using invalid or partial values (for example, “address” or “zip”)
- Applying autocomplete to non-personal fields
- Disabling autocomplete globally without justification
- Assuming
type="email"ortype="tel"is sufficient on its own - Relying on placeholders instead of labels
These patterns often cause silent accessibility failures.
Who Is Affected
Incorrect autocomplete usage impacts:
- Screen reader users and voice input users
- Users with cognitive or motor disabilities
- Users who rely on autofill and password managers
- Anyone completing long or repeated forms
Rule Description
Each input field that collects personal information must include a valid autocomplete attribute using a supported HTML autocomplete token. This allows browsers and assistive technologies to recognise the purpose of the field and provide appropriate support.
The Algorithm
This rule evaluates form inputs as follows:
- Determine whether the field collects personal information
- Identify the matching HTML autocomplete token
- Check that the input includes the correct autocomplete value
- If the purpose cannot be programmatically determined, the field fails
Wrapping Up
Using the autocomplete attribute correctly ensures that personal information fields are easier to understand and complete. When form field purposes are accurately identified, browsers, assistive technologies, and autofill tools can provide meaningful assistance.
Autocomplete does not replace good labels or clear design, but when used correctly, it significantly improves accessibility, efficiency, and user independence.