Missing alt text is rare; the empty alt attribute is not
Missing alt text turns out to be the rare failure. On 2026-08-21, across 1,690 image tags on 27 homepages, 106 had no alt attribute at all and 608 shipped an empty one.

FIELD TEST · 2026-08-21 · 27 homepages · 1,690 image tags · single crawl
Sample and method: the same 30-site panel in use since 2026-08-15, each homepage fetched once on 2026-08-21 with a browser user agent from an exit in Osaka, Japan. Every <img> tag in the delivered HTML was counted and its alt attribute recorded as present-with-text, present-and-empty, or absent.
Missing alt text is not the common failure here. Across 1,690 image tags, 106 carried no alt attribute at all, while 608 carried an empty one. The empty attribute is the deliberate choice and it outnumbers the accident by nearly six to one.
How we measured it
One HTTP request per homepage, no rendering, no second attempt. Everything below counts tags in the HTML the server actually sent.
| Rule | Fixed before the run |
|---|---|
| Included | HTTP 200, body ≥ 10,000 bytes, body contains <body |
| Counted | Every <img> in the raw HTML |
| With text | alt present, non-whitespace value |
| Empty | alt present, value is empty |
| Absent | No alt attribute on the tag |
Three of the 30 failed the inclusion rule and are out of every count: stackoverflow.com and medium.com returned 403, and www.reddit.com returned 200 with an 8,393-byte shell. That leaves 27 homepages and a median of 57 image tags each.
The whole panel in three rows
Ninety-four percent of these images declare an alt attribute. Fewer than six in ten put anything inside it.
| State of the attribute | Images | Share |
|---|---|---|
alt with text | 976 | 57.8% |
alt="" | 608 | 36.0% |
No alt attribute | 106 | 6.3% |
Where there is text, it is short: the median alt value is 26 characters, the shortest 3 and the longest 316. Twenty-six characters is roughly "Illustration of a dashboard" — a label, not a description.
Where missing alt text actually shows up
Twenty of 27 sites ship every image with the attribute present. The other seven are almost all publishers, and one site accounts for most of the total.
| Site | Images | No alt attribute |
|---|---|---|
| www.bbc.com | 128 | 64 |
| www.wired.com | 54 | 28 |
| www.nytimes.com | 64 | 6 |
| substack.com | 8 | 3 |
| news.ycombinator.com | 3 | 3 |
| techcrunch.com | 75 | 1 |
| www.wikipedia.org | 1 | 1 |
The BBC's 64 are half its homepage images. Hacker News and the Wikipedia portal are at 100% only because they carry three images and one image respectively, which is the honest way to read a denominator that small.
The empty attribute is the bigger story
On eight of 27 homepages, most images say nothing on purpose. These are not broken pages. They are pages that decided their images carry no information.
| Site | Images | alt="" | Share |
|---|---|---|---|
| www.notion.com | 58 | 52 | 90% |
| discord.com | 171 | 150 | 88% |
| stripe.com | 30 | 26 | 87% |
| www.shopify.com | 52 | 44 | 85% |
| github.com | 24 | 17 | 71% |
| webflow.com | 168 | 111 | 66% |
| linear.app | 32 | 18 | 56% |
| techcrunch.com | 75 | 40 | 53% |
Eight other sites are at the opposite end with zero empty values, including framer with 166 images and the BBC with 128. Same panel, same day, opposite conventions.
What the standard actually says about an empty value
An empty alt is correct markup for a decorative image, and omitting the attribute is not. From the W3C Web Accessibility Initiative tutorial on decorative images, read 2026-08-21: "a null (empty) alt text should be provided (alt="") so that they can be ignored by assistive technologies, such as screen readers." The same page rules out the alternative: "Leaving out the alt attribute is also not an option because when it is not provided, some screen readers will announce the file name of the image instead."
So the 608 are, in markup terms, doing it right. The consequence is separate from the correctness: an AI crawler reading raw HTML gets zero words from every one of them. Only 22 images in the entire panel also carried aria-hidden="true", so the empty value is usually the only signal being sent.
An empty alt is a decision and a missing alt is an accident. On these homepages the decision outnumbers the accident six to one.
What this crawl cannot tell you
We cannot tell whether any given alt="" is the right call. That needs a look at the image, and we looked at markup. A logo repeated in a navigation bar should be empty; a product screenshot should not; both appear as one row in our data.
Client-side rendered images are invisible to this method, and so are CSS background images. A site whose gallery mounts after JavaScript runs shows up here with fewer images than a visitor sees, which is the same limitation measured directly in what AI crawlers get from JavaScript sites.
And we did not test what any engine does with alt values. Nothing here shows that longer alt text gets cited more often. It only shows how much text an image contributes to the document, which is 26 characters at the median and nothing at all 42% of the time.
What to check on your own pages
Three passes over your own HTML, about ten minutes.
- Count your
<img>tags and your emptyaltvalues, then ask whether that ratio matches how many of your images are genuinely decorative. - Give the attribute a real value on anything carrying information — a chart, a screenshot, a product shot, a photo with a caption.
- Do not strip the attribute to avoid writing a value. Empty is the supported way to say "skip this"; absent is the unsupported one.
The same panel is missing a first-level heading on six homepages, measured in the missing h1 tag survey, and what makes any of this text worth quoting is covered in what makes content citable by AI. Keeping the checks running on every page you publish is what QueryWin is being built to do.
Common questions
How did you measure this?
One homepage request per site on 2026-08-21, every <img> tag in the delivered HTML parsed, and its alt attribute bucketed into text, empty or absent. No rendering and no retries.
Is missing alt text bad for SEO?
Absent and empty are treated differently, and absent is the one with no defensible reading. An image with no attribute leaves a screen reader to announce a file name, and leaves a crawler with nothing either way.
Should alt text be empty or removed?
Empty, when the image is decorative. The W3C tutorial names alt="" as the way to have an image ignored and rules out removing the attribute.
How long should alt text be?
The median value in this panel is 26 characters and the longest is 316. Short is normal. Describe what the image shows, then stop.


