allyWay home
WCAG 4.1.2Level ARobust

Missing Form Label: Error Explained and Fixed

Also called: Form element has no label, Unlabeled input, Form field without label

Definition

A missing form label means an input field, checkbox, select or textarea has no programmatically associated label or other accessible name. Screen readers announce only the field type, so users do not know what to enter.

A missing form label is one of the most frequent errors in accessibility reports: an input field has no label that is connected to it in the code. Scanners call it "Form element has no label" or "Missing form label". A screen reader then announces "edit text, blank" – and the user has to guess whether the field wants a name, an email address or a voucher code.

What it means

Many forms look labeled but are not. The word "Email" may sit right above the field, yet without a for/id connection it is just text nearby. Placeholder text inside the field is no replacement either: it disappears as soon as someone types and is not reliably announced as a name.

The scanner error maps to WCAG 4.1.2 Name, Role, Value (Level A): every form control needs a name that assistive technology can determine. Two more Level A rules of WCAG 2.2 are closely connected. 3.3.2 Labels or Instructions requires labels when content needs user input – and they must be shown to all users, not only to screen reader users. 1.3.1 Info and Relationships covers whether the visible label is actually tied to its field in the code. W3C points out that a field can pass one of these rules and still fail another.

Situation Accessible name? Result
<label for="email"> + id="email" Yes, from the label Passes
Field nested inside <label> Yes, from the label Passes
Only aria-label, no visible text Yes, but hidden Passes 4.1.2, fails 3.3.2
Only placeholder text Not reliable Missing form label
Visible text, no connection No Missing form label

Examples

Example
<!-- Missing form label: visible text, but not connected -->
<p>Email</p>
<input type="email" placeholder="you@example.com">

<!-- Fixed: label connected via for/id -->
<label for="email">Email</label>
<input type="email" id="email" autocomplete="email">

<!-- Fixed: search field with a hidden label and a named button -->
<input type="search" aria-label="Search the shop">
<button>Search</button>

The search button in the last example has text. Without it you would get an empty button right next to the field.

Do

Give every field a visible <label> connected with for/id. Label each part of split fields (day, month, year) and each radio button and checkbox. Group related options with <fieldset> and <legend>.

Don't

Use placeholder text as the only label, put a label next to the field without connecting it, or give several fields the same id.

How to fix a missing form label

    Forms from plugins and form builders are a common source of the error. On WordPress, check contact, newsletter and checkout forms first. Labels and error messages also need readable color contrast.

    Questions

    What does "form element has no label" mean?

    A field has no accessible name. Screen readers can announce its type but not what you should enter.

    Is placeholder text enough as a label?

    No. Placeholder text vanishes when typing starts and is not a reliable accessible name. Use a visible label and, if helpful, a placeholder as an extra hint.

    Can I use aria-label instead of a visible label?

    It gives the field a name and passes 4.1.2. But WCAG 3.3.2 requires labels or instructions that all users can see, so a visible label is the safer choice.

    How do I find fields without labels?

    Run the free WCAG scanner on your homepage. It reports missing form labels together with errors such as an empty link.

    Can allyWay fix missing form labels automatically?

    Yes. allyWay finds fields without labels and gives them labels written by AI from your page content, so every form can be filled in. The automatic fixes are applied by the allyWay script; fixes that change what visitors see only go live after your approval, and every fix is logged. Start for free and make your forms usable for screen reader users.

    Make your website more accessible today

    Built in Europe. Set up in 2 minutes – no developer needed. AI fixes most issues for you.

    1. 1Choose your plan
    2. 2Add one line of code
    3. 3AI fixes your website
    4. Done