Why a sudden change in LCP and CLS in CrUX API results?

151 views
Skip to first unread message

Anthony RICAUD

unread,
Jun 2, 2021, 6:36:46 AM6/2/21
to Chrome UX Report (Discussions)
Hi,

A few origins I follow just saw a sudden change in the reported LCP and CLS values from yesterday to today. All the changes I've noticed have been for the better but they are quite unusual. For LCP, I've seen a change up to 1100ms. For CLS, up to 0.40.

Is there any reason for those changes? I'm thinking CLS could be because of the new session window based computation coming into effect. But I'm not aware of any LCP change.

Thanks,
Anthony.

Rockey Nebhwani

unread,
Jun 2, 2021, 9:24:03 AM6/2/21
to Chrome UX Report (Discussions), rik...@gmail.com
I am seeing 3 different changes - 

LCP Improvements - I believe these are due to LCP changes in Chrome88 which are getting reflected in Crux API only now. (https://chromium.googlesource.com/chromium/src/+/refs/heads/main/docs/speed/metrics_changelog/2020_11_lcp.md). I can confirm that I am seeing significant improvement for a site which was using Hydration. 
CLS Improvements - New session window based definition
FCP bucketing - CRUX API reported various buckets based on previous threshold (which I believe was 1 Secs for 'Good' bucket). This was changed to 1.5 Secs but Crux API never reflected this. From today, I am seeing significantly big 'Good' bucket for FCP and my guess is that Crux API is now reflecting revised thresholds. 

Kristian Sköld

unread,
Jun 2, 2021, 12:47:54 PM6/2/21
to Chrome UX Report (Discussions), rockey....@gmail.com, rik...@gmail.com
This corresponds to a blog article we published back in February https://medium.baqend.com/the-core-web-vital-largest-contentful-paint-just-changed-dramatically-b7bf5b7f17f3 

We simply looked at the RUM data we had from our customers and the effect of Chrome 88 showed differences in LCP as reported by the JS API of up to 50% faster.
We were surprised, that the actual CrUX data didn't change though.
In a recent discussion with Rick I pointed out that Chrome still was reporting old and new LCP timers and he confirmed that the new timers will be used in the future in CrUX - but not when. Don't know why, but the thread kept being deleted.

I guess the change you are seeing (and so are we of course) is exactly this.
Just immensely surprised this wasn't announced anywhere (at least as far as I could find) since it definitely changes a lot for many site owners. 

Rick Viscomi

unread,
Jun 2, 2021, 12:58:35 PM6/2/21
to Chrome UX Report (Discussions), kristia...@googlemail.com, rockey....@gmail.com, rik...@gmail.com
Hi everyone,

Rockey is correct that there were three changes recently. I'll be posting a formal announcement soon with a link to a blog post that goes into more detail, but to summarize the change log:

- LCP in CrUX has been aligned with the version used by the public API since M88 in January
- CLS has been aligned with the changes outlined in https://web.dev/evolving-cls/
- FCP's "good" threshold has been changed to 1.8 seconds

Apologies if this took anyone by surprise but all of the changes should lead to improvements, so hopefully a welcome surprise :)


Rick

Kristian Sköld

unread,
Jun 2, 2021, 1:31:00 PM6/2/21
to Rick Viscomi, Chrome UX Report (Discussions), rik...@gmail.com, rockey....@gmail.com
Excellent news-although explaining this to everyone who has automated reporting and performance KPIs will be ...interesting.

Will this change also be reflected in the historical monthly CrUX DB or only be effective from today onwards?

Rick Viscomi

unread,
Jun 2, 2021, 2:05:44 PM6/2/21
to Chrome UX Report (Discussions), kristia...@googlemail.com, Chrome UX Report (Discussions), rik...@gmail.com, rockey....@gmail.com, Rick Viscomi
My hope is that everyone who depends on the CrUX dataset is subscribed to the CrUX Announce, group where we make product announcements for changes like this. This group, "CrUX Discuss", is cc'd on all announcements so if you're reading this you're already getting product announcements.

Historical LCP and CLS data won't be overwritten and these changes will only apply to future datasets.  For FCP, I will be updating all historical data in the `materialized` tables so that `fast_fcp` and `avg_fcp` are calculated using the new threshold. This will also apply to downstream consumers like the CrUX Dashboard.
Reply all
Reply to author
Forward
0 new messages