
Website accessibility means making a website usable by people with different abilities, including people who use keyboards, screen readers, screen magnification, captions, or other assistive technologies. Accessibility is not a separate feature that should be added at the end of development. It is part of creating a website that works reliably for more people.
A useful accessibility review does not require checking everything at once. A structured checklist can help teams identify common problems across navigation, forms, content, images, interaction, and responsive layouts.
1. Start With Keyboard Navigation
A website should not require a mouse for basic navigation and interaction. Users who cannot use a mouse may rely entirely on a keyboard or another keyboard-like input device.
Check whether you can:
- Move through interactive elements using the Tab key.
- Move backward using Shift + Tab.
- Activate buttons and links using the keyboard.
- Operate menus, dialogs, accordions, and other interactive components without a mouse.
- See which element currently has keyboard focus.
- Move through the page in a logical order.
Pay particular attention to custom UI components. A component that looks like a button but is implemented as a generic element may not behave correctly for keyboard users.
2. Check Focus Visibility
Keyboard users need to know where they are on the page. If the browser's focus indicator has been removed or is difficult to see, navigation can become confusing.
During testing, move through the page using the Tab key and check that the focused element has a clear visible indication.
Do not remove the default focus outline simply because it does not match the site's visual design. If a custom focus style is used, it should remain clearly visible.
3. Review Heading Structure
Headings help users understand the structure of a page. They are also particularly useful for people who navigate content using assistive technologies.
Review each page and check that:
- There is a clear main heading for the page.
- Heading levels reflect the content hierarchy.
- Headings are used to organize sections rather than only to make text look larger.
- Important sections are not represented only through visual styling.
A heading should describe the section that follows it. This makes long pages easier to scan and understand.
4. Add Meaningful Alternative Text to Images
Images should have appropriate alternative text when the information they contain is meaningful to the page.
For example, a product image, diagram, chart, or instructional image may need a useful description. A decorative image generally should not add unnecessary information for someone using a screen reader.
When reviewing images, ask:
- Does the image communicate information?
- If yes, is that information available in an appropriate text alternative?
- If the image is decorative, is it prevented from creating unnecessary screen-reader noise?
- Does the surrounding text already provide the same information?
Alternative text should describe the purpose or useful information of the image rather than simply listing visual details.
5. Make Links Descriptive
Link text should help users understand where the link will take them. Generic text such as "click here" provides little information when links are viewed independently.
Prefer descriptive link text that explains the destination or purpose. This is especially useful when users scan a page or navigate links using assistive technology.
Also check that links are visually distinguishable from surrounding text and that their focus state is visible.
6. Check Forms and Form Labels
Forms are one of the most important areas to test because users need to understand what information is required and how to correct mistakes.
Review every form for:
- A clear label for each input.
- Instructions when a field requires a particular format.
- Clear indication of required fields.
- Useful validation messages.
- Error messages that identify the affected field.
- A way to understand and correct invalid input.
- Logical keyboard navigation between fields.
Placeholder text should not be treated as a replacement for a proper field label. A label should remain available when the user is entering information.
7. Make Error Messages Useful
An error message should help the user understand what went wrong and what to do next.
For example, instead of displaying only "Invalid input," explain what needs to be corrected when the situation allows it.
When a form contains several errors, consider how users will discover them and move to the relevant fields. Error handling should work for both mouse and keyboard users.
8. Check Color and Contrast
Color should not be the only way important information is communicated. For example, an interface should not rely only on red and green to distinguish two states.
Review text, controls, borders, icons, focus indicators, and other meaningful interface elements for sufficient visual contrast.
Also test the design under different display conditions. A combination that appears clear on one monitor may become difficult to distinguish in another environment.
9. Do Not Depend on Color Alone
If color communicates an important state, provide another indication as well.
For example, a form error could use an icon and explanatory text in addition to a color change. A status indicator can combine color with a text label.
This makes the interface easier to understand for users with color-vision differences and also improves clarity when the display conditions are less than ideal.
10. Check Buttons and Interactive Controls
Interactive elements should communicate their purpose clearly and behave consistently.
Review buttons, menus, accordions, tabs, dialogs, dropdowns, and other controls for:
- Clear accessible names.
- Keyboard operation.
- Visible focus.
- Clear state changes.
- Predictable behavior.
- Appropriate semantic HTML where possible.
When custom components are necessary, accessibility behavior should be considered as part of the component rather than added after the visual implementation is finished.
11. Check Modals and Dialogs
Dialogs can create accessibility problems when focus is not handled correctly.
When a dialog opens, users should be able to understand what it is for and interact with its controls. Keyboard users should not become trapped outside the dialog or lose track of where they were.
Test opening and closing dialogs with the keyboard as well as with a mouse. Also check what happens to focus after the dialog closes.
12. Review Mobile and Responsive Accessibility
Accessibility is not limited to desktop screens. A responsive interface should remain usable when the viewport changes size or when users zoom the page.
Check that:
- Content does not become unnecessarily difficult to read on small screens.
- Interactive controls remain usable.
- Menus and dialogs work correctly on touch devices.
- Important content is not hidden or clipped.
- Users do not need to perform awkward horizontal scrolling to access normal page content.
- Text remains readable when the page is zoomed.
13. Check Dynamic Content
Modern websites frequently update content without reloading the page. Examples include validation messages, notifications, filters, loading states, and dynamically updated results.
When content changes dynamically, check whether the change is understandable to users who may not visually notice the update.
For example, if submitting a form produces an important status message, the user should have a reliable way to discover that result.
14. Review Tables and Data
Tables should be structured so that users can understand the relationship between headers and data.
Review tables for:
- Clear column or row headers where appropriate.
- A logical reading order.
- Meaningful table structure.
- Responsive behavior on smaller screens.
- Important information that is not communicated only through color or position.
For complex data tables, accessibility requirements may be more involved, so testing should be performed against the actual interaction pattern rather than only the visual appearance.
15. Test With Real Browsers and Assistive Technology
Automated accessibility tools can identify many common issues, but automated testing should not be treated as a complete accessibility review.
A practical testing process can combine:
- Automated accessibility checks.
- Keyboard-only testing.
- Browser zoom testing.
- Responsive testing.
- Manual inspection of forms and interactive components.
- Screen-reader testing for important user journeys.
Testing actual user flows is particularly useful. Instead of checking isolated components only, try completing common tasks such as finding information, submitting a form, navigating to another page, opening a menu, or completing a checkout process.
16. Use a Repeatable Accessibility Checklist
A checklist becomes more useful when it is part of the development process rather than a one-time activity.
| Area | What to Check |
|---|---|
| Keyboard | All important interactions work without a mouse. |
| Focus | Focused elements are clearly visible. |
| Headings | Content has a logical heading structure. |
| Images | Meaningful images have appropriate text alternatives. |
| Links | Link purpose is understandable from the link text. |
| Forms | Inputs have labels and useful validation. |
| Errors | Users can identify and correct errors. |
| Color | Important information does not depend on color alone. |
| Contrast | Text and meaningful interface elements remain visually distinguishable. |
| Responsive | The interface remains usable across viewport sizes and zoom levels. |
| Dynamic content | Important updates can be discovered by users. |
| Assistive technology | Important workflows receive manual testing. |
17. Fix Accessibility Issues Based on User Impact
Not every accessibility issue has the same effect on users. A practical remediation process should consider what task is affected and how difficult the problem makes that task.
Start with issues that prevent users from navigating, understanding content, completing forms, or completing important workflows. Then work through lower-impact issues as part of ongoing quality improvements.
Document the issue, affected component or page, expected behavior, actual behavior, and verification method. This makes accessibility work easier to track across development and testing.
18. Build Accessibility Into the Development Process
Accessibility becomes easier to maintain when it is considered during design, development, code review, and testing.
Teams can incorporate accessibility by:
- Using semantic HTML whenever possible.
- Creating reusable accessible UI components.
- Including keyboard testing in QA workflows.
- Running automated accessibility checks during development.
- Reviewing accessibility requirements during design.
- Testing important workflows manually.
- Fixing recurring issues in shared components instead of repeatedly patching individual pages.
This approach reduces the chance that the same accessibility problem will appear across many pages.
A Practical Website Accessibility Review Checklist
Before considering an accessibility review complete, use this quick checklist:
- Can the main navigation be completed with a keyboard?
- Is the current keyboard focus always visible?
- Does the page have a logical heading structure?
- Do meaningful images have appropriate alternative text?
- Are links descriptive and understandable?
- Do form controls have proper labels?
- Are required fields and validation errors clear?
- Can users identify and correct form errors?
- Is important information communicated without relying only on color?
- Are text and important controls visually distinguishable?
- Do menus, dialogs, accordions, and other controls work with a keyboard?
- Does the interface remain usable on smaller screens?
- Does the page remain usable when zoomed?
- Can users discover important dynamic updates?
- Are important workflows tested manually?
- Have automated checks been combined with human testing?
















