The performance business pitch

2010 update:
Lo, the Web Performance Advent Calendar hath moved

Dec 24 This post is the last article in the 2009 performance advent calendar experiment.

The idea for this post actually came from the awesome Jeremy Hubert. I met him after a tech talk at Yahoo! I co-delivered and we talked about the presentation. The talk contained an opening part with the various business stats that were presented at Velocity this year (The Year of the Business Metrics) - not that I thought anyone at the tech talk needed to hear about business metrics. I believe developers are naturally attracted to performance, the same way as we are attracted to writing good quality maintainable code. We just like what we do and want to be good at it. The reason I added the business part is because I wanted to give the attendees something to "take home" and present to their bosses should their bosses need convincing. Jeremy suggested I should've instead created a downloadable presentation for people who are interested. So here is the said "business pitch" presentation plus added front-end pitch.

» Download the pitch (PPT)

I intentionally kept the slides clean without much formatting. My hope is that you'll find these slides useful to skin, update, mashup and build upon and deliver to your bosses and clients that need to be convinced to invest in performance and give you the time you need to work on performance improvements.

The slides are also on slideshare. In case you happen to have your client attentive and you don't have the pitch handy, you can always deliver it from slideshare's full screen view.

The rest of the post is the same as the contents of the powerpoint slides. The text under each slide is also added as a comment in the downloadable pitch.

It goes like this:

The Business of Performance

Does anybody like to wait in line at the cache register? Probably not. The same way probably no one likes one to sit and wait for slow web pages to finish loading.

The question is how does page loading time relate to the site's business metrics - metrics such as revenue, user satisfaction and repeat visits? And why should we invest in making pages load faster?

The way to test the impact of slow pages on business metrics is traditionally done with split testing. You randomly separate the users into two buckets. Half get normal page, half get the same page but artificially slowed down at the server side. Then you slow down a little more and see how the business metrics change.

Conducting such experiments people quickly realize that slow is bad and stop the experiment in order not to lose users. So experiments usually end at half a second delay.

Bing.com (while formerly live.com) was brave enough to introduce artificial slow downs as long as 2 seconds. The results were that every one of the monitored business metric changed exponentially for the worse.

Just focusing on the revenue metric, you can see that making the page 1 second slower causes 2.8% drop in revenue. With 2 seconds delay the revenue drops 4.3%.

Similar experiment was done at Google where the search results page was artificially delayed with 0.4 seconds. This experiment shows two additional points:

  1. The negative effect on business metrics gets worse with time. The users may tolerate the slower page during first few visits but will then search increasingly less and even abandon the site
  2. The second point is that even after removing the delay, things didn't get back to normal. There was an after-effect. Some people left the site for good, moved to the competition and didn't return.

Similar experiment was done at Yahoo – as soon as the page gets 0.4 seconds slower, there is a drop in the fill page traffic. This means users leave the page before it's loaded completely (before the onload event fires) – either hit Back button or click away from the page.

At AOL there was a measurement which tied the performance of individual pages with the number of visits those pages get.

The results were pretty clear – slow pages get fewer visits. Users learn to avoid them.

While the previous results showed how business metrics go down as the site gets slower, there is one study from Shopzilla that shows a more positive perspective – how business metrics improve as the site gets faster.

Shopzilla redesigned their site and went from page loading times around 6 seconds down to 1.2 seconds. As a result all metrics improved. The revenue increased with 7 to 12%, they got 25% more page views, the paid search traffic (from Search Engine Marketing) increased. And the required infrastructure to support the site was cut in half, which means they saved money while making more money.

Another piece of stats from Shopzilla illustrates how even the smallest change can have a positive impact. They moved static components to be served from a domain without cookies and this one small change resulted in 0.5% more revenue.

In Yahoo's list of performance best practices, this improvement is listed under number 24 (of 34) meaning that there's much more important and beneficial improvements to be made, but still – every little bit counts.

With regards to cutting down expenses and saving money, here's an example of what happened when Netflix enabled gzip compression for plain text components (gzipping is Yahoo's performance recommendation #4, meaning it's pretty important). Netflix noticed a sudden drop in outbound network traffic - they lowered their bandwidth bill by 43%.

When it comes to business metrics, different sites measure success differently. For some it's the number of new user signups, for some it's time spent on the site, for others – the amount of sales. But in general, what can we expect when improving performance and page loading times? More repeating visits, more time spend on the site viewing more pages, better conversions and revenue, happier users. All that while paying less for hardware and bandwidth.

Also more search engine traffic. Since April 2008 Google takes into account your page loading time when ranking the sponsored search links (AdWords). Shopzilla's stats are a testament to that. And Matt Cutts from Google has mentioned at a conference that there's lobbying inside Google to extend the load time as factor for organic search results too. So far this hasn't happened, but we can speculate that in the future a faster site may rank higher in Google's search results bringing more new visitors to the site.

So a faster site means more business. And where do we start?

To answer that let's look at one page and see where the time is spent for loading this page.
(This is where you can substitute this example with your page, or your client's page. Then run the page through WebPageTest.org and copy the waterfalls to replace in the next two slides)

Here is the so called "waterfall view" showing how does the page load. The first bar is the page itself. All the others are different page components required by the page such as images, scripts and stylesheets.

As you can see only 10% of the time is spent on assembling the page from different sources such as data from the database. We can call this portion server-side time.

Once the server has done constructing the page and has sent it to the browser, the rest is browser time. And that's where 90% of the time is spent – downloading all the page components. We can call this the front-end time.

Many people believe that the front-end time is not so important because all these images and other page components get downloaded once and then cached.

But even for repeat visits with full cache there's still a few components to be loaded, and the scripts and styles to be executed from the cache. In this page example, still only 38% of the total time is server time.

And Yahoo's research shows that 50-60% of all page visits (and 20% of all page views) will always be empty cache experience.

So the front-end matters and this is where the time is spent. For best ROI this is where you should be focusing – improving the front-end performance.

This is actually good news, because improving front-end performance is much easier than changing back-end systems, databases, infrastructure or reengineering server-side applications.

It's easier to improve the front-end and it results in greater overall benefits. Gutting 10% in half won't make a big difference, while cutting the 90% part in half will have a significant effect on the page loading time and therefore on the business metrics.

Credits/URLs

Thanks!

I hope you enjoyed the the calendar and this last article. It was quite the experience for me, writing a post a night, sometimes way too late into the night. Many thanks to the guest bloggers - Christian, Eric and Ara (2 posts!) - thanks to you guys I was able to catch some sleep. Hopefully next year we can make it a bigger community effort with more contributors and a whole separate web site.

This entry was posted on Thursday, December 24th, 2009 and is filed under performance. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.


Get notification for future posts: follow me on Twitter or subscribe to my RSS feed

25 Responses to “The performance business pitch”

  1. barry Says:

    Thank you so much for this serie. Hard work. Fine research.

  2. ChenCheng Says:

    Great series. I’ve learned a lot. Thank you.

  3. Corey Goldberg Says:

    great little perf overview! thanks.

  4. Luke Smith Says:

    Amazing work, Stoyan (et al). I’m truly impressed and incredibly grateful for your dedication to sharing your expertise.

  5. Daniel Says:

    It is really amazing about what you have done. You gave us so wonderful serie that covers many perspectives of web performance. I have learnt a lot from you, great work! You are my another idol in this area except Steve Souders.

  6. Karthik Reddy Chintaparthi Says:

    Thanks a lot for the wonderful series of lessons Stoyan. I wish you a Merry Christmas & Happy 2010 !
    Happy Holidays !!

  7. Ingo Chao Says:

    Thank you, Stoyan, for the performance advent calendar. Merry Christmas!

  8. Micah Says:

    Your series was brilliant, thank you Stoyan!

    What is your thought about HTTP 1.1 Pipelining and its immediate effect on end user experience? Would mainstream adoption take care of a lot of the issues raised?

  9. Algis Says:

    Great Work. Thanks.
    Merry Christmas and Happy New Year :)

  10. Dusan Hlavaty Says:

    Thanks for a great series. Amazing work.

  11. Faisal Khan Says:

    Server side performance is also important because the architecture and efficiency of the server-side application is what is actually delivering the content to the client. But I agree with the general tone of this article. After careful architecture and development on the server-side with Gzip compression, some people forget to improve/optimize the client-end side of their web application. This happened with me because I did develop the back-end of Stardeveloper.com so well but didn’t/couldn’t optimize the client-side end of the website, and here is why: because I couldn’t remove the JavaScript heavy client-side ads which are essential for the revenue for my website, it meant that even after the hard work that had been done on the server-side, my website was still slower than 90% of other websites on Google (according to Google Web Analytics). I discussed this on my blog. http://www.stardeveloper.com/forums/thread.asp?thread_id=2052

    I think it is time when we (developers/webmasters) should now seriously begin to consider the client-side efficiency of our web applications.

  12. Steve Souders Says:

    Stoyan – Great set of articles. It took a lot of dedication to crank out 24 articles of such high quality in 24 days. This set of posts is a definite long term reference for web devs who want to build fast sites. Thank you!

  13. zomigi.com » CSS3 book launch event Says:

    [...] The performance business pitch [...]

  14. Finakykuhozyh Says:

    VO! Hooligans then divorced, then zasrat spam any longer)))

  15. Tojaqacomybo Says:

    Yeah … life – like driving a bicycle. To keep your balance you must move.

  16. Frye Engineer Boots For Women Says:

    Pretty nice post. I just stumbled upon your blog and wished to say that I’ve truly enjoyed browsing your blog posts. In any case I will be subscribing to your rss feed and I hope you write again very soon!

  17. ShoesGirl Says:

    For ordinary sites many people says that load time affects search engine ranking Page load times are but one of the 400+ factors of of ranking. All of my pages for all of my sites load in less than 1.5 seconds and I rank very well. I would aim for the 1,5 mark as set forth in Google Webmaster tools page speed graph.

  18. Perfection kills » Optimizing HTML Says:

    [...] Second, even if document is served compressed, there are still savings of 5-10KB after compression (on an average document). Savings are even bigger with large documents. This might not seem like a lot, but in reality every byte counts. [...]

  19. ShoesAddict Says:

    Sometimes has happened with my website, so W3TC ( W3 total cache) stopped working. So my sites average load time has increased. Before it had been 2.5 seconds, after that it was 4 seconds.

    Google immediatelly dropped my sites rank, so for the day when W3TC was off, i had 50% visitors less. Rank gone back to normal, almost immediatelly after i have fixed the plugin.

    This may be isolated case, but i am sure that W3TC plugin will help just a little no matter what. Go ahead and install it. Turn on the minify option.

    I have tested lots of cashing plugins, and i have found W3TC is 20-30% better (20-30% shorter load time) that combination of wordpress super cache + wp minify. It is better that other caching plugins available, i have tried a lot of them.

    For measuring load time i have used site called load impact.

  20. September 2011 Site Performance Report | Wayfair Engineering Says:

    [...] at Wayfair we care a lot about performance, and the business case for having a faster site is well documented.  To keep tabs on our site performance we have synthetic monitoring tools like Catchpoint, real [...]

  21. Optimizing HTML | Magento Host Solution Says:

    [...] Second, even if document is served compressed, there are still savings of 5-10KB after compression (on an average document). Savings are even bigger with large documents. This might not seem like a lot, but in reality every byte counts. [...]

  22. conference venue matters Says:

    Oh my goodness! Incredible article dude! Thanks, However I am encountering problems with your RSS.

    I don’t understand why I can’t join it. Is there anyone
    else having identical RSS problems? Anyone who knows the answer will you kindly respond?
    Thanks!!

  23. We provide a small business plan template for your small business opportunity. Our small business SEO services take small scale business ideas to new heights. Says:

    We are a bunch of volunteers and starting a new scheme in our community. Your website provided us with valuable information to work on. You’ve performed an impressive activity and our entire group shall be grateful to you.

  24. bidninja Says:

    Stumbled into this internet site by chance but I’m certain glad I clicked on that link. You actually answered all the questions I’ve been dying to answer for some time now. Will actually come back for a lot more of this. Thank you so much

  25. SEO Says:

    Hey! I simply would like to give a huge thumbs
    up for the great info you’ve got here on this post.
    I can be coming again to your weblog for
    more soon.

Leave a Reply