Colour accessibility checker

Ensuring that your content is accessible to as many users as possible is a key responsibility of any web designer. One significant aspect of web accessibility is the contrast between text and its background. This is where this widget comes into play. It allows users to input a foreground and background colour in either HEX or RGB formats, and instantly checks if the contrast ratio between them meets the Web Content Accessibility Guidelines (WCAG) thresholds for different levels of text size and content.

The widget is a user-friendly tool designed to simplify the process of checking and ensuring that your colour combinations are in line with WCAG standards. You can input a foreground and background colour either as a HEX value (for example white as #FFFFFF) or as an RGB value (for example white as 255, 255, 255).

It then automatically calculates the contrast ratio between the foreground and background colours. The contrast ratio is a measure of how different the colours are in terms of brightness. A higher contrast ratio generally makes text easier to read. The formula used to calculate the contrast ratio is based on the relative luminance of the two colours, according to the WCAG’s guidelines. The result is a number ranging from 1:1 (no contrast, where both colours are identical) to 21:1 (maximum contrast, like black text on a white background).

The widget checks if the contrast ratio meets the different WCAG criteria for various text sizes:

By presenting the contrast ratio alongside its compliance status with the WCAG levels, the widget offers immediate insights into whether your design is accessible and what adjustments may be needed.

What are accessible colour contrasts

Link

At its core, accessible colour contrast refers to the difference in luminance or brightness between the foreground elements (usually text) and the background behind them. Adequate contrast makes text easier to read, especially for individuals with visual impairments or colour vision deficiencies. This is not just a good practice, it’s an essential standard outlined by the WCAG, ensuring that web content is accessible to all users.

Without sufficient contrast, reading text can be extremely difficult, particularly for people with low vision, colour blindness, or even those using screens in harsh lighting conditions. This can lead to frustration, increased cognitive load, or even exclusion from accessing content altogether.

Why accessible colours matter

Link

Colours are a fundamental part of design. They convey emotions, direct user attention, and can create a visually appealing interface. However, it’s easy to overlook the importance of accessible colours, especially when designing for a broad audience that includes users with varying visual abilities. Accessible colours ensure that your content is inclusive, reaching a wider audience and providing an equitable experience for everyone.

Tips for accessible colours

Link

Even with a tool as helpful as this widget, it’s essential to follow some best practices when selecting colours for your website or app.

Incorporating accessible colour contrast into your designs is a small step that can make a big difference in creating a more inclusive web for everyone. So, next time you’re working on a web project, take advantage of this widget and ensure your colours are doing their part in making the internet accessible to all.

What the result covers

Link

The checker calculates the WCAG contrast ratio from the two selected opaque colours. AA requires 4.5:1 for normal text and 3:1 for large text; AAA requires 7:1 and 4.5:1 respectively. Under WCAG, large text means at least 18 point, or 14 point when bold.

A passing ratio does not by itself make a design accessible. Font weight, size, anti-aliasing, gradients, images, transparency, hover and focus states, and colour-vision differences can affect the result in practice. The calculation also does not assess the newer APCA method. Both colours are stored in localStorage.

Link

Further reading

Link

Widget made with staark