The form autocomplete attribute in HTML helps users fill out forms faster because it shows them saved input for common fields.
Table of Content
What Is the Form Autocomplete Attribute in HTML?
The autocomplete attribute tells the browser whether it should remember user input and suggest saved values.
It works on the whole form or a single input. Most browsers support this feature and let users complete forms. That does not require users to type the same data again.
A form that uses autocomplete helps users finish tasks faster with fewer errors.
Set the attribute to "on" or "off" inside a <form> or an <input> tag. Here is an example:
<input type="email" name="email" autocomplete="on">The "on" value to tell the browser to store the value and show it again while the "off" to block it. Here is a quick comparison between them:
| Attribute Value | Purpose | Common Use Cases | Priority |
|---|---|---|---|
on | Allows the browser to suggest saved values | Email, Name, Phone | Works at the input level, overrides the form |
off | The browser does not show saved values | Passwords, Private input fields | Works at the input level, overrides form |
Full List of Autocomplete Attribute Values in HTML Form and Input
You can use more than just “on” or “off” to help the browser fill in the right information. Here is a list that shows them:
namefor full nameemailfor email addressusernamefor login namesnew-passwordto set a new passwordtelfor phone numberaddress-line1for street addresspostal-codefor zip codecountryfor country namecc-numberfor card numbercc-expfor card expiration date
Each value maps the field to a specific type of stored data.
For examples:
<input type="text" name="fullname" autocomplete="name">
<input type="email" name="email" autocomplete="email">
<input type="text" name="username" autocomplete="username">
<input type="password" name="newpass" autocomplete="new-password">
<input type="text" name="cardexp" autocomplete="cc-exp">
<input type="text" name="cardnumber" autocomplete="cc-number">These help the user fill out the form faster. When the browser shows saved values, The user does not write the information; he simply chooses one from the list.
Here is a quick comparison between autofill in HTML and JavaScript:
- HTML autocomplete uses the browser’s built-in memory to suggest saved values. It needs no extra code.
- JavaScript autofill depends on scripts that set input values through logic and functions.
If you need full control, use JavaScript. If you want a quick way to help users, use the HTML attribute.
How to Use Autocomplete on <form> vs <input> in HTML
You can place autocomplete="on" or "off" inside a <form> to apply it to all fields at once.
<form autocomplete="on">
<input type="email" name="email">
<input type="tel" name="phone">
</form>Also, you can place it inside each <input> to choose which fields to include.
<form>
<input type="text" name="fullname" autocomplete="name">
<input type="password" name="pass" autocomplete="off">
</form>The input-level setting always overrides the form-level one.
Disable Autocomplete for Sensitive Fields
Some fields require extra protection. Set autocomplete=”off” to not allow browsers to save or suggest input.
<input type="password" name="login-password" autocomplete="off">This helps prevent auto-filled mistakes and protects private data from others who use the same device.
Examples of Autocomplete Attribute in HTML
Basic Name and Email Fields with Autocomplete:
<form autocomplete="on">
<input type="text" name="fullname" autocomplete="name">
<input type="email" name="email" autocomplete="email">
</form>
This form lets the browser use autocomplete for both fields. If the user typed the data before, the browser shows suggestions to speed up the process.
Disable Autocomplete for Login Form:
<form autocomplete="off">
<input type="text" name="username">
<input type="password" name="password">
</form>
This form does not allow the browser to suggest or save any input. Use it to keep login data private and prevent unwanted autofill.
Mixed Use of Autocomplete for Custom Control:
<form>
<input type="text" name="first-name" autocomplete="given-name">
<input type="text" name="last-name" autocomplete="family-name">
<input type="password" name="newpass" autocomplete="new-password">
<input type="tel" name="mobile" autocomplete="tel">
</form>
This form sets a custom value for each input. The browser reads each value and shows the right suggestion. It helps fill each field with the correct saved data.
Credit Card Form with Autocomplete:
<form>
<input type="text" name="card-number" autocomplete="cc-number">
<input type="text" name="exp-date" autocomplete="cc-exp">
<input type="text" name="zip" autocomplete="postal-code">
</form>
This example shows a payment form. It uses field-specific values so the browser can match and suggest card info and postal codes. The user can complete payments faster with fewer steps.
Wrapping Up
In this article, you learned what the autocomplete attribute does and how it changes form behavior. You also saw where to place it, how to use field-specific values, when to block suggestions, and how it compares to JavaScript solutions.
Here is a quick recap:
- Use autocomplete to help users fill forms faster.
- Add it to forms or inputs based on what you need.
- Use field values like
nameoremailto guide the browser. - Turn it off for passwords or private data.
FAQs
What is the purpose of <input autocomplete> in HTML?
How do I use <form autocomplete="off"> in HTML?
Which <input> types support the autocomplete attribute?
- <input type="text">
- <input type="email">
- <input type="password">
- <input type="tel">
- <input type="search">
What are valid values for <autocomplete> in HTML forms?
- "on"
- "off"
- "name"
- "email"
- "username"
- "new-password"
- "current-password"
Similar Reads
The HTML samp tag shows the result of a computer program or command. It helps readers know which text came…
The heading elements define a content structure in HTML. Use <h1> to <h6> to show levels. <h1> means the main…
The DOCTYPE ensures that your HTML is readable by browsers and ensures that pages follow modern standards. Understand the DOCTYPE…
Email templates are still the key tools for work and brands in HTML. A simple email can reach many people,…
HTML is the main content for every web page. It helps you structure text, links, and media. You can build…
HTML attributes add extra detail to elements so the browser knows how to handle them. Here you will see examples…
HTML5 gave the web new elements that describe content with more meaning. Developers now use these elements to build pages…
HTML select tag and option tags let users pick values in a form. You use them to create dropdowns. The…
HTML Boolean attributes control the behavior of elements and do not need a value. These attributes simplify logic and reduce…
Text on a page often moves from left to right. Some languages move from right to left. HTML gives control…