Stylesheet loading mix

How CSS arrives: head-blocking, non-blocking, inline, or in the body.

Field data PhoneDesktopAll Scope All sites Q1 2026 edition · All devices field outcomes
Metric LCP INP CLS
1

At a glance the headline numbers for Stylesheet loading mix

How CSS arrives: head-blocking, non-blocking, inline, or in the body.

4
Categories
In the distribution
49.4%
Fleet share
Top: inline
87.1%
Sites with any
Of inline

41.6% of stylesheets load render-blocking in the head.

The State of Web Vitals · Q1 2026 · 94,910 sites · all devices field datacorewebvitals.io/state-of-cwv
2

The stylesheet loading mix mix who uses what, and how stable each group is

Median CLS (sites using feature)
0
0.10
0.20
0.30
0.40
0.50
Inline0.0049% of sites
Head blocking0.0042% of sites
Body0.007% of sites
Head nonblocking0.002% of sites
VariantShare of requestsMedian
Inline
49%
0.00
Head blocking
42%
0.00
Body
7%
0.00
Head nonblocking
2%
0.00

Stylesheet loading mix. On the fleet: 49.4% inline, 41.6% head blocking, 6.8% body. 87.1% of sites use at least one inline.

By count inline leads (49.4%); by bytes it is head blocking (57.3%). computed

The State of Web Vitals · Q1 2026 · 94,910 sites · all devices field datacorewebvitals.io/state-of-cwv
3

Passing CLS per bucket every category and count level at once - color is the pass rate

1
2
3
4
5
6
7
8
9
10
11
12
Inline 49.4%
89
87
88
88
87
86
87
87
82
83
Head blocking 41.6%
88
89
89
89
89
87
87
86
86
87
83
Body 6.8%
89
87
87
87
86
87
84
83
85
93
96
95
Head nonblocking 2.1%
82
90
89
89
87
90
88
86
94
94
90
← few of this category on the pagemany →
60%95%+ of sites passing CLS Faded cells: under 100 sites

Each row is a category, each column its own count bucket (few on the left, many on the right); the cell is the share of those sites passing CLS.

Body swings the hardest: 87% of sites pass CLS with few, 95% with many. computed

The State of Web Vitals · Q1 2026 · 94,910 sites · all devices field datacorewebvitals.io/state-of-cwv
4

Few vs many - does quantity cost CLS? the pass rate with few vs many of each category

60%70%80%90%100% few → many
Inline 49.4% 89%83%
Head blocking 41.6% 88%83%
Head nonblocking 2.1% 90%90%
Body 6.8% 87%95%
% of sites passing CLS · hollow ring = pages with few, solid dot = pages with many

Per category: the pass rate among pages with FEW of it (hollow ring) against pages with MANY (solid dot), worst trend first. Thin buckets are excluded from the endpoints.

More Inline costs the most: the CLS pass rate falls from 89% with few to 83% with many. computed

The State of Web Vitals · Q1 2026 · 94,910 sites · all devices field datacorewebvitals.io/state-of-cwv
5

Why this matters for the Core Web Vitals, and where to start fixing it

Where and how CSS loads decides when the page can first paint. A blocking stylesheet in the head is the normal case: rendering waits for it. Inline CSS skips the request but bloats every HTML response and cannot be cached separately. A stylesheet in the body is a surprise that can block rendering halfway down the page.

CSS that is not needed for the first paint (print styles, below-the-fold components) can load at low priority, off the render path. The hard part is honesty about what is critical: guess wrong and the page paints unstyled.

Related signals CSS coverage (used vs unused) → DOM depth → Image loading attribute → Image dimensions set → Chrome field data from 94,910 sites, representing millions of real page loads · How we measured