Skip to Content

How we calculate your Accessibility Score

Rather than simply counting how many issues appear on a page, our model tries to answer a more practical question:

Based on what we can detect, how many visitors might struggle to use this page each month?

To do that, we combine:

  • Automated testing results
  • Basic structural analysis of the page
  • Limited but high-impact manual checks
  • UK headline prevalence data to ground the estimates

The result is a range, not a single exact number. Accessibility impact is rarely precise, so we avoid false certainty.


The inputs we use

1) Automated checks

We use results from two established accessibility testing engines:

  • WAVE
  • axe

These provide issue counts for things such as:

  • Missing alt text
  • Low colour contrast
  • Missing form labels
  • Empty or unclear links
  • Heading structure issues
  • Missing landmarks

Automated tools are very good at spotting patterns, but they cannot understand context or real user experience. That’s why we use their output as signals, not absolute truth.


2) Page context from the HTML

We also analyse the structure of the page itself. For example, we count:

  • Total images
  • Total links
  • Whether a form exists
  • Whether video or audio is present

This gives us important denominators.

For example:

  • 5 images missing alt text on a page with 6 images is severe.
  • 5 missing alt attributes on a page with 300 images is still a problem, but proportionally smaller.

This ratio-based approach helps keep the model fair.


3) Manual checks where they matter most

Some of the biggest usability barriers cannot be reliably confirmed by automated tools.

We therefore include manual checks for:

  • Keyboard access
  • Focus visibility

If these fail, they carry significant weight.
If they pass, they contribute nothing.
If they are unknown, we apply a middle value until they’re verified.


The five barrier groups we model

Instead of adding every issue together, we group them into real-world barrier types. This prevents double-counting and keeps the estimate meaningful.


1) Readability

This group covers issues that make text harder to read.

Signals include:

  • Low colour contrast
  • Very small text

Severity increases as issues become more widespread across the page.

Because readability barriers affect a broad cross-section of users in real-world settings, this group carries one of the larger baseline ranges.


2) Read out loud and meaning

This group reflects barriers affecting screen readers and users relying on clear descriptive content.

Signals include:

  • Missing alt text
  • Linked images missing alt text
  • Unclear or empty links
  • Missing page language

For these, we calculate severity proportionally:

Missing items ÷ total relevant elements

So impact increases as the issue becomes more common across the page.


3) Navigation and structure

This group focuses on how easy it is to understand and move around the page.

Signals include:

  • Missing H1
  • Skipped heading levels
  • Missing landmarks, particularly if no main region is detected

These issues tend to affect a narrower but important group of users, so they are weighted accordingly.


4) Completing actions

This group looks at whether users can complete tasks on the page, such as filling in forms or interacting with menus.

Signals include:

  • Keyboard accessibility
  • Focus visibility
  • Missing or broken form labels (if a form exists)

This group is informed by headline UK data about dexterity and motor-related access needs, but it is not tied to a single condition. It represents a broad range of users who may rely on keyboard navigation or experience difficulty using a mouse.

If keyboard access fails or required labels are missing, severity is high because those issues can prevent task completion entirely.


5) Media (video and audio)

If the page contains video or audio, we treat this as needing review.

Automated tools cannot reliably confirm:

  • Captions
  • Transcripts
  • Accessible media controls

So media presence carries a moderate severity until manually verified.


The UK data that informs the model

To ground the model in reality, we use well-established UK headline figures, including:

  • High levels of vision correction usage
  • Prevalence of sight loss
  • Colour vision deficiency
  • Learning disability prevalence
  • Musculoskeletal conditions affecting dexterity

These figures are not used to label visitors. They help define broad baseline ranges for each barrier group.


The baseline ranges

Each barrier group has a baseline range:

  • Readability: 20%–35%
  • Completing actions: 6%–12%
  • Read out loud and meaning: 3%–7%
  • Navigation and structure: 2%–5%
  • Media: 2%–6%

These ranges are then scaled by the calculated severity for the page.

If a group has no issues, its severity is zero and it contributes nothing.


How we avoid double-counting

People can be affected by more than one barrier type.

Rather than adding percentages together, we use a probability-based union calculation. This estimates the likelihood that someone is affected by at least one barrier group, without counting them twice.


Why we cap the result

To prevent extreme edge cases from producing unrealistic figures, we apply a conservative cap:

The total estimated affected share will not exceed 45% of monthly visitors.

This keeps the output responsible and avoids exaggerated results.


What this score is and isn’t

This score is:

  • A structured estimate
  • Grounded in UK data
  • Scaled by the actual severity and spread of issues on the page
  • Designed to highlight meaningful barriers

It is not:

  • A full accessibility audit
  • A legal compliance judgement
  • A replacement for manual testing

Ongoing refinement

This model will continue to evolve. As we introduce more manual verification and refine severity weightings, accuracy will improve.

If you have feedback on the approach or suggestions on how we could refine the algorithm, we welcome it.