
Element Code: PE-032
autocomplete attribute tells the browser what a form field is for so it can autofill it correctly. Missing or wrong values mean broken autofill, slower checkouts, and failed accessibility audits. Use the standard token that matches the field, like email, given-name, or cc-number, and only turn autocomplete off where it genuinely does not belong.What the autocomplete attribute does
The autocomplete attribute is a hint you put on an input, textarea, or select that tells the browser exactly what kind of data the field expects. When it is right, the browser can offer to fill in a saved email, name, address, or card number with one tap. When it is missing or wrong, the browser guesses, and its guesses are often bad: it drops the wrong value in the wrong box, or offers nothing at all.
The values are not free text. There is a defined set of tokens in the WHATWG HTML standard: name, given-name, family-name, email, tel, street-address, postal-code, cc-number, cc-exp, one-time-code, and many more. You can also prefix with a scope like shipping or billing, for example autocomplete="shipping postal-code". Use the real tokens. Made up values do nothing useful.
This check flags fields where autocomplete is used incorrectly: a nonstandard value, the wrong token for the field, or autocomplete disabled where autofill would genuinely help the user.
Why it matters, including for SEO
Autocomplete is not a ranking factor, so let me be honest about the mechanism. It matters because it moves the numbers Google increasingly cares about: real user experience and conversion.
- Speed and friction. Correct autocomplete lets a mobile user fill a checkout in seconds instead of thumb typing an address. Less friction means fewer abandoned forms. On mobile, where typing is painful, this is one of the highest leverage form fixes there is.
- Accessibility and compliance. WCAG 2.1 success criterion 1.3.5, Identify Input Purpose, specifically requires the autocomplete attribute on fields collecting user information. Miss it and you fail an accessibility audit, which is a legal and reputational risk, not just a nice to have.
- Conversion, which feeds everything. Faster, less error prone forms convert better. Better engagement and completion signals are exactly what you want feeding your quality and behavior metrics.
Right token, wrong token
The tokens you will use most
| Field | Correct token | Common mistake |
|---|---|---|
email | e-mail, your-email | |
| First name | given-name | firstname, fname |
| Last name | family-name | lastname, surname |
| Phone | tel | phone, telephone |
| Postal code | postal-code | zip, zipcode |
| Card number | cc-number | card, ccnum |
| One time code | one-time-code | left off, so OTP autofill fails |
When to turn it off
Sometimes off is the right answer. Use autocomplete="off" on fields where saved data would be wrong or a privacy concern: a shared kiosk, a one time verification field you do not want cached, or a search box where offering the last address makes no sense. Do not blanket disable autocomplete across a whole checkout because you think it looks tidier. That is a self inflicted wound on conversion. Off should be a deliberate exception, not the default.
One real gotcha: browsers increasingly ignore autocomplete="off" on login and password fields because password managers override it for user safety. Do not fight that. Let password managers do their job.
How to detect the problem
- Manual autofill test. Save an address and card in your browser, then run through your own forms. Anything that does not offer to fill, or fills the wrong box, has a token problem. This five minute test catches most issues.
- Accessibility audits. Run Lighthouse in Chrome DevTools or axe DevTools. Both flag inputs missing a valid autocomplete under WCAG 1.3.5. Lighthouse has a specific audit for this.
- Crawl and extract. In Screaming Frog or Sitebulb, use custom extraction to pull every
inputand itsautocompletevalue across the site, then scan for missing or nonstandard tokens at scale. - DevTools console and validators. The HTML validator and browser console warnings will call out obviously invalid values.
- Analytics on form fields. If a specific field has high abandonment or correction rates, a bad autocomplete token is a prime suspect.
How to fix it, step by step
- List every form field that collects user data: contact forms, checkout, signup, account settings.
- Map each field to its standard token from the WHATWG list. Match by meaning, not by your internal field name.
- Add scope where a form has both addresses, for example
autocomplete="shipping street-address"andautocomplete="billing street-address", so the browser fills the right block. - Replace nonstandard values. Swap
your-emailforemail,zipforpostal-code, and so on. - Set off only where justified, and document why so nobody re-enables it blindly.
- Retest with real saved data and rerun Lighthouse to confirm the field level warnings are gone and autofill works.
Do this, not that
- Use the exact WHATWG standard tokens like
emailandgiven-name - Add
shippingorbillingscope when a form has two addresses - Test autofill with real saved browser data on mobile
- Include
one-time-codeso OTP autofill works - Run Lighthouse or axe to confirm WCAG 1.3.5 passes
- Invent tokens like
your-emailorfnamethat browsers ignore - Blanket disable autocomplete across an entire checkout
- Rely on
autocomplete="off"to stop password manager fill - Use your internal field name as the token
- Ship forms without ever testing real autofill
What good looks like
Every data collecting field carries the correct standard token, address fields are scoped where needed, autofill works in one tap on mobile, off is used only where genuinely warranted, and Lighthouse reports a clean pass on Identify Input Purpose. Users breeze through your forms and your completion rate shows it.
FAQ
Is the autocomplete attribute a Google ranking factor?
Where do I find the full list of valid tokens?
Should I disable autocomplete on password fields for security?
autocomplete="off" on credential fields on purpose, because letting a password manager fill a strong unique password is safer than forcing users to type or reuse weak ones.How do I handle two address blocks on one page?
shipping or billing, such as autocomplete="billing postal-code" and autocomplete="shipping postal-code". The browser then fills each block with the right saved address instead of mixing them.Want a human to check this for real?
I audit these edge cases by hand across whole crawls, not one URL at a time. If this check is flagging things you cannot explain, let me look.
Claude Vincent is a technical SEO consultant focused on crawlability, rendering, and AI-search visibility. He writes the field guides and case studies at SEO ProCheck, with a bias toward the durable, unglamorous work that decides whether search engines and AI answer engines can actually read and cite a site.
About SEO ProCheck
Technical SEO consulting and GEO strategy with 20 years of enterprise experience. Case studies, resources, and tools for search and AI visibility.
Work With Me
Technical SEO audits, GEO strategy, site migrations, and international SEO. Hourly consulting for teams who need hands-on support, not just reports.







