Skip to content

Commit 5477b93

Browse files
committed
feat: Publish Web-Perf Wednesday 008
1 parent 5fceae8 commit 5477b93

2 files changed

Lines changed: 123 additions & 0 deletions

File tree

_includes/web-perf-wednesdays.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
### More Web-Perf Wednesdays
22

33
<ol reversed>
4+
<li><a href="/2026/09/web-perf-wednesday-008-good-inp-rates-keep-falling/">Web-Perf Wednesday 008 – Good INP Rates Keep Falling</a></li>
45
<li><a href="/2026/09/web-perf-wednesday-007-chrome-makes-busy-workers-measurable/">Web-Perf Wednesday 007 – Chrome Makes Busy Workers Measurable</a></li>
56
<li><a href="/2026/08/web-perf-wednesday-006-faster-browser-releases-change-your-rum-population/">Web-Perf Wednesday 006 – Faster Browser Releases Change Your RUM Population</a></li>
67
<li><a href="/2026/08/web-perf-wednesday-005-rum-needs-more-than-a-percentile/">Web-Perf Wednesday 005 – RUM Needs More Than a Percentile</a></li>
Lines changed: 122 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,122 @@
1+
---
2+
layout: post
3+
title: "Web-Perf Wednesday 008 – Good INP Rates Keep Falling"
4+
date: 2026-09-09 12:00:00 +0100
5+
categories: Web Development
6+
main: ""
7+
meta: "CrUX shows another fall in good INP experiences, making careful attribution more useful than a quick explanation."
8+
---
9+
10+
There’s been plenty of movement since last week, although the most useful news
11+
is a result without a tidy explanation. The latest Chrome UX Report (CrUX)
12+
shows another fall in the share of origins with good Interaction to Next Paint
13+
(INP), and Chrome itself says the continuing regression is cause for concern.
14+
Chrome has also refined its JavaScript Self-Profiling trial, Safari has rebuilt
15+
its module loader, and Chrome’s fortnightly releases are now live. Teams should
16+
explain their own INP before treating the wider trend as the cause.
17+
18+
## Good INP Rates Keep Falling
19+
20+
The [August 2026 CrUX
21+
release](https://developer.chrome.com/docs/crux/release-notes/) puts the share
22+
of origins with good INP at 85.3%, down from 85.7% in July. Good Largest
23+
Contentful Paint (LCP) fell from 68.3% to 68.1%, Cumulative Layout Shift (CLS)
24+
was effectively flat at 81.5%, and the proportion of origins passing all three
25+
Core Web Vitals edged down from 55.7% to 55.6%.
26+
27+
The INP movement is the important one. The published good-INP figure has fallen
28+
with every monthly dataset since March, from 87.2% then to 85.3% now. Chrome’s
29+
release note calls the continued regression concerning and, usefully, says
30+
there isn’t yet a definitive reason for it. That uncertainty should set the
31+
tone for how teams read their own charts.
32+
33+
CrUX measures a broad population; it doesn’t diagnose any one website. Its
34+
[API reports a rolling 28-day average of aggregated
35+
metrics](https://developer.chrome.com/docs/crux/api/), while the monthly
36+
BigQuery release combines eligible experiences across millions of origins.
37+
The latest dataset also contains 1.3% more origins than July. A global decline
38+
can reflect changes in sites, browsers, devices, traffic, eligibility, or some
39+
mixture of them; it doesn’t tell us which of those moved a particular product.
40+
41+
If your own INP worsened during August, start with the evidence closest to the
42+
user. Compare route, interaction, device class, browser version, application
43+
release, tag-manager change, and consent state. Check sample and completion
44+
counts before trusting a thin segment, and compare distributions as well as
45+
the p75. A [RUM strategy](/consultancy/) should preserve enough of that context
46+
to separate a broadly shared change from a slow interaction introduced by one
47+
journey or release.
48+
49+
CrUX and RUM also answer different questions. CrUX is valuable for confirming
50+
that eligible Chrome users experienced a problem at an origin or URL; your own
51+
instrumentation can name the interaction, route, component, and code involved.
52+
The `web-vitals` attribution build and Long Animation Frames data can help
53+
[identify slow interactions in the
54+
field](https://web.dev/articles/find-slow-interactions-in-the-field), including
55+
whether input delay, event processing, or presentation delay dominated the
56+
result and which scripts contributed.
57+
58+
Treat the new CrUX figure as a reason to investigate, and as useful context
59+
when several sites move together. It doesn’t establish a cause. The most useful
60+
analysis will show whether your regression follows the wider pattern, where it
61+
diverges, and which evidence would change the next decision.
62+
63+
## Chrome Can Explain Gaps Between JavaScript Stacks
64+
65+
[Chrome 153 adds markers to the JavaScript Self-Profiling API’s origin
66+
trial](https://developer.chrome.com/release-notes/153). Each captured sample
67+
can now identify browser activity such as script, garbage collection, style,
68+
layout, or paint. That makes gaps between JavaScript stacks less mysterious:
69+
time without an application frame may still be expensive browser work.
70+
71+
This is an experimental, opt-in signal, so it belongs in a focused
72+
[performance investigation](/performance-audits/) before it belongs on a
73+
shared KPI dashboard. Use it on an interaction whose delay is already visible,
74+
then compare the samples with a trace. The marker narrows the search; it
75+
doesn’t identify the responsible component or make a causal claim by itself.
76+
77+
## Safari Rebuilt Its Module Loader
78+
79+
WebKit has [rewritten Safari’s module
80+
loader](https://webkit.org/blog/18227/fixing-top-level-await-in-safari/) to fix
81+
longstanding top-level `await` ordering and initialisation errors. The old
82+
loader was a self-hosted JavaScript built-in based on an abandoned loader
83+
proposal; the replacement follows the current ECMAScript algorithms in native
84+
C++, which WebKit says also makes startup performance more stable and
85+
predictable.
86+
87+
The implementation is available for testing in Safari Technology Preview 251
88+
and Safari 27 beta; Safari 27 is not yet stable. Applications with async module
89+
graphs should test repeated dynamic imports, failed loads, and dependency
90+
ordering now. The main benefit is correctness, while removing runtime
91+
compilation from a cold module path is a worthwhile performance detail to watch
92+
in representative journeys.
93+
94+
## Chrome’s Two-Week Cycle Is Now Live
95+
96+
The release change covered in [edition
97+
006](/2026/08/web-perf-wednesday-006-faster-browser-releases-change-your-rum-population/)
98+
has now taken effect. [Chrome 153 began rolling out on 8
99+
September](https://developer.chrome.com/blog/chrome-two-week-start), starting
100+
Chrome’s two-week Stable cycle on desktop, Android, and iOS; Chrome 154 is
101+
already in Beta and is scheduled for Stable on 22 September.
102+
103+
Teams now need to operationalise the release annotations, Beta checks, and
104+
browser-version segments they planned. Confirm that dashboards can distinguish
105+
regular and Extended Stable populations, and give the [team testing the real
106+
journeys](/workshops/) enough lead time to find instrumentation changes before
107+
each Stable rollout reaches field data.
108+
109+
## Need Help Explaining an INP Regression?
110+
111+
If INP has moved and the obvious explanations don’t survive contact with the
112+
data, I can help connect CrUX, RUM, traces, releases, and third-party changes
113+
into one investigation. We can identify the interactions and populations that
114+
actually changed, add the attribution your current instrumentation is missing,
115+
and decide whether the result needs an engineering fix, a measurement fix, or
116+
more evidence.
117+
118+
You don’t need to arrive with a complete diagnosis. A CrUX dip, an awkward RUM
119+
distribution, or a trace that doesn’t quite explain the user’s wait is enough
120+
to begin. If you’d like a second pair of eyes on it, [get in touch](/contact/).
121+
122+
{% include web-perf-wednesdays.md %}

0 commit comments

Comments
 (0)