Why Performance Matters Up to 40% of users will abandon a request and possibly never return, if it doesn’t load within 3 seconds. -Gomez http://www.mcrinc.com/Documents/Newsletters/201110_why_web_performance_matters.pdf
Why Performance Matters Walmart saw up to a 2% increase in conversions for every 1 second of improvement in load time. Every 100ms improvement also resulted in up to a 1% increase in revenue. https://wpostats.com/2015/11/04/walmart-revenue.html
Why Performance Matters The Aberdeen Group discovered a 1- second delay resulted in 11% fewer page views, a 16% decrease in customer satisfaction, and 7% loss in conversions. https://wpostats.com/2015/10/29/aberdeen-1-percent.html
Why Performance Matters Mozilla cut load time by 2.2 seconds and saw download conversions increase by 15.4% https://wpostats.com/2015/10/29/mozilla-2point2.html
Time to First Byte TTFB measures the duration from the user or client making an HTTP request to the first byte of the page being received by the client's browser.
Speed Index Speed Index is the average time at which visible parts of the page are displayed. It is expressed in milliseconds and dependent on size of the view port.
CSS • Minify files • Split into 3 files – Above the fold main page – Below the fold main page – Interior • Use LoadCSS to load in below the fold css – Use as a fallback
Fonts • Font loading event built into browsers soon • Use current tools for best browser support – Font face observer – Google Web Font Loader – LoadCSS • Decide whether you want FOIT (Flash of Invisible Text) or FOUT (Flash of Unstyled Text)
Measuring Performance • RUM – Real User Data – Measured using browser APIs • Synthetic – Simulated User Testing – Simulated using real devices and browsers
Navigation Timing API • Backend Time = responseEnd – requestStart • Time to First Byte = responseStart – connectEnd • Frontend Time = now – domLoading • Total Time = now – navigationStart
Resource Timing API • Measure the performance of each resource being downloaded by the user. • TTFB = responseStart – startTime • DNS Lookup = domainLookupEnd – domain LookupStart • TCP = connectEnd – connectStart
Creating a Culture of Performance • Has to come from the top down – Show the impact performance has on business – Use video to show you vs competitor • Create a Performance Budget / Specification • Recognize developers and designers great work
We’re Just Scratching the Surface • Designing for Performance by Lara Hogan • Follow Tammy Everts on Twitter and Blog • Follow Steve Souders Twitter and Blog • More resources at mattshull.com/umbraco