[CrUX Announce] The 202204 dataset is live

Skip to first unread message

'❄ Johannes Henkel' via Chrome UX Report (Announcements)

May 3, 2022, 5:06:27 PMMay 3
to '❄ Johannes Henkel' via Chrome UX Report (Announcements)

Hi CrUX users,

This is your monthly announcement that the latest dataset has been published to BigQuery. Yes, it’s a few days early because Google I/O is next week. :-)

The 202204 (April 2022) dataset is now available and it covers 8,602,902 origins, an increase of 0.6% over last month. Here’s a look at origins' Core Web Vitals performance this month:

  • 55.2% of origins had good LCP

  • 94.9% of origins had good FID

  • 71.6% of origins had good CLS

  • 41.2% of origins had good LCP, FID, and CLS

With this release, we’re including experimental.interaction_to_next_paint (INP), a new version of the responsiveness metric. The main difference compared to the previously published experimental.responsiveness metric which we discussed at web.dev/responsiveness and web.dev/better-responsiveness-metric, is that INP no longer uses budgets for each interaction. More documentation will soon be available, and you may also be interested in this Google I/O talk.

We’re also releasing INP as experimental_interaction_to_next_paint in the CrUX API. The thresholds for differentiating between “good”, “needs improvement”, and “poor” are 200ms and 500ms. These differ from the First Input Delay (FID) thresholds of 100ms and 300ms because INP captures the total event duration, not just the delay.

This query shows how to get the good, needs improvement, and poor assessments for experimental.interaction_to_next_paint in BigQuery:


 SUM(IF(inp.end <= 200, inp.density, 0)) AS good_inp,

 SUM(IF(inp.end > 200 AND inp.end <= 500, inp.density, 0)) AS ni_inp,

 SUM(IF(inp.end > 500, inp.density, 0)) AS poor_inp



 UNNEST(experimental.interaction_to_next_paint.histogram.bin) AS inp


 origin = 'https://developers.google.com'

Last but not least, we’re releasing experimental_time_to_first_byte in the CrUX API; you already know this metric from BigQuery as experimental.time_to_first_byte; it’s useful as a diagnostic to differentiate server latency from client latency. The new thresholds in the API and on BigQuery are 800ms and 1800ms.

If you have any questions about CrUX, feel free to reach out to us on any of these channels:



sean martheze

Jun 22, 2022, 1:57:08 AMJun 22
to Chrome UX Report (Discussions), '❄ Johannes Henkel' via Chrome UX Report (Announcements), Johannes Henkel


Thank you for providing insights into the new interaction to next paint.

I have a question regarding the example query provided….

In all examples and in the queries on BigQuery they set the thresholds using bin.start, I see that this example provided is using end and not start is there a reason for this or is it a mistake?



Rick Viscomi

Jun 22, 2022, 8:30:42 AMJun 22
to sean martheze, Chrome UX Report (Discussions), '❄ Johannes Henkel' via Chrome UX Report (Announcements), Johannes Henkel
Hi Sean,

Both are valid approaches, but one advantage to using `end` for the threshold is that you can write it as "less than or equals" which is more consistent with the way thresholds are typically written for metrics in the Web Vitals program.

For example in web.dev/inp, the definition of good INP is described as: "an INP below or at 200 milliseconds means that your page has good responsiveness." And the corresponding implementation in the example query is SUM(IF(inp.end <= 200, inp.density, 0)) AS good_inp.


You received this message because you are subscribed to the Google Groups "Chrome UX Report (Discussions)" group.
To unsubscribe from this group and stop receiving emails from it, send an email to chrome-ux-repo...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/chrome-ux-report/579dd1ec-fff8-4318-9f96-593cdad056aen%40chromium.org.

sean martheze

Jun 22, 2022, 9:00:19 AMJun 22
to Chrome UX Report (Discussions), rvis...@google.com, Chrome UX Report (Discussions), '❄ Johannes Henkel' via Chrome UX Report (Announcements), Johannes Henkel, sean martheze
Ah I see now. Okay, makes sense. Thanks, Rick!

Erik Luchauer

Jul 14, 2022, 1:05:50 PMJul 14
to Chrome UX Report (Discussions), '❄ Johannes Henkel' via Chrome UX Report (Announcements), joha...@google.com
Hi there!

I see that y'all released experimental_time_to_first_byte in the CrUX API last month. I've inherited a Google DataStudio dashboard and would love to add a page to track this metric. Could somebody help me figure out how to do this?

Initially, I just duplicated the FID page and was hopeful that I could just find all of the references to FID and swap them for INP, but I don't even see that metric in my data. Is there something I need to do to first add the metric to my dataset? Hoping somebody here with more DataStudio experience has already done this and can walk me through the process.

FWIW, I did try to add a field to my data source using the provided query in this initial post, but kept getting an error (see attached screenshot). Would appreciate any help in figuring this out.

Thanks heaps!
Reply all
Reply to author
0 new messages