Skip to content
Help centre
Scans and audits

Fixing the accessibility issues we flag most

Alt text, form labels and contrast: what the rules actually require and how to satisfy them.

Updated 4 hours ago

Three findings account for most accessibility failures we see.

Missing alt text

The rule is not "every image needs a description". It is that every image needs the *right* treatment:

  • Decorative images get alt="". An empty attribute is correct and tells assistive tech to skip it. This is different from having no attribute at all, which makes a screen reader read the filename.
  • Informative images get a description of what matters. "Our four-person team outside the Camden workshop" beats "team photo".
  • Images that are links or buttons describe the destination or action, not the picture. If your logo links home, alt="Northgate Plumbing home".
  • Images containing text repeat that text exactly. Better: do not put text in images.

A good test: read the page aloud, substituting your alt text for each image. If a sentence stops making sense, the alt text is wrong.

Form fields with no label

A placeholder is not a label. It disappears when someone types, it is usually too low-contrast to read, and screen readers treat it inconsistently.

Every input needs either:

<label for="email">Email</label>
<input id="email" type="email">

or a wrapping label:

<label>Email <input type="email"></label>

Keep the placeholder as an example if you like. It just cannot be the only label.

Contrast below threshold

The thresholds for WCAG 2.2 AA:

  • 4.5:1 for normal text
  • 3:1 for large text (24px and up, or 18.66px and up if bold)
  • 3:1 for meaningful interface elements such as input borders and icons

The two most common failures are light grey helper text on white, and white text on a mid-tone brand colour. Both look fine on a good monitor indoors and vanish on a phone outside.

Usually the fix is to darken the text rather than change the brand colour, which keeps the design intact.

One thing automated testing cannot check: whether colour is your *only* means of conveying something. If form errors are indicated by red text alone, add an icon or a message.

Related