Checked 9/3/2026 · https://web.dev/?hl=de
1 critical barrier · plus 3 to check.
Since the previous scan: no change.
How is the score formed? (100 starting points)
| 6 link(s) without a recognisable name in the HTML | -18 |
| Invalid lang attribute: “de-x-mtfrom-en” | -7 |
| No <h1> heading in the delivered HTML | -7 |
| 2 duplicate id attributes | -7 |
| Result | 61 / 100 |
Operable
6 link(s) without a recognisable name in the HTML
Empty links or just an icon/image without alt. An aria-label set via JavaScript is not recognised here.
<a href="https://web.dev/explore/ai?hl=de"><a href="https://web.dev/explore/how-to-optimize-inp?utm_source=web.de<a href="https://web.dev/identity?hl=de"><a href="https://web.dev/learn/html?hl=de">
This is what you should do: Add visible link text, or use aria-label or an image with alt for icon links.
No <h1> heading in the delivered HTML
Each page should begin with exactly one h1. On pages built via JavaScript the h1 may only appear in the browser — then check in the rendered DOM.
body
This is what you should do: Insert a meaningful <h1> as the first heading (ideally already server-side).
Understandable
Invalid lang attribute: “de-x-mtfrom-en”
The value does not correspond to any valid language code (BCP 47).
<html>
This is what you should do: Correct it to a valid code, e.g. lang="en" or lang="en-GB".
Robust
2 duplicate id attributes
e.g. inp-optimieren, zahlungen-und-identitat. Breaks label-for and aria links.
[id]
This is what you should do: Assign unique ids.
Already handled correctly
- Text alternatives: no automatically recognisable issues
- A skip link to the content exists
- A <main> landmark exists
Next steps
- 6 link(s) without a recognisable name in the HTML. Add visible link text, or use aria-label or an image with alt for icon links.
- Invalid lang attribute: “de-x-mtfrom-en”. Correct it to a valid code, e.g. lang="en" or lang="en-GB".
- No <h1> heading in the delivered HTML. Insert a meaningful <h1> as the first heading (ideally already server-side).
- 2 duplicate id attributes. Assign unique ids.
Weekly re-scan, JS-rendered, email on new barriers — coming soon.
Create an accessibility statement →
Method & limits
On 9/3/2026 the HTML that web.dev delivers on a first visit without login was checked, plus up to four linked CSS files from the same domain. Checked: colour contrast (from CSS), text alternatives, form labelling, names of controls, heading structure, page title and page language, zoom lock, duplicate ids, positive tabindex values, landmarks.
Not checked: anything that arises via JavaScript, keyboard operability, visible focus, focus order, screen-reader announcement, content behind login, subpages. The automated test finds roughly 20–35% of WCAG breaches — the rest needs a manual check. A snapshot, not a legal decision.