Expose ECT for sites
HI,
Not sure if this should be in front-end or back-end (guess it should technically be in both), but one of the things I've used CrUX data for, which I'd like to see this expose, is effective connection type.
- What percentage of users are on (effective) 3G connections? I find that most people assume "my users are in the US and Europe -- everybody is on 4G" though that's obviously not true and CrUX data can provide a sense of how untrue that is. I've used this query before:
SELECT
origin,
form_factor.name as form_factor,
effective_connection_type.name as ect,
SUM((
SELECT
SUM(bin.density)
FROM
UNNEST(first_contentful_paint.histogram.bin) bin
WHERE origin IN ('https://www.bmwusa.com', 'https://www.infinitiusa.com', 'http://www.lincoln.com'))) AS density
FROM
`google.com:chrome-ux-report-test.chrome_ux_report.20171018_preview_origin`
group by form_factor, origin, ect
HAVING density > 0
Thanks for the suggestion!
Your motive is interesting, but I am afraid there is a slight catch. Just because, say, 40% data of example.com is from 3G in CrUX report, can we fairly say that represents the actual %?
Nonetheless, we can always expose which % of data has the selected dimensions (eg. 30% of total data is phone+3G, when phone and 3G are selected as dimensions). The conclusion is up to the user of the tool.
I will put this expected feature in our pipeline.
Depends on how you define "data" and "actual %". IIRC, this data is based on requests. So it should accurately represent the "actual % (of requests)" (at least with the caveat of those who have opted-in, and to the same extent that the FCP and load metrics are accurate).
Where it gets tricky is trying to conflate requests with users. You're likely to see a lot less requests per user (while on 3G), so this will undercount # of users and sessions (same as with the speed data that you present).
Good point. I am not sure if a data point is equated with requests or sessions. It has been announced that the effective connection type is collected through Network Information API.
Let us circle back at it.