We’re back with the first site performance report of the new year! This is the third edition of a regular series of site performance reports.
This time, I’ll first give you a quick update on the server-side measurements that have been the topic of the last few posts, and then I’d like to introduce another measure of site performance that will become a feature of this report.
Update on Server-Side Times
The average and 95th percentile times for core pages, Tuesday March 13, 2012:
You’ll note that most pages saw a slight increase in the time it takes to generate them, with listing pages most affected. This increase can likely be attributed to a shifting focus from holiday season optimization to building exciting new features. Search is still significantly higher than we would like, so we’re devoting resources to improving it. I must also mention that the November times are different than what we published in the last report, due to a measurement error. The previous post has been corrected as well.
Up until now in this series we’ve focused on the time spent on our servers assembling a response to the initial page request. Those measurements haven’t accounted for any of the time spent requesting, downloading and processing the images and additional scripts that make a complete page, a process which accounts for greater than 80% of the total page load time for most pages on the Internet.
To demonstrate, I tested a listing from the Etsy Store using WebPagetest, an excellent online performance measurement tool that displays detailed information about each step of a page download. In this test I used the default settings of Internet Explorer 8, simulating a DSL connection, from the test site in Virginia (see the full report here). Internet Explorer is the browser most commonly used by visitors to Etsy, narrowly edging out other browsers like Safari, Chrome, and Firefox. IE 8 is the most common version used by our visitors. Many of our visitors access the site with a broadband connection, and DSL represents a lower-speed broadband connection so we can focus on how a slower network speed has on impact on Etsy’s page load times.
This report highlights a few different numbers. One that is especially interesting is the time to “Start Render”, which is the time it takes for a visitor to see anything at all — before this time the browser will show a blank page or continue to show the previous page, such as in the first three frames in the filmstrip below. In this test, the time to Start Render was 1.182 seconds. Another common benchmark when comparing site performance is the “Load Time,” also called the time to “Document Complete.” This is the time it takes for the browser to download and process all the page components needed for the page to be fully displayed and interactive, which for this page required an additional 54 requests and took 2.197 seconds. You may recognize the time between start render and document complete as that point when you start to see parts of the page display in your browser, while additional images load and the spinner indicating activity in your browser is still active.
Loading a listing page:
In the graphic above, the blue bar corresponds to the server-side time we’ve been reporting, which we continue to monitor and optimize. The green bar corresponds to front-end time. In the next post we’ll start reporting on front-end times for our core pages in addition to server-side times. Our goal is to improve the front-end performance of these pages by reducing the size and number of additional requests.
Hungry for more? Check out these additional resources: