Back to Learn
Pulseaccessibility
Input Buttons Have Discernible Text
What This Audit Checks
This audit verifies that <input> elements with type="button", type="submit", or type="reset" have a discernible accessible name via the value, aria-label, aria-labelledby, or title attribute.
Why It Matters
Input buttons without a name are announced as "button" with no context. Users cannot distinguish between multiple unlabeled submit buttons or know what action they're about to take.
How to Fix It
- Set the
valueattribute -- this is the standard way to label input buttons and also provides visible text. - Use
aria-labelwhen you need the accessible name to differ from the visible text. - Consider using
<button>instead of<input type="button">. The<button>element supports richer content and is easier to style.
<!-- Bad: no accessible name -->
<input type="submit" />
<!-- Good: value provides the name -->
<input type="submit" value="Create account" />
<!-- Better: use a button element -->
<button type="submit">Create account</button>
How Pulse Tracks This
Pulse flags this audit in your Lighthouse accessibility score. When the audit fails, Pulse shows which elements triggered it so you can fix them directly.