NYC WebPerf Meetup Feb 2020 - Measuring the Adoption of Web Performance Techniques

Paul Calvano
Paul CalvanoPerformance Architect at Etsy
©2019 AKAMAI
Measuring the Adoption of
Web Performance Techniques
NYC WebPerf Meetup
12 Feb 2020
Paul Calvano
Principal Web Performance Architect
@paulcalvano
2
3
4
● Make Fewer HTTP Requests
● Use a Content Delivery Network
● Add an Expires Header
● Gzip Components
● Put Stylesheets at the Top
● Put Scripts at the Bottom
● Avoid CSS Expressions
● Make JavaScript and CSS External
● Reduce DNS Lookups
● Minify JavaScript
● Avoid Redirects
● Remove Duplicates Scripts
● Configure ETags
● Make Ajax Cacheable
Release Date: December 2008
5
● Do Less
● Do it Faster
● Change the Order
Optimizing for performance:
https://twitter.com/TimVereecke
6
7
https://gs.statcounter.com/platform-market-share/desktop-mobile-tablet/worldwide/#monthly-200901-202001
8 https://developers.google.com/speed/pagespeed/insights/
9
10 https://discuss.httparchive.org/t/analyzing-lighthouse-scores-across-the-web/1600
11
12
13
Google BigQuery
5.3 Million
Websites!
14
15
16
17
> 150 Offscreen Images!
18
Off Screen Images
https://discuss.httparchive.org/t/chrome-image-lazy-loading-sites-already-using-it-on-week-1/1707
19
Off Screen Images
https://discuss.httparchive.org/t/chrome-image-lazy-loading-sites-already-using-it-on-week-1/1707
20
https://web.dev/native-lazy-loading
21
https://discuss.httparchive.org/t/chrome-image-lazy-loading-sites-already-using-it-on-week-1/1707
January 2020:
<img loading=lazy> 18,070 sites!
<img loading=eager> 320 sites
<img loading=auto> 443 sites
<iframe loading=lazy> 3,151 sites
22 https://twitter.com/TimVereecke/status/1169880348651446272
23
MORE THAN
80% OF SITES
CAN BENEFIT
FROM IMAGE
OPTIMIZATION !
> 1MB Potential Savings: 949K websites!
https://developers.google.com/web/tools/lighthouse/audits/optimize-images
24 ©2018 AKAMAI
Choosing the Right Image Format
https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/image-optimization
Use browser specific formats: webp, jpeg-xr, jpeg2000
25
V65+ Edge v18+
0.9% of Chrome
Image Requests
45.3% of Chrome
Image Requests
26
Responsive Images served by 65% of sites.
https://developers.google.com/web/tools/lighthouse/audits/oversized-images
Image Source: https://en.wikaipedia.org/wiki/File:Responsive_design_-_Commons_Android_app.jpg
27 ©2018 AKAMAI
28 ©2018 AKAMAI
Original: 954 Bytes
Gzip: 372 bytes
Savings: 61%
29
30
Higher Compression levels Are Expensive
… But Have the Highest Compression Ratios
31https://paulcalvano.com/index.php/2018/07/25/brotli-compression-how-much-will-it-reduce-your-content/
How well are we compressing text assets?
Only 45% of HTML responses were compressed !!!
33
Bundle all your assets!
Don’t bundle
Serve only what’s needed!
Image Source: https://pixabay.com/photos/puppy-tug-o-war-lab-1647692/
34
Critical CSS
Start Render
35
36
41% of sites have more
than 100KB Unused CSS
Unused CSS and JavaScript incurs a processing cost
37 https://httparchive.org/reports/state-of-javascript#bytesJs
38
https://v8.dev/blog/cost-of-javascript-2019
39
4 Critical Domains
3 Possible
Single Points of Failure
40
41
https://speakerdeck.com/csswizardry/more-than-you-ever-wanted-to-know-about-resource-hints
<link rel="dns-prefetch" href="..." />
<link rel="preconnect" href="..." />
<link rel="prefetch" href="..." />
<link rel="prerender" href="..." />
<link rel="preload" href="..." />
42
3rd Party
Protocol
Overhead
<link rel="dns-prefetch" href="..." />
<link rel="preconnect" href="..." />
43
● Performs DNS Lookup in advance of an HTTP request
● Implemented in HTTP Response Header: 522 websites
● Implemented in HTML Body: 1,605,919 websites
<link rel="dns-prefetch" href="..." />
● DNS + TCP + TLS in advance of an HTTP request
● Implemented in HTTP Response Header: 2,895,113 websites
● Implemented in HTML Body: 275,938 websites
<link rel="preconnect" href="..." />
Recommended
©2015 AKAMAI | FASTER FORWARDTM
The fastest request is
the one you don’t have to make.
45
Where Does Resource Caching Happen?
CACHE PARENT
CACHE CHILD
ORIGIN
CDN
BROWSER
GATEWAY
HTTP headers for browser cache
ServiceWorker
HTTP headers
HTTP headers
CDN Config [ UI / API ]
HTTP headers
Reverse Proxy Config [ UI / API ]
46 https://hpbn.co/primer-on-latency-and-bandwidth/
47
No CDN? Where is the Content Served From?
48% of requests were served without a content delivery network.
48 https://developers.google.com/web/tools/lighthouse/audits/cache-policy
49
Cacheabilty based on Cache-Control Header - HTTP Archive, Mobile, August 2019
https://discuss.httparchive.org/t/what-percentage-of-third-party-content-is-cacheable/1614
How Cacheable is Web Content?
50 https://discuss.httparchive.org/t/analyzing-resource-age-by-content-type/1659
51
https://almanac.httparchive.org/
52
https://almanac.httparchive.org/
53
https://almanac.httparchive.org/
54
https://almanac.httparchive.org/
55
https://almanac.httparchive.org/
56
https://almanac.httparchive.org/
57
https://forms.gle/Qyf3q5pKgdH1cBhq5
https://almanac.httparchive.org/
©2018 AKAMAIbit.ly/ha-slack
Chat
github.com/HTTPArchive
Contribute
discuss.httparchive.org
Collaborate HTTP Archive Guided Tour
https://bit.ly/2JmDnSH
59
Q&A
@paulcalvano
1 of 59

Recommended

Common Traits of High Performing Websites, BairesWeb - Argentina by
Common Traits of High Performing Websites,  BairesWeb  - ArgentinaCommon Traits of High Performing Websites,  BairesWeb  - Argentina
Common Traits of High Performing Websites, BairesWeb - ArgentinaPaul Calvano
951 views35 slides
Fluent 2018: Tracking Performance of the Web with HTTP Archive by
Fluent 2018: Tracking Performance of the Web with HTTP ArchiveFluent 2018: Tracking Performance of the Web with HTTP Archive
Fluent 2018: Tracking Performance of the Web with HTTP ArchivePaul Calvano
2.2K views52 slides
Real User Measurement Insights, London WebPerf 2018-Nov-06 by
Real User Measurement Insights, London WebPerf 2018-Nov-06Real User Measurement Insights, London WebPerf 2018-Nov-06
Real User Measurement Insights, London WebPerf 2018-Nov-06Paul Calvano
1.5K views54 slides
Common Traits of High Performing Websites, WebPerfDays Amsterdam 07-Nov-2018 by
Common Traits of High Performing Websites, WebPerfDays Amsterdam 07-Nov-2018Common Traits of High Performing Websites, WebPerfDays Amsterdam 07-Nov-2018
Common Traits of High Performing Websites, WebPerfDays Amsterdam 07-Nov-2018Paul Calvano
883 views36 slides
Bringing JAMStack to the Enterprise by
Bringing JAMStack to the EnterpriseBringing JAMStack to the Enterprise
Bringing JAMStack to the EnterpriseC4Media
479 views95 slides
Fluent 2018: When third parties stop being polite... and start getting real by
Fluent 2018: When third parties stop being polite... and start getting realFluent 2018: When third parties stop being polite... and start getting real
Fluent 2018: When third parties stop being polite... and start getting realAkamai Developers & Admins
559 views83 slides

More Related Content

What's hot

EVOLVE'15 | Enhance | Norberto Leite | Effectively Scale and Operate AEM with... by
EVOLVE'15 | Enhance | Norberto Leite | Effectively Scale and Operate AEM with...EVOLVE'15 | Enhance | Norberto Leite | Effectively Scale and Operate AEM with...
EVOLVE'15 | Enhance | Norberto Leite | Effectively Scale and Operate AEM with...Evolve The Adobe Digital Marketing Community
454 views65 slides
Comparing JVM Web Frameworks - TSSJS 2011 by
Comparing JVM Web Frameworks - TSSJS 2011Comparing JVM Web Frameworks - TSSJS 2011
Comparing JVM Web Frameworks - TSSJS 2011Matt Raible
4.9K views66 slides
Comparing JVM Web Frameworks - Spring I/O 2012 by
Comparing JVM Web Frameworks - Spring I/O 2012Comparing JVM Web Frameworks - Spring I/O 2012
Comparing JVM Web Frameworks - Spring I/O 2012Matt Raible
12.7K views87 slides
Ingress? That’s So 2020! Introducing the Kubernetes Gateway API by
Ingress? That’s So 2020! Introducing the Kubernetes Gateway APIIngress? That’s So 2020! Introducing the Kubernetes Gateway API
Ingress? That’s So 2020! Introducing the Kubernetes Gateway APIVMware Tanzu
243 views20 slides
VizEx View HTML5 workshop 2017 by
VizEx View HTML5 workshop 2017VizEx View HTML5 workshop 2017
VizEx View HTML5 workshop 2017Larson Software Technology
261 views21 slides
Spring Boot—Production Boost by
Spring Boot—Production BoostSpring Boot—Production Boost
Spring Boot—Production BoostVMware Tanzu
661 views21 slides

What's hot(20)

Comparing JVM Web Frameworks - TSSJS 2011 by Matt Raible
Comparing JVM Web Frameworks - TSSJS 2011Comparing JVM Web Frameworks - TSSJS 2011
Comparing JVM Web Frameworks - TSSJS 2011
Matt Raible4.9K views
Comparing JVM Web Frameworks - Spring I/O 2012 by Matt Raible
Comparing JVM Web Frameworks - Spring I/O 2012Comparing JVM Web Frameworks - Spring I/O 2012
Comparing JVM Web Frameworks - Spring I/O 2012
Matt Raible12.7K views
Ingress? That’s So 2020! Introducing the Kubernetes Gateway API by VMware Tanzu
Ingress? That’s So 2020! Introducing the Kubernetes Gateway APIIngress? That’s So 2020! Introducing the Kubernetes Gateway API
Ingress? That’s So 2020! Introducing the Kubernetes Gateway API
VMware Tanzu243 views
Spring Boot—Production Boost by VMware Tanzu
Spring Boot—Production BoostSpring Boot—Production Boost
Spring Boot—Production Boost
VMware Tanzu661 views
Full-Stack Development with Spring Boot and VueJS by VMware Tanzu
Full-Stack Development with Spring Boot and VueJSFull-Stack Development with Spring Boot and VueJS
Full-Stack Development with Spring Boot and VueJS
VMware Tanzu964 views
Creating macOS Build Infrastructure in the Cloud by MacStadium
Creating macOS Build Infrastructure in the CloudCreating macOS Build Infrastructure in the Cloud
Creating macOS Build Infrastructure in the Cloud
MacStadium73 views
Deploying Machine Learning in production without servers - #serverlessCPH by Damien Cavaillès
Deploying Machine Learning in production without servers - #serverlessCPHDeploying Machine Learning in production without servers - #serverlessCPH
Deploying Machine Learning in production without servers - #serverlessCPH
Damien Cavaillès680 views
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx) by Brian Culver
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Brian Culver182 views
Highway to heaven - Microservices Meetup Munich by Christian Deger
Highway to heaven - Microservices Meetup MunichHighway to heaven - Microservices Meetup Munich
Highway to heaven - Microservices Meetup Munich
Christian Deger1.5K views
Rendering: Or why your perfectly optimized content doesn't rank by WeLoveSEO
Rendering: Or why your perfectly optimized content doesn't rankRendering: Or why your perfectly optimized content doesn't rank
Rendering: Or why your perfectly optimized content doesn't rank
WeLoveSEO40 views
Graph ql subscriptions on the jvm by Gerard Klijs
Graph ql subscriptions on the jvmGraph ql subscriptions on the jvm
Graph ql subscriptions on the jvm
Gerard Klijs61 views
Firebase Adventures - Going above and beyond in Realtime by Juarez Filho
Firebase Adventures - Going above and beyond in RealtimeFirebase Adventures - Going above and beyond in Realtime
Firebase Adventures - Going above and beyond in Realtime
Juarez Filho1.4K views
9 steps to awesome with kubernetes by BaraniBuuny
9 steps to awesome with kubernetes9 steps to awesome with kubernetes
9 steps to awesome with kubernetes
BaraniBuuny445 views
Streaming Media West: Webrtc the future of low latency streaming by Alexandre Gouaillard
Streaming Media West: Webrtc the future of low latency streamingStreaming Media West: Webrtc the future of low latency streaming
Streaming Media West: Webrtc the future of low latency streaming
October 2018 ODTUG Webinar - Getting Started with Groovy in EPBCS by Kyle Goodfriend
October 2018 ODTUG Webinar - Getting Started with Groovy in EPBCSOctober 2018 ODTUG Webinar - Getting Started with Groovy in EPBCS
October 2018 ODTUG Webinar - Getting Started with Groovy in EPBCS
Kyle Goodfriend531 views
What's new in Spring Boot 2.0 by VMware Tanzu
What's new in Spring Boot 2.0What's new in Spring Boot 2.0
What's new in Spring Boot 2.0
VMware Tanzu1.9K views
Migration Best Practices - Search Y 2019, Paris by Bastian Grimm
Migration Best Practices - Search Y 2019, ParisMigration Best Practices - Search Y 2019, Paris
Migration Best Practices - Search Y 2019, Paris
Bastian Grimm3.6K views
Lock That Shit Down! Auth Security Patterns for Apps, APIs, and Infra - Sprin... by Matt Raible
Lock That Shit Down! Auth Security Patterns for Apps, APIs, and Infra - Sprin...Lock That Shit Down! Auth Security Patterns for Apps, APIs, and Infra - Sprin...
Lock That Shit Down! Auth Security Patterns for Apps, APIs, and Infra - Sprin...
Matt Raible182 views

Similar to NYC WebPerf Meetup Feb 2020 - Measuring the Adoption of Web Performance Techniques

Web Unleashed '19 - Measuring the Adoption of Web Performance Techniques by
Web Unleashed '19 - Measuring the Adoption of Web Performance TechniquesWeb Unleashed '19 - Measuring the Adoption of Web Performance Techniques
Web Unleashed '19 - Measuring the Adoption of Web Performance TechniquesPaul Calvano
909 views50 slides
Build Better Responsive websites. Hrvoje Jurišić by
Build Better Responsive websites. Hrvoje JurišićBuild Better Responsive websites. Hrvoje Jurišić
Build Better Responsive websites. Hrvoje JurišićMeetMagentoNY2014
570 views79 slides
Web Front End Performance by
Web Front End PerformanceWeb Front End Performance
Web Front End PerformanceChris Love
930 views19 slides
Fronted development trends - past, present and the future by
Fronted development trends - past, present and the futureFronted development trends - past, present and the future
Fronted development trends - past, present and the futureHarijs Deksnis
211 views57 slides
In Search of Speed by
In Search of SpeedIn Search of Speed
In Search of SpeedSergeyChernyshev
797 views45 slides
SpeedGeeks by
SpeedGeeksSpeedGeeks
SpeedGeeksxlight
697 views45 slides

Similar to NYC WebPerf Meetup Feb 2020 - Measuring the Adoption of Web Performance Techniques(20)

Web Unleashed '19 - Measuring the Adoption of Web Performance Techniques by Paul Calvano
Web Unleashed '19 - Measuring the Adoption of Web Performance TechniquesWeb Unleashed '19 - Measuring the Adoption of Web Performance Techniques
Web Unleashed '19 - Measuring the Adoption of Web Performance Techniques
Paul Calvano909 views
Build Better Responsive websites. Hrvoje Jurišić by MeetMagentoNY2014
Build Better Responsive websites. Hrvoje JurišićBuild Better Responsive websites. Hrvoje Jurišić
Build Better Responsive websites. Hrvoje Jurišić
MeetMagentoNY2014570 views
Web Front End Performance by Chris Love
Web Front End PerformanceWeb Front End Performance
Web Front End Performance
Chris Love930 views
Fronted development trends - past, present and the future by Harijs Deksnis
Fronted development trends - past, present and the futureFronted development trends - past, present and the future
Fronted development trends - past, present and the future
Harijs Deksnis211 views
SpeedGeeks by xlight
SpeedGeeksSpeedGeeks
SpeedGeeks
xlight697 views
It is not HTML5. but ... / HTML5ではないサイトからHTML5を考える by Sadaaki HIRAI
It is not HTML5. but ... / HTML5ではないサイトからHTML5を考えるIt is not HTML5. but ... / HTML5ではないサイトからHTML5を考える
It is not HTML5. but ... / HTML5ではないサイトからHTML5を考える
Sadaaki HIRAI3.6K views
Csdn Drdobbs Tenni Theurer Yahoo by guestb1b95b
Csdn Drdobbs Tenni Theurer YahooCsdn Drdobbs Tenni Theurer Yahoo
Csdn Drdobbs Tenni Theurer Yahoo
guestb1b95b4.3K views
Web performance optimization for modern web applications by Chris Love
Web performance optimization for modern web applicationsWeb performance optimization for modern web applications
Web performance optimization for modern web applications
Chris Love1.8K views
Build Fast WordPress Site With Gatsby by Imran Sayed
Build Fast WordPress Site With GatsbyBuild Fast WordPress Site With Gatsby
Build Fast WordPress Site With Gatsby
Imran Sayed1.3K views
Progressive Enhancement 2.0 (Conference Agnostic) by Nicholas Zakas
Progressive Enhancement 2.0 (Conference Agnostic)Progressive Enhancement 2.0 (Conference Agnostic)
Progressive Enhancement 2.0 (Conference Agnostic)
Nicholas Zakas42.5K views
@media - Even Faster Web Sites by Steve Souders
@media - Even Faster Web Sites@media - Even Faster Web Sites
@media - Even Faster Web Sites
Steve Souders11.5K views
Mobile First Responsive Design by Jason Grigsby
Mobile First Responsive DesignMobile First Responsive Design
Mobile First Responsive Design
Jason Grigsby6.4K views
Bringing the JAMstack to the Enterprise by Jamund Ferguson
Bringing the JAMstack to the EnterpriseBringing the JAMstack to the Enterprise
Bringing the JAMstack to the Enterprise
Jamund Ferguson657 views
[convergese] Adaptive Images in Responsive Web Design by Christopher Schmitt
[convergese] Adaptive Images in Responsive Web Design[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web Design
Christopher Schmitt4.8K views
腾讯大讲堂09 如何建设高性能网站 by areyouok
腾讯大讲堂09 如何建设高性能网站腾讯大讲堂09 如何建设高性能网站
腾讯大讲堂09 如何建设高性能网站
areyouok372 views

Recently uploaded

WITS Deck by
WITS DeckWITS Deck
WITS DeckW.I.T.S.
18 views22 slides
Marketing and Community Building in Web3 by
Marketing and Community Building in Web3Marketing and Community Building in Web3
Marketing and Community Building in Web3Federico Ast
15 views64 slides
How to think like a threat actor for Kubernetes.pptx by
How to think like a threat actor for Kubernetes.pptxHow to think like a threat actor for Kubernetes.pptx
How to think like a threat actor for Kubernetes.pptxLibbySchulze1
7 views33 slides
cis5-Project-11a-Harry Lai by
cis5-Project-11a-Harry Laicis5-Project-11a-Harry Lai
cis5-Project-11a-Harry Laiharrylai126
9 views11 slides
Affiliate Marketing by
Affiliate MarketingAffiliate Marketing
Affiliate MarketingNavin Dhanuka
20 views30 slides
ARNAB12.pdf by
ARNAB12.pdfARNAB12.pdf
ARNAB12.pdfArnabChakraborty499766
5 views83 slides

Recently uploaded(10)

NYC WebPerf Meetup Feb 2020 - Measuring the Adoption of Web Performance Techniques