From 00bf93cd87cd624b0db70588b7095943979efc77 Mon Sep 17 00:00:00 2001 From: Barry Date: Tue, 25 Aug 2020 22:40:54 +0100 Subject: [PATCH 1/4] Update percentile wording --- src/content/en/2019/cdn.md | 50 +++++++++++++++++++------------ src/content/en/2019/javascript.md | 16 +++++----- src/content/en/2019/media.md | 22 +++++++------- 3 files changed, 50 insertions(+), 38 deletions(-) diff --git a/src/content/en/2019/cdn.md b/src/content/en/2019/cdn.md index cc0694c08f0..58bb203b1a1 100644 --- a/src/content/en/2019/cdn.md +++ b/src/content/en/2019/cdn.md @@ -486,11 +486,15 @@ In contrast, the median TLS negotiation for the majority of CDN providers is bet - p10 - p25 - p50 - p75 - p90 + Percentile + + + + 10 + 25 + 50 + 75 + 90 @@ -649,7 +653,7 @@ For resource requests (including same-domain and third-party), the TLS negotiati Distribution of TLS negotiation time for site resources broken down by CDN -
Graph showing most CDNs have a TLS negotiation time of around 80 ms, but some (Microsoft Azure, Yahoo, Edgecast, ORIGIN, and CDNetworks) start to creep out towards 200 ms - especially when going above the p50 percentile.
+
Graph showing most CDNs have a TLS negotiation time of around 80 ms, but some (Microsoft Azure, Yahoo, Edgecast, ORIGIN, and CDNetworks) start to creep out towards 200 ms - especially when going above the 50th percentile.
Figure 10. Resource TLS negotiation time.
@@ -683,11 +687,15 @@ Most CDNs balance the need for shared certificates and performance. Most cap the - p10 - p25 - p50 - p75 - p90 + Percentile + + + + 10 + 25 + 50 + 75 + 90 @@ -842,10 +850,10 @@ Most CDNs balance the need for shared certificates and performance. Most cap the
- Figure 13. Resource SAN count (p50). + Figure 13. Resource SAN count (50th percentile). -
Bar chart showing the data from Table 14 for the p50 percentile.
-
Figure 13. Resource SAN count (p50).
+
Bar chart showing the data from Table 14 for the 50th percentile.
+
Figure 13. Resource SAN count (50th percentile).
@@ -853,11 +861,15 @@ Most CDNs balance the need for shared certificates and performance. Most cap the - p10 - p25 - p50 - p75 - p90 + Percentile + + + + 10 + 25 + 50 + 75 + 90 diff --git a/src/content/en/2019/javascript.md b/src/content/en/2019/javascript.md index 332dd3e8102..61bbc37a100 100644 --- a/src/content/en/2019/javascript.md +++ b/src/content/en/2019/javascript.md @@ -31,7 +31,7 @@ Sending smaller JavaScript bundles to the browser is the best way to reduce down Figure 1. Distribution of JavaScript bytes per page. -
Bar chart showing 70 bytes of JavaScript are used in the p10 percentile, 174 bytes for p25, 373 bytes for p50, 693 bytes for p75, and 1,093 bytes for p90
+
Bar chart showing 70 bytes of JavaScript are used in the 10th percentile, 174 bytes for 25th percentile, 373 bytes for 50th percentile, 693 bytes for 75th percentile, and 1,093 bytes for 90th percentile
Figure 1. Distribution of JavaScript bytes per page.
@@ -43,7 +43,7 @@ Looking at these numbers, it's only natural to wonder if this is too much JavaSc Figure 2. Distribution of JavaScript per page by device. -
Bar chart showing 76 bytes/65 bytes of JavaScript are used in the p10 percentile on desktop and mobile respectively, 186/164 bytes for p25, 391/359 bytes for p50, 721/668 bytes for p75, and 1,131/1,060 bytes for p90.
+
Bar chart showing 76 bytes/65 bytes of JavaScript are used in the 10th percentile on desktop and mobile respectively, 186/164 bytes for 25th percentile, 391/359 bytes for 50th percentile, 721/668 bytes for 75th percentile, and 1,131/1,060 bytes for 90th percentile.
Figure 2. Distribution of JavaScript per page by device.
@@ -59,7 +59,7 @@ We can get an idea by analyzing main thread processing times for V8 at different Figure 3. V8 Main thread processing times by device. -
Bar chart showing 141 ms/377 ms of processing time is used in the p10 percentile on desktop and mobile respectively, 352/988 ms for p25, 849/2,437 ms for p50, 1,850/5,518 ms for p75, and 3,543/10,735 ms for p90.
+
Bar chart showing 141 ms/377 ms of processing time is used in the 10th percentile on desktop and mobile respectively, 352/988 ms for 25th percentile, 849/2,437 ms for 50th percentile, 1,850/5,518 ms for 75th percentile, and 3,543/10,735 ms for 90th percentile.
Figure 3. V8 Main thread processing times by device.
@@ -83,7 +83,7 @@ One avenue worth exploring when trying to analyze the amount of JavaScript used Figure 5. Distribution of total JavaScript requests. -
Bar chart showing 4/4 requests for desktop and mobile respectively are used in the p10 percentile, 10/9 in p25, 19/18 in p50, 33/32 in p75 and 53/52 in p90.
+
Bar chart showing 4/4 requests for desktop and mobile respectively are used in the 10th percentile, 10/9 in 25th percentile, 19/18 in 50th percentile, 33/32 in 75th percentile and 53/52 in 90th percentile.
Figure 5. Distribution of total JavaScript requests.
@@ -99,7 +99,7 @@ Third-party JavaScript can come from any external, third-party source. Ads, anal Figure 6. Distribution of first and third-party scripts on desktop. -
Bar chart showing 0/1 request on desktop are first-party and third-party respectively in p10 percentile, 2/4 in p25, 6/10 in p50, 13/21 in p75, and 24/38 in p90.
+
Bar chart showing 0/1 request on desktop are first-party and third-party respectively in 10th percentile, 2/4 in 25th percentile, 6/10 in 50th percentile, 13/21 in 75th percentile, and 24/38 in 90th percentile.
Figure 6. Distribution of first and third-party scripts on desktop.
@@ -107,7 +107,7 @@ Third-party JavaScript can come from any external, third-party source. Ads, anal Figure 7. Distribution of first and third party scripts on mobile. -
Bar chart showing 0/1 request on mobile are first-party and third-party respectively in p10 percentile, 2/3 in p25, 5/9 in p50, 13/20 in p75, and 23/36 in p90.
+
Bar chart showing 0/1 request on mobile are first-party and third-party respectively in 10th percentile, 2/3 in 25th percentile, 5/9 in 50th percentile, 13/20 in 75th percentile, and 23/36 in 90th percentile.
Figure 7. Distribution of first and third party scripts on mobile.
@@ -117,7 +117,7 @@ For both mobile and desktop clients, more third-party requests are sent than fir Figure 8. Distribution of total JavaScript downloaded on desktop. -
Bar chart showing 0/17 bytes of JavaScript are downloaded on desktop for first-party and third-party requests respectively in the p10 percentile, 11/62 in p25, 89/232 in p50, 200/525 in p75, and 404/900 in p90.
+
Bar chart showing 0/17 bytes of JavaScript are downloaded on desktop for first-party and third-party requests respectively in the 10th percentile, 11/62 in 25th percentile, 89/232 in 50th percentile, 200/525 in 75th percentile, and 404/900 in 90th percentile.
Figure 8. Distribution of total JavaScript downloaded on desktop.
@@ -125,7 +125,7 @@ For both mobile and desktop clients, more third-party requests are sent than fir Figure 9. Distribution of total JavaScript downloaded on mobile. -
Bar chart showing 0/17 bytes of JavaScript are downloaded on mobile for first-party and third-party requests respectively in the p10 percentile, 6/54 in p25, 83/217 in p50, 189/477 in p75, and 380/827 in p90.
+
Bar chart showing 0/17 bytes of JavaScript are downloaded on mobile for first-party and third-party requests respectively in the 10th percentile, 6/54 in 25th percentile, 83/217 in 50th percentile, 189/477 in 75th percentile, and 380/827 in 90th percentile.
Figure 9. Distribution of total JavaScript downloaded on mobile.
diff --git a/src/content/en/2019/media.md b/src/content/en/2019/media.md index 6e72e95827c..7522b76fe3f 100644 --- a/src/content/en/2019/media.md +++ b/src/content/en/2019/media.md @@ -22,7 +22,7 @@ From a pure bytes perspective, HTTP Archive has [historically reported](https:// Figure 1. Web page bytes: image and video versus other. -
Bar chart showing in the p10 percentile 44.1% of page bytes are media, in the p25 percentile 52.7% is media, in the p50 percentile 67.0% is media, in the p75 percentile 81.7% is media, and in the p90 percentile 91.2% is media.
+
Bar chart showing in the 10th percentile 44.1% of page bytes are media, in the 25th percentile 52.7% is media, in the 50th percentile 67.0% is media, in the 75th percentile 81.7% is media, and in the 90th percentile 91.2% is media.
Figure 1. Web page bytes: image and video versus other.
@@ -54,7 +54,7 @@ There are three metrics to consider when looking at pixel volume: CSS pixels, na Figure 3. Image pixels per page (mobile): CSS versus actual. -
A comparison of the CSS pixels allocated to image content compared to the actual image pixels for mobile, showing p10 (0.07 MP actual, 0.04 MP CSS), p25 (0.38 MP actual, 0.18 MP CSS), p50 (1.6 MP actual, 0.65 MP CSS), p75 (5.1 MP actual, 1.8 MP CSS), and p90 (12 MP actual, 4.6 MP CSS)
+
A comparison of the CSS pixels allocated to image content compared to the actual image pixels for mobile, showing 10th percentile (0.07 MP actual, 0.04 MP CSS), 25th percentile (0.38 MP actual, 0.18 MP CSS), 50th percentile (1.6 MP actual, 0.65 MP CSS), 75th percentile (5.1 MP actual, 1.8 MP CSS), and 90th percentile (12 MP actual, 4.6 MP CSS)
Figure 3. Image pixels per page (mobile): CSS versus actual.
@@ -62,7 +62,7 @@ There are three metrics to consider when looking at pixel volume: CSS pixels, na Figure 4. Image pixels per page (desktop): CSS versus actual. -
A comparison of the CSS pixels allocated to image content compared to the actual image pixels for desktop, showing p10 (0.09 MP actual, 0.05 MP CSS), p25 (0.52 MP actual, 0.29 MP CSS), p50 (2.1 MP actual, 1.1 MP CSS), p75 (6.0 MP actual, 2.8 MP CSS), and p90 (14 MP actual, 6.3 MP CSS)
+
A comparison of the CSS pixels allocated to image content compared to the actual image pixels for desktop, showing 10th percentile (0.09 MP actual, 0.05 MP CSS), 25th percentile (0.52 MP actual, 0.29 MP CSS), 50th percentile (2.1 MP actual, 1.1 MP CSS), 75th percentile (6.0 MP actual, 2.8 MP CSS), and 90th percentile (14 MP actual, 6.3 MP CSS)
Figure 4. Image pixels per page (desktop): CSS versus actual.
@@ -84,7 +84,7 @@ If we had one image that filled the entire screen perfectly, this would be a 1x Figure 5. Image pixel volume versus screen size (CSS pixels). -
A comparison of the pixel volume required per page relative to the actual screen size CSS pixels, showing p10 (20% mobile, 2% desktop), p25 (97% mobile, 13% desktop), p50 (354% mobile, 46% desktop), p75 (1003% mobile, 123% desktop), and p90 (2477% mobile, 273% desktop).
+
A comparison of the pixel volume required per page relative to the actual screen size CSS pixels, showing 10th percentile (20% mobile, 2% desktop), 25th percentile (97% mobile, 13% desktop), 50th percentile (354% mobile, 46% desktop), 75th percentile (1003% mobile, 123% desktop), and 90th percentile (2477% mobile, 273% desktop).
Figure 5. Image pixel volume versus screen size (CSS pixels).
@@ -168,7 +168,7 @@ Of course, web pages are not uniform in their use of image content. Some depend Figure 8. Image format usage per page. -
A bar chart showing in p10 percentile no image formats are used at all, in the p25 percentile three JPGs and four PNGs are used, in the p50 percentile nine JPGs, four PNGs, and one GIF are used, in the p75 percentile 39 JPEGs, 18 PNGs, two SVGs, and two GIFs are used and in the p99 percentile, 119 JPGs, 49 PNGs, 28 WebPs, 19 SVGs and 14 GIFs are used.
+
A bar chart showing in 10th percentile no image formats are used at all, in the 25th percentile three JPGs and four PNGs are used, in the 50th percentile nine JPGs, four PNGs, and one GIF are used, in the 75th percentile 39 JPEGs, 18 PNGs, two SVGs, and two GIFs are used and in the 99th percentile, 119 JPGs, 49 PNGs, 28 WebPs, 19 SVGs and 14 GIFs are used.
Figure 8. Image format usage per page.
@@ -192,7 +192,7 @@ There are two ways to look at image file sizes: absolute bytes per resource and A comparison of image formats by file size -
A chart showing in p10 percentile 4 KB of JPEGs, 2 KB of PNG and 2 KB of GIFs are used, in the p25 percentile 9 KB JPGs, 4 KB of PNGs, 7 KB of WebP, and 3 KB of GIFs are used, in the p50 percentile 24 KB of JPGs, 11 KB of PNGs, 17 KB of WebP, 6 KB of GIFs, and 1 KB of SVGs are used, in the p75 percentile 68 KB of JPEGs, 43 KB of PNGs, 41 KB of WebPs, 17 KB of GIFs and 2 KB of SVGs are used and in the p90 percentile, 116 KB of JPGs, 152 KB of PNGs, 90 KB of WebPs, 87 KB of GIFs, and 8 KB of SVGs are used.
+
A chart showing in 10th percentile 4 KB of JPEGs, 2 KB of PNG and 2 KB of GIFs are used, in the 25th percentile 9 KB JPGs, 4 KB of PNGs, 7 KB of WebP, and 3 KB of GIFs are used, in the 50th percentile 24 KB of JPGs, 11 KB of PNGs, 17 KB of WebP, 6 KB of GIFs, and 1 KB of SVGs are used, in the 75th percentile 68 KB of JPEGs, 43 KB of PNGs, 41 KB of WebPs, 17 KB of GIFs and 2 KB of SVGs are used and in the 90th percentile, 116 KB of JPGs, 152 KB of PNGs, 90 KB of WebPs, 87 KB of GIFs, and 8 KB of SVGs are used.
Figure 10. File size (KB) by image format.
@@ -202,7 +202,7 @@ From this we can start to get a sense of how large or small a typical resource i Figure 11. Bytes per pixel. -
A candlestick chart showing in p10 percentile we have 0.1175 bytes-per-pixel for JPEG, 0.1197 for PNG, 0.1702 for GIF, 0.0586 for WebP, and 0.0293 for SVG. In the p25 percentile we have 0.1848 bytes-per-pixel for JPEGs, 0.2874 for PNG, 0.3641 for GIF, 0.1025 for WebP, and 0.174 for SVG. In the p50 percentile we have 0.2997 bytes-per-pixel for JPEGs, 0.6918 for PNG, 0.7967 for GIF, 0.183 for WebP, and 0.6766 for SVG. In the p75 percentile we have 0.5456 bytes-per-pixel for JPEGs, 1.4548 for PNG, 2.515 for GIF, 0.3272 for WebP, and 1.9261 for SVG. In the p90 percentile we have 0.9822 bytes-per-pixel for JPEGs, 2.5026 for PNG, 8.5151 for GIF, 0.6474 for WebP, and 4.1075 for SVG
+
A candlestick chart showing in 10th percentile we have 0.1175 bytes-per-pixel for JPEG, 0.1197 for PNG, 0.1702 for GIF, 0.0586 for WebP, and 0.0293 for SVG. In the 25th percentile we have 0.1848 bytes-per-pixel for JPEGs, 0.2874 for PNG, 0.3641 for GIF, 0.1025 for WebP, and 0.174 for SVG. In the 50th percentile we have 0.2997 bytes-per-pixel for JPEGs, 0.6918 for PNG, 0.7967 for GIF, 0.183 for WebP, and 0.6766 for SVG. In the 75th percentile we have 0.5456 bytes-per-pixel for JPEGs, 1.4548 for PNG, 2.515 for GIF, 0.3272 for WebP, and 1.9261 for SVG. In the 90th percentile we have 0.9822 bytes-per-pixel for JPEGs, 2.5026 for PNG, 8.5151 for GIF, 0.6474 for WebP, and 4.1075 for SVG
Figure 11. Bytes per pixel.
@@ -226,17 +226,17 @@ One [Lighthouse](./methodology#lighthouse) test is an A/B comparing baseline wit Figure 12. Percent 'optimized' images. -
Bar chart showing in the p10 percentile 100% of images are optimized, same in p25 percentile, in the p50 percentile 98% of images are optimized (2% not), in the p75 percentile 83% of images are optimized (17% not), and in the p90 percentile 59% of images are optimized and 41% are not.
+
Bar chart showing in the 10th percentile 100% of images are optimized, same in 25th percentile, in the 50th percentile 98% of images are optimized (2% not), in the 75th percentile 83% of images are optimized (17% not), and in the 90th percentile 59% of images are optimized and 41% are not.
Figure 12. Percent "optimized" images.
-The savings in this AB Lighthouse test is not just about potential byte savings, which can accrue to several MBs at the p95, it also demonstrates the page performance improvement. +The savings in this AB Lighthouse test is not just about potential byte savings, which can accrue to several MBs at the 95th percentile, it also demonstrates the page performance improvement.
Figure 13. Projected page performance improvements from image optimization from Lighthouse. -
Bar chart showing in the p10 percentile 0 ms could be sized, same in p25 percentile, in the p50 percentile 150 ms could be saved, in the p75 percentile 1,460 ms could be saved and in the p90 percentile 5,720 ms could be saved.
+
Bar chart showing in the 10th percentile 0 ms could be sized, same in 25th percentile, in the 50th percentile 150 ms could be saved, in the 75th percentile 1,460 ms could be saved and in the 90th percentile 5,720 ms could be saved.
Figure 13. Projected page performance improvements from image optimization from Lighthouse.
@@ -331,7 +331,7 @@ Earlier, in Figure 5, we showed that the volume of image co Figure 19. Lighthouse audit: Offscreen. -
A bar chart showing in the p10 percentile 0% of images are offscreen, in the p25 percentile 2% are offscreen, in the p50 percentile, 27% are offscreen, in the p75 percentile 64% are offscreen, and in the p90 percentile 84% of images are offscreen.
+
A bar chart showing in the 10th percentile 0% of images are offscreen, in the 25th percentile 2% are offscreen, in the 50th percentile, 27% are offscreen, in the 75th percentile 64% are offscreen, and in the 90th percentile 84% of images are offscreen.
Figure 19. Lighthouse audit: Offscreen.
From 18fbd339a38d5ffc58aef93561cfe5f7a21f6490 Mon Sep 17 00:00:00 2001 From: Barry Date: Tue, 25 Aug 2020 23:49:01 +0100 Subject: [PATCH 2/4] Add colgroup scope --- src/content/en/2019/cdn.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/content/en/2019/cdn.md b/src/content/en/2019/cdn.md index 58bb203b1a1..eac7aa39e9c 100644 --- a/src/content/en/2019/cdn.md +++ b/src/content/en/2019/cdn.md @@ -486,7 +486,7 @@ In contrast, the median TLS negotiation for the majority of CDN providers is bet - Percentile + Percentile @@ -687,7 +687,7 @@ Most CDNs balance the need for shared certificates and performance. Most cap the - Percentile + Percentile @@ -861,7 +861,7 @@ Most CDNs balance the need for shared certificates and performance. Most cap the - Percentile + Percentile From 0c39f9c6c5d8d143779127f97a3e39a5616d6396 Mon Sep 17 00:00:00 2001 From: Barry Date: Fri, 28 Aug 2020 14:52:54 +0100 Subject: [PATCH 3/4] Better wway of handling percentile headers --- src/content/en/2019/cdn.md | 28 ++++++++++------------------ 1 file changed, 10 insertions(+), 18 deletions(-) diff --git a/src/content/en/2019/cdn.md b/src/content/en/2019/cdn.md index eac7aa39e9c..91310f4c0f4 100644 --- a/src/content/en/2019/cdn.md +++ b/src/content/en/2019/cdn.md @@ -486,15 +486,11 @@ In contrast, the median TLS negotiation for the majority of CDN providers is bet - Percentile - - - - 10 - 25 - 50 - 75 - 90 + 10th percentile + 25th percentile + 50th percentile + 75th percentile + 90th percentile @@ -687,15 +683,11 @@ Most CDNs balance the need for shared certificates and performance. Most cap the - Percentile - - - - 10 - 25 - 50 - 75 - 90 + 10th percentile + 25th percentile + 50th percentile + 75th percentile + 90th percentile From e7fb6b38ae10bbee0403be6fe4a5367708e39fb4 Mon Sep 17 00:00:00 2001 From: Barry Date: Fri, 28 Aug 2020 14:59:34 +0100 Subject: [PATCH 4/4] Missed one --- src/content/en/2019/cdn.md | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/src/content/en/2019/cdn.md b/src/content/en/2019/cdn.md index 91310f4c0f4..3d824bd6bda 100644 --- a/src/content/en/2019/cdn.md +++ b/src/content/en/2019/cdn.md @@ -853,15 +853,11 @@ Most CDNs balance the need for shared certificates and performance. Most cap the - Percentile - - - - 10 - 25 - 50 - 75 - 90 + 10th percentile + 25th percentile + 50th percentile + 75th percentile + 90th percentile