Skip to main content

Forms

Check the CAPTCHA has an accessible alternative

WCAG 2.2 success criterion 3.3.8 Accessible Authentication (Minimum) (Level AA)

WCAG 2.2
3.3.8 Accessible Authentication (Minimum)
Level
AA
Default severity
Needs review
Available in
Free

Why it matters

Puzzles that ask visitors to type distorted text, solve a sum or pick all the images with a bus can lock out people with cognitive, visual or motor impairments. On sign-in and registration forms, WCAG 2.2 treats such a puzzle as a test visitors must be able to avoid. Whether a CAPTCHA passes depends on how it is set up, so a person has to look.

Who it affects: Screen reader users, voice-control users who say a field's label to move to it, and people with memory or attention difficulties who lose a placeholder once they type.

What Lumtera flags

reCAPTCHA and hCaptcha widgets and frames (except those set to invisible mode), and text or number fields whose name or ID contains "captcha" — the answer boxes of text and math CAPTCHAs. Services that never ask visitors to solve anything, such as Cloudflare Turnstile and Friendly Captcha, are not reported. Each form is reported once.

Check ID captcha-present — use it to filter the content report or with wp lumtera issues --rule.

How to fix it in WordPress

Prefer spam protection that asks visitors nothing, such as an invisible or score-based CAPTCHA, a honeypot field or your form plugin's built-in spam filter. If a challenge must stay, make sure it does not require typing distorted text, solving a sum or memorizing something, offers an audio option, and that visitors can get help another way (for example by email). For sign-in and registration forms this is required by WCAG 2.2 (3.3.8).

Example

Flagged
<label for="captcha">What is 7 + 4?</label>
<input type="text" id="captcha" name="captcha_answer">
Fixed
<!-- No puzzle: an invisible, score-based check or a honeypot field -->
<div class="g-recaptcha" data-size="invisible"></div>

How to check your fix

  1. Update the post. The issue disappears from the Accessibility sidebar on the next check, and from the site report on the next scan.
  2. Click each field's label: the cursor should move into the field. With a screen reader, each field should announce its label when it receives focus.

Find this issue across your whole site

Lumtera runs this check in the block editor sidebar as you write, in the Elementor panel, in Review mode on the live page, and across the whole site in the content report and with wp lumtera scan. You can change its severity or turn it off in Accessibility → Settings.

All checks

Start with the free plugin today

All 64 checks, the editor sidebar, Elementor panel and site report — free, with no account and no page limits.