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.

Rankings & Citations5 min read2292 views
Missing alt text is rare; the empty alt attribute is not

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.

RuleFixed before the run
IncludedHTTP 200, body ≥ 10,000 bytes, body contains <body
CountedEvery <img> in the raw HTML
With textalt present, non-whitespace value
Emptyalt present, value is empty
AbsentNo 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 attributeImagesShare
alt with text97657.8%
alt=""60836.0%
No alt attribute1066.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.

SiteImagesNo alt attribute
www.bbc.com12864
www.wired.com5428
www.nytimes.com646
substack.com83
news.ycombinator.com33
techcrunch.com751
www.wikipedia.org11

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.

SiteImagesalt=""Share
www.notion.com585290%
discord.com17115088%
stripe.com302687%
www.shopify.com524485%
github.com241771%
webflow.com16811166%
linear.app321856%
techcrunch.com754053%

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 empty alt values, 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.

Missing alt text is rare; the empty alt attribute is not