Great to see some fantastic #webperf work happening on GOV.UK at the moment. The team have been gradually removing the shard domain for critical assets, and it's made quite a difference! Images from Chrome on a 3G connection and S4 on 3G. 1/4
Considering where we were at the start of Feb: HTTP/1.1, SRI, shard domain, ~13 TCP connections. Now down to just 1 TCP connection in many cases. 2/4
And we can finally make the most the features H2 has to offer. Serving all assets off a single domain allows:
• all assets to use a connection that is up to speed (TCP slow start)
• prioritisation can happen across all assets
• no more h2 connection coalescing required
3/4
A few more improvements coming very soon too, so the site is (hopefully) going to get quicker for all devices and connections.
2/26
‡ Note: since December 2019 GOV.UK requires explicit opt-in for tracking which introduces bias. This is especially true for mobile devices, since the cookie banner takes up more screen estate and is more likely to be accepted.
‡ Note: since December 2019 GOV.UK requires explicit opt-in for tracking which introduces bias. This is especially true for mobile devices, since the cookie banner takes up more screen estate and is more likely to be accepted.
Users - GA definition based on cookies:
- Safari - 42.81%
- Chrome - 39.79%
- Edge - 7.67%
- Samsung Internet - 4.86%
- Firefox - 1.29%
- Safari (in-app) - 1.24%
- Android Webview - 1.22%
- Internet Explorer - 0.57%
- Amazon Silk - 0.27%
‡ Note: since December 2019 GOV.UK requires explicit opt-in for tracking which introduces bias. This is especially true for mobile devices, since the cookie banner takes up more screen estate and is more likely to be accepted.
Users - GA definition based on cookies:
- Safari - 45.09%
- Chrome - 37.98%
- Edge - 7.04%
- Samsung Internet - 4.81%
- Safari (in-app) - 1.39%
- Android Webview - 1.33%
- Firefox - 1.27%
- Internet Explorer - 0.59%
- Amazon Silk - 0.25%
🧵As I mentioned last week GOV.UK removed jQuery as a dependency for all frontend apps, meaning 32 KB of minified & compressed JS was removed. So let's see what difference this has made for users by examining our RUM data. Thread will mainly focus on JS CPU time.
A good place to start is users on low spec devices. The Universal Credit sign-in page shows a lot of this traffic, as seen in the images below.
We see many of our key metrics trending down (for p75) after the change, including frontend time, First CPU Idle, JS Long Tasks