Back to all projects
Accessibility · thirteen audits · 2026

The design excludes, not the person.

Between August and September 2026 I checked thirteen Norwegian websites against the accessibility rules that apply to them, and sent each company five notes with the fix written next to each one. Here is what I found, without the names.

The pages people buy from were in good order. On the insurer's site I measured contrast on 550 text elements and found no failure, and all 365 controls had a name. On the bank's mortgage page the 33 headings ran without a level skipped, and every slider in the loan calculator read its value out correctly. The failures sat somewhere else, on site after site: in a document platform, in a recruitment system rented from a supplier, in a language setting made once when the site was built. Nobody had decided to leave anyone out. The design did it on its own, in the places no team was looking at.

Five of the notes

3.1.1 Language of pageLevel A

<html lang="nb"> "Welcome" · "Accessibility checklist"

The bank's design system portal is marked as Norwegian and written in English, on all twelve pages I checked. A screen reader picks its voice from that mark, so a Norwegian voice reads the English text, and it does not come out as an accent. It comes out as different words. This is the site the bank's own designers are sent to for accessibility guidance. The fix is one line in the template.

A bank · September 2026

2.4.1 Bypass blocksLevel A

<a href="#">Hopp til innhold</a>

The first thing the Tab key reaches on the insurer's site is the skip link, and it looks right. Its target is empty. I pressed Enter and nothing happened. So a person using a keyboard passes 14 more stops before the first line of the page, on every page, on every visit, and the one control made to spare them that is the one that does nothing. The fix is one attribute in one component.

An insurance company · September 2026

1.3.1 Info and relationshipsLevel A

StructTreeRoot: none · /Lang: none · same title on all six

The terms behind six insurance products are 103 pages of PDF with no headings, no language and the same internal title on all six. A screen reader gets one unbroken run of text, spoken in whatever voice it happens to be set to. This is the document you read before you buy, and the one you go back to on the day something has happened. The fix is three settings in the template that writes the documents, set once for every product.

The same insurance company

1.3.1 Info and relationshipsLevel A

<p><strong><span style="font-size:24.0pt">About us</span></strong></p>

Twelve of the bank's thirteen job adverts have no headings inside the text, only bold text at 24 points. In a thousand words with one heading there is nothing to move between, so the only way to the requirements and the deadline is to listen from the top, in order. The thirteenth advert has real headings, in the same field of the same system, so the pattern to copy is the bank's own.

The same bank · recruitment site

A judgement call, not a failure

The first heading on the insurer's front page is hidden from view and reads the domain name. The sentence the company chose to greet people with sits one level below it. I would not report this as a failure, because there is one heading and the page works. But the first thing read out on the page most customers land on is a web address. The fix is to promote the visible line and let the hidden one go. Nothing moves on screen.

What the rules say

Private businesses in Norway must meet 35 WCAG criteria under the regulations on universal design of ICT. Public bodies must meet 48 and publish a statement on uustatus.no. The European Accessibility Act has applied in the EU since June 2025. In Norway it is delayed and has no date.

How I checked

An automated pass over each site first, then everything by hand: real key presses, contrast measured against what is actually painted underneath, the heading order read out, the PDF files opened. The tools report what the code says, and that is not always what happens on screen. On one site the stylesheet switched the focus ring off and the tool reported a failure. When I pressed Tab, the browser drew its own ring, so there was no failure. Every note here was confirmed by hand before it was written down. I did not check anything behind a login, the apps, or text on photographs.

Course

Introduction to Web Accessibility, W3Cx. Taught by the W3C Web Accessibility Initiative with UNESCO IITE, 16 to 20 hours. Completed in September 2026.

Try it here

Press Tab to move through this page. The line under the buttons shows the name a screen reader reads out for the element you are on.

In a building, the escape plan is judged by how it reads to someone who has never seen it, on the day they need it. I read websites the same way. The complete notes, with the company's name on them, went to that company. This page keeps what I saw and the fix, and leaves the name out.