Website accessibility checklist

25 checks that catch the most common accessibility failures, grouped by area, each written as one sentence with its WCAG reference, and marked for whether a scanner catches it or a human has to.

No signup, nothing to install. Want these run against your actual site? Scan your site free.

Why a checklist beats good intentions

It replaces memory with a list

Nobody sets out to ship an inaccessible page. It happens one small, unremembered decision at a time: a form field without a label, an image dropped in without alt text, a focus outline switched off because it looked messy in a mockup. A checklist catches what memory doesn't.

It's specific enough to act on

"Be more accessible" isn't something anyone can check off. "Every input has a label tied to it with for" is. Each item below is one concrete, testable sentence, not a mood.

It gets rerun, not just launched

Accessibility isn't a box you tick once at launch. Sites drift: a new component ships without a label, a video gets embedded without captions. Run this again after every redesign, and periodically in between.

The 25 checks, in six areas

Each check is one actionable sentence with its WCAG success criterion in parentheses. Twelve are things an automated scanner (including ours) can check directly from your HTML; the rest need a person to actually look, click, or listen.

Images

The single most common accessibility failure on the web, and usually the fastest to fix.

  • Automated: Every meaningful image has an alt attribute; one with none at all is invisible to a screen reader (WCAG 1.1.1).
  • Automated: Alt text isn't a leftover filename or placeholder like "IMG_4821.jpg" or just "image" (WCAG 1.1.1).
  • Manual check: Alt text describes what the image communicates in context, not a literal inventory of everything visible in it (WCAG 1.1.1).
  • Manual check: Purely decorative images (spacers, dividers, background flourishes) use an empty alt="" so screen readers skip over them (WCAG 1.1.1).
  • Manual check: Complex images like charts or diagrams have their data or meaning available as real text nearby, not locked inside the picture (WCAG 1.1.1).

Found missing alt text? Fix it in minutes with the free alt text generator.

Forms

The failure most likely to actually stop someone from completing a task.

  • Automated: Every input, select, and textarea has a label programmatically tied to it, not just placed near it (WCAG 1.3.1, 4.1.2).
  • Automated: Placeholder text is never the only label on a field, since it disappears the moment someone starts typing (WCAG 3.3.2).
  • Manual check: Required fields are marked with text or a symbol plus aria-required, not colour alone (WCAG 1.4.1, 3.3.2).
  • Manual check: Error messages say what's wrong and how to fix it, and get announced to screen readers the moment they appear (WCAG 3.3.1, 3.3.3).

Structure

The scaffolding that lets people navigate by heading, landmark, or link list instead of reading top to bottom.

  • Automated: Every page has exactly one h1, and heading levels step down in order without skipping (h2 straight to h4, for example) (WCAG 1.3.1).
  • Automated: Every page has a unique, descriptive title, not just the site name repeated everywhere (WCAG 2.4.2).
  • Automated: The page's language is declared with html lang="..." so screen readers use the right pronunciation (WCAG 3.1.1).
  • Manual check: Landmarks (header, nav, main, footer) are present once each and actually wrap the content they claim to (WCAG 1.3.1).
  • Automated: Links and buttons have an accessible name; icon-only buttons and image links aren't silent to assistive tech (WCAG 4.1.2, 2.4.4).

Keyboard

If a mouse is required anywhere on the page, someone gets locked out entirely.

  • Manual check: Every interactive element can be reached and operated using only Tab, Shift+Tab, and Enter or Space (WCAG 2.1.1).
  • Automated: Tab order follows the visual reading order, and nothing jumps around because of a stray tabindex (WCAG 2.4.3).
  • Manual check: Focus is visible at all times; no outline: none left in place without a replacement style (WCAG 2.4.7).
  • Manual check: Nothing traps keyboard focus; modals, menus, and embedded widgets can always be exited without reaching for a mouse (WCAG 2.1.2).

Media

Video and audio need an alternate path to the same information.

  • Manual check: Prerecorded video has accurate captions covering dialogue and important sound (WCAG 1.2.2).
  • Automated: Audio or video doesn't autoplay with sound for more than 3 seconds without an easy way to pause or mute it (WCAG 1.4.2).
  • Manual check: Content that moves, blinks, or auto-updates (carousels, timed alerts) can be paused, stopped, or hidden (WCAG 2.2.2).

Mobile

Small screens turn spacing and zoom mistakes into real barriers.

  • Automated: Pinch-to-zoom is never disabled, with no user-scalable=no or maximum-scale=1 in the viewport meta tag (WCAG 1.4.4).
  • Manual check: Touch targets are at least 24×24px with enough space around them that adjacent taps don't misfire (WCAG 2.5.8).
  • Manual check: Content reflows to a single readable column at 320px wide without a horizontal scrollbar (WCAG 1.4.10).
  • Automated: Duplicate id attributes are removed; they break label associations and in-page links on any device (WCAG 4.1.1).

Reading the "automated" and "manual check" tags

Both matter. A scanner is faster and never gets tired; a person catches what a scanner structurally can't judge.

What a scanner catches

Anything the HTML itself gives away: a missing attribute, a disabled zoom setting, an autoplaying video, a duplicate ID. A machine can read the markup and know instantly, reliably, on every page, every time you run it.

What still needs a person

Anything that requires judgment: does this alt text actually describe the image, is this error message actually clear, can you actually tab out of that modal. No tool can read intent; that's what human review is for.

What this checklist can't do

These 25 items catch the failures we see most often on real sites, but WCAG has far more success criteria than this, and no page passes or fails as a whole based on a checklist alone. Treat this as a strong starting point, not a compliance certificate, and treat this page as technique, not legal advice. If you need to know exactly what a law like the EAA or ADA requires for your business, talk to a lawyer who covers digital accessibility.

FAQ

If I pass all 25, is my site compliant?

No, and be wary of anyone who tells you a checklist alone gets you there. This list covers the failures that show up most often. It isn't the full WCAG standard, and passing it isn't a legal guarantee. Treat it as a strong starting point.

Which of these can GotAlt's scanner check automatically?

The twelve marked "Automated" above: missing or placeholder alt text, unlabeled form fields, broken heading structure, missing page titles and language, links and buttons with no accessible name, disabled pinch-zoom, autoplaying media, and duplicate IDs. Scan your site free to see where you stand.

What do I do with the "manual check" items?

Go through them yourself, or have someone on your team do it: tab through your key pages, listen to a video with captions on, resize your browser to a phone width. None of them take long individually; they're just not things a scanner can judge on its own.

I found missing or bad alt text. Now what?

Use the free alt text generator: drop your images in, get WCAG-friendly alt text out in seconds, for descriptive, SEO, or e-commerce styles.

How often should I run through this?

After every redesign or new template, and periodically in between. Sites drift as new pages and components get added. A monthly pass catches most regressions before a customer or a lawsuit does.

Is this legal advice?

No. This page explains technique (what to check and how), not what any specific law requires of your specific business. For that, talk to a lawyer who covers digital accessibility.

See which of these your site already passes

The free scanner runs the automated half of this checklist against your real pages in under 30 seconds, with a plain-English fix plan for what it finds.

Scan my site for free