SEO-10
Images missing alt or dimensions
What the check measures
On every live page we count images that are missing alt, OR missing explicit dimensions (width and height). The finding is raised when the share of such images exceeds 20 %. The threshold lives in config/ under seo.SEO-10 (max_), is marked PROPOSAL, and the report gives count and total.
It goes further than STR-05 in the core set, which watches alt only. Dimensions are here because their absence makes content jump around while loading: the browser does not know how much space to reserve, and when the image arrives it shoves the text below it. That is exactly what SEO-21 measures.
An empty alt="" does not count as missing: it is the valid marking of a decorative image. Such an image enters the count only through missing dimensions.
An <img> tag with no source at all has not been counted since 2026-09-19. An empty <img src=""> displays nothing and shifts no layout; in production such dead template leftovers produced four findings reading “2 of 4 images”, where the sensible advice is to remove the tags, not to add dimensions to them. An image enters the count when it has a src or a srcset. The finding text also says separately how many images have no alt and how many have no dimensions.
What the check does not do: it does not judge the quality of the alternative text (alt="image" passes), it cannot see dimensions set in CSS instead of attributes, and it cannot see images inserted via background-. The finding is page-level; severity is warning.
How strong the evidence is
We recommend it because it does no harm or has some other benefit, but we promise nothing about whether it makes language models cite you. Nobody has demonstrated that yet.
This code bundles two things with different strengths of evidence, and merging them would be dishonest.
| Part of the finding | What we know about it |
|---|---|
Missing alt | Normative for accessibility (a WCAG criterion, enforceable in the EU). Documented for image search: Google uses alternative text to understand an image and recommends writing it descriptively. Not documented for visibility in AI answers. |
| Missing dimensions | Purely a performance matter. Without dimensions the browser cannot reserve space and content shifts, and layout shift is part of Core Web Vitals, which Google's own documentation names as used by its ranking systems for classic search. Not documented for AI. |
The class of the whole finding is therefore “effect not demonstrated”, meaning for visibility in AI, which is what this audit is about. It does not mean fixing it is optional.
And one thing to take from this finding first: you owe alternative text to specific people who read the web with a screen reader. That is a reason on its own and needs no search engine and no model.
How to fix it
Both are fixed in one pass through the template:
<!-- Wrong: no alt, no dimensions -->
<img src="pump.jpg">
<!-- Right: descriptive alt, dimensions in attributes -->
<img src="pump.jpg" alt="Heat pump installed on the north wall of a house"
width="1200" height="800">
<!-- Decorative: empty alt, dimensions still yes -->
<img src="divider.svg" alt="" width="800" height="12">- Dimensions belong in attributes even when CSS controls the size. The browser derives the aspect ratio from them and reserves the space;
width: 100%in CSS does not override that, the two work together. altdescribes what matters about the image, not that it is an image. The measure: what you would say over the phone to somebody who cannot see it.- Do not add
altin bulk with a script.alt="image"on a thousand images clears the finding and helps nobody, and from then on the site looks fixed while it is not. - Fix the template, not the page. A product card without dimensions means one template and a thousand affected pages.
What the report says about it
Finding description
The page has [imagesPhrase] with a source (`src` or `srcset`) in total, and [missing] of them are missing `alt`, dimensions, or both: [missingAlt] have no `alt` and [missingDimensions] have no explicit `width`/
Recommendation
Add `alt` (descriptive, or `alt=""` for purely decorative images) and explicit `width`/
Sources
- Google Search Central: Google image SEO best practices (accessed 2026-09-12)
- Google Search Central: Understanding page experience (accessed 2026-09-12)
- W3C WAI: Images tutorial (accessed 2026-09-12)
Text verified 2026-09-12