Ads and accessibility mismatch

Ads online today are not built with accessibility in mind. I’ve asked if there are good ad-platforms out there and the answer is a silent tumbleweed rolling slowly across the dessert. Why is it like this? Time for advertisement platforms to step up!

Old man surfing a website with an tablet is sitting in a beige sofa with a cosy fireplace. The man has gray hair and glasses.

Examples when it does not work

Contrast issues

Contrast issues affect all users and impacts users with vision loss most. It puzzles me that companies paying for ads do not think of visibility since they pay for creators the work and for the placement. This is too common on bus-ads where you have so little time when you are behind the bus driving or as a pedestrian. You should really, with good vision, be able to see it from 100m away. Don’t get me started on company cars with bad screen print, that’s format for another ranting article.

It’s important to have a look at 1.4.3 Contrast (Minimum) which says text must have 4.5:1 for regular text in contrast ratio. Large text can pass with 3:1.
Remember this is the minimum level and not maximum allowed level, so aim higher!

Ad for Elgiganten on Dn.se, default view:

Dn.se Elgiganten ad. Showing ad default view.

Ad for Elgiganten, where green text has low contrast of 2.92:1 in contrast ratio:

Dn.se Elgiganten ad. Contrast issue on large text of 2.92:1.

Ad for Elgiganten, play button has very low contrast, 1.67:1 in ratio:

Dn.se Elgiganten ad. Play button low contrast

This ad for Skoda must win the contrast ratio with a staggering 1.01:1 in ratio:

Dn.se Skoda ad. No resize and very bad contrasts.

ALT-text is missing

When making image ads that have a clear message to donate to a cause, in the example from Aftonbladet. Without vision you cannot donate to the cause since the ALT-text is missing. Thus you are being excluded.

Ad missing ALT-text with donation phone number.

I haven’t found any ads with meaningful alt-texts. Sometimes there’s a generic alt=“Ad” but this means you’re both excluding users and not getting the ad across to all potential users.

Text cut off on zoom

Some ads do resize with the content on zoom even if it’s an image, but the bounding box does not allow for increasing the space or changing from a 3 column view to 2 or 1 columns. The example on Coop.se shows content gets cut-off after 200% zoom and text-resize.

Default:

Ad on Coop.se showing three teasers with text on images.

200% Zoom:

Ad on Coop.se showing three teasers with text on images. 200% zoom cuts off text content.

Text-resize of 200% (32px):

Ad on Coop.se showing three teasers with text on images. Text-resize 200% makes content overflow outside of view.

Overlapping when text is resized

Some ads actually have real text. But, the website or the advertisement platform is not adapting. While this ad probably works better in a screen reader, it’s impossible to read with larger text size set.

The example shows Dn.se Allsvenskan MAX ad fails resize text getting overflowed.

Default view:

Dn.se, allsvenskan MAX ad. Default view.

Text resize 200% (32px) overlapping the text on top of each other:

Dn.se, allsvenskan MAX ad. Text resize fail when text overlaps.

Resize of page does not affect the ads.

Ads not affected by text-resize

For most people using text-resize in the browser the company will pay form the ad-view but the user will not see the ad text.

Text has been resized but does not affect the ad for Jula.

DN.se, Jula ad. Resize text does not affect ads.

Default view without text-resize enabled:

Dn.se text ad for Volkswagen. Does not resize.

Volkswagen ad does not resize the text:

Dn.se ad for Volkswagen. Default view.

Overflow fail

People use different widths on their browsers, sometimes to be able to use multiple programs on the same screen. Overflow fails when you narrow the window and the ad is just an image.

Example of SVD.se:

SVD.se ad for Prisjakt is cut off in narrow window.

Strange inverted zoom

Ad on Aftonbladet.se for Blocket. Zooming in on content does the opposite for the ad and actually zooms out and decreases size. Clearly they have not tested this at all with accessibility in mind.

Let’s make it better

Use real text – not text as part of images

In the world of ads, sometimes you do not have a choice or it’s not easy to do. There are of course benefits to using real text since you can change the zoom without loosing quality – an image becomes pixelated when zooming.

Other benefits:

  • Text-resize
  • Change of color
  • High contrast modes
  • Font flexibility
  • It is possible to translate
  • Content is reusable for different formats and platforms.
  • Easier to adopt to dark mode

If you do use a link (URL) in the image, be sure to make it short so the ALT-text also can be understandable. An image with a QR-code should state that the QR-code is in the image and also where it leads. Using a QR-code could be easier for some since they do not have to memorize the link.

For all text content in an image you need to consider 2.5.3 Label in name.

What should you include in ALT-text?

As all ALT-text you should start with the most important part and continue with less important parts. The basics of writing ALT-text can be read in Alt-texts: The Ultimate Guide.

Practical example

Let’s look at an example where AI-services have done complicated things.

Ad example, described in text that follows.

AI suggestion:

ALT=”ICAKaviar_Mildrökt_VälbalanseradRökigFastGod_TestAlltOmMat_20241014_DisplayAnnons_GAM360”

Underscore and capitalized words makes the ad unnecessary verbose and hard to read. Not all contents is added and the AI function cannot know the context and what is important.

Better example:

ALT=”Annons från ICA för ICA Kaviar mildrökt. Utsedd till bäst i test enligt Allt om Mat 14 oktober 2024: Välbalanserade smaker med tydlig rökighet. Bra lagom fast konsistens. God eftersmak.”

End with the action, “Go to Ica.se to see product”.

Depending on context, use clarifying wording that it’s an ad. Put all the text in the ALT-text.

Video ads

Start with making sure the script for the video production includes verbal descriptions of such things as names or texts on display in the video and important visuals. This decreases the need of alternate video with audio description tracks. Always include captioning since most people view video content on social media without sound. They can be on a bus without headphones or putting kids to bed and rather not wake them up. So if you miss captions in the content you miss the chance to sell to a lot of people. Some platforms do not allow captions with files ( such as .srt or .vtt formats), embed the caption in the video in these cases since it is better than no caption at all.

For audio, people can listen to video content but move focus when the ads arrive. If you miss the visual description in the audio track you’re missing a lot of users. Personally I am in the habit of multi-tasking and focusing on something else. So if you don’t even verbally tell me the company name or pitch you pay for views without value.

Other parts of importance:

  • Put text on solid backgrounds with good contrast.
  • The video and audio should be easy to follow, so don’t go too fast.
  • Make sure captions come synchronized and at least one line at a time.
  • Avoid very high sound in the beginning and keep volume at the same level.
  • Autoplaying sticky videos should be avoided.
  • Make sure not to have ARIA-LIVE reading out updates such as the number of seconds to the next video. It interrupts the user.

Conclusion

Ads suck today, either the advertisement platforms do not support what is needed for accessibility or the publisher platform has restrictions. Let us increase the demands when choosing and procuring a platform. Everyone should be able to read ads if they want to.

Get notified when we write new stuff

About once a month we write an article about accessibility or usability, that's just as awesome as this one! #HumbleBrag

Simply drop your email below.

We work world wide, if you need help send us an email!
hello@axesslab.com