All rules
criticalForms

Label every form field

Fields need an accessible name so agents know what to enter — and so autofill works.

Score weight16
Capability checkIdentify form fields

An input with no label, aria-label, or placeholder is unidentifiable. The “Identify form fields” check counts each one, and unlabeled fields are a top reason checkout agents abandon a flow.

How to fix it

Prefer an explicit <label> with the for/id pairing. Add autocomplete attributes so agents and browsers can fill from a stored profile.

Unlabeled to labeled
<!-- before -->
<input type="email" name="email" />

<!-- after -->
<label for="email">Work email</label>
<input id="email" name="email" type="email" autocomplete="email" />
placeholder does not count as a durable label in accessibility terms — it disappears on input. Use it as a hint, never as the only name.

See if your page fails this rule.

The audit runs every documented check and reports the ones that fail, with fixes.

Run your first audit