Direct answer: The 25 cached homepages contain 978 <img> tags, but image delivery attributes are nearly empty: only 17 have both width and height (1.7%), none use loading="lazy", 35 use srcset (all from E24), and decoding="async" and fetchpriority are both zero. Only four sites declare dimensions.
Studies 38–40 covered alt presence and text; this one looks at delivery attributes: dimensions, lazy loading, responsive candidates and decoding hints. Still zero requests on cached HTML, with no real performance measurement.
Method: count the attribute when present
Using the 25 cached homepages from study 4, each <img> is checked for: width and height together, loading="lazy", srcset, decoding="async" and fetchpriority. Presence only; values are not validated and JavaScript is not executed.
| Attribute | Rule | Boundary |
|---|---|---|
| width + height | Both attributes present | Units and ratio not checked |
| loading=lazy | Value must be lazy | eager or absent does not count |
| srcset | Presence counted | Candidate widths not checked |
| decoding / fetchpriority | Presence counted | Value not judged |
Result: dimensions 1.7%, lazy 0
| Attribute | Images (978) | Share |
|---|---|---|
| width + height | 17 | 1.7% |
| loading="lazy" | 0 | 0% |
| srcset | 35 | 3.6% |
| decoding="async" | 0 | 0% |
| fetchpriority | 0 | 0% |
By site: four declare dimensions, one uses srcset
| Type | Sites | Note |
|---|---|---|
| width+height | E04, E11, E13, E30 | 2, 3, 11 and 1 images; 3.7%, 15.8%, 20.4% and 5.6% of each site's images |
| srcset | E24 | 35 images; every other site is 0 |
| lazy | — | None of the 25 homepages |
| decoding / fetchpriority | — | Zero |
The busiest homepages, E02 (143 images) and E17 (103), declare no dimensions; E24 uses srcset on 35 images but has no width/height. When a site does one optimisation, it rarely does the other.
Why these attributes deserve their own line
- Dimensions: without width and height, images push layout as they load; with them, space can be reserved. This study does not measure CLS, only the markup.
- lazy: off-screen images can be deferred; zero lazy attributes means deferral may happen in JavaScript or via browser defaults, which static HTML cannot show.
- srcset: responsive candidates; only E24 uses them, without dimensions alongside.
- decoding / fetchpriority: decode and priority hints; absent across this batch.
What this means for acceptance
- Put attributes in the image acceptance sheet. List alt, dimensions, lazy and srcset separately.
- Dimensions are the cheapest fix. Only 17 of 978 images have them, and adding them needs no design change.
- Zero lazy does not mean no lazy loading. It may be done in JavaScript; check the runtime.
- srcset alone is not enough. E24 has srcset but no dimensions, so layout shift remains possible.
- Do not turn attributes into performance claims. No TTFB, LCP or CLS was measured here.
Limits
- Cached, zero-request: pages are frozen at 2026-10-31 to 11-01.
- Attributes only: values, srcset candidates and real image sizes are not validated.
- No JavaScript: script-set lazy, srcset and dimensions are invisible.
- No performance data: no LCP, CLS or real loading timings.
- 25-site pilot: no industry claim.
Data and reproduction
Anonymised data: equipment-image-attributes-2026.csv (25 rows: images, dimensions, lazy, srcset, decoding, fetchpriority, dimension share). The repository keeps docs/research/2026-11-image-attributes.csv.
Parser: scripts/img_attr_probe.py; unit tests: scripts/test_img_attr_probe.py (8 tests, no network). Run:
python -m unittest scripts.test_img_attr_probe
Related: the homepage image alt coverage and text study, the article image alt pilot, and the homepage semantics pilot.
Sources and definitions
- Homepage cache: 25 homepages from study 4 (2026-10-31 to 11-01).
- Attributes: presence only; no value validation, no JavaScript, no performance measurement.
- Scan: 2026-11-03, zero network requests.