In the days of dial-up and 56k modems, users were accustomed to waiting for websites to load. Today, however, they want blazing-fast speeds. Google agrees with them -- so much so that your rankings in the search engine can be lowered if your site does not meet the standards for speed. Furthermore, a slow-loading site can make a poor first impression when it is crucial to create a good one. To make sure that you do not get penalized -- and to meet the expectations of your visitors -- you must monitor the performance of your website.
What Should You Measure?
The standards for speed are continually evolving, but the following are the minimum standards you should target.
- Time to initial byte: This should not exceed one second.
- Time for page to load: This is somewhat debatable, but the upper-end limit is five seconds.
- Time for page to become interactive: This should not exceed two seconds.
- Time to initial paint: This should be under one second.
- SpeedIndex: This should not exceed 3,000.
- Above-the-fold paint time: This should not exceed two seconds.
Ways to Speed Performance
Google offers the following suggestions for enhancing website performance from the user's point of view, based on page load time. The clock starts ticking when a new page is requested and continues to run until the requested page is fully rendered. Although each of the following points include a number of subsidiary steps, these six areas cover the bulk of the issues with slow load times.
- Optimize caching: Keep the application's logic and data completely off-network.
- Minimize round trips: Reduce the number of serial cycles requiring a request and a response.
- Minimize overhead: Reduce the size of uploads.
- Minimize payload: Reduce the size of cached pages, downloads and responses.
- Optimize rendering: Improve the page's layout within the browser.
- Mobilize the site: Fine-tune a site to make it responsive to access via mobile devices.
What You Need to Know
If you want to optimize the performance of your website, you need to know certain facts about websites and the Internet.
- The typical web application uses 88 resources and connects to more than 15 distinct hosts.
- It takes approximately 460 ms just for the HTML to load.
- After the HTML loads, it must be parsed, the CSS must be downloaded, scripts are executed, and DOM/CSS OM is constructed.
- Images are downloaded.
- Finally, the layout and paint is completed.
Anything that you can do to reduce the time required by any of these steps can help speed up your loading time. For example, you might avoid requiring the browser to repaint by opting for continuous paint mode. However, you cannot sacrifice security, multi-platforming or functionality; a useless website that loads quickly is still a useless website.
Improving User Experience
Although Google chooses to prioritize page load time, there are other aspects of a website that cannot be ignored. Ideally, users are going to spend more time using your site than waiting for it to load. If the scrolling is slow, animations are jerky or navigation is uneven, your visitors may become frustrated and move on. Although the yardstick can vary, a good goal is to make sure that no frame requires more than 16ms for the browser to load. Here are some issues that can cause slow load times.
- Invalidated elements in the document tree due to unnecessary changes
- Ignoring the "waterfall" concept for a frame's life cycle
- Requiring the browser to paint all or most of each frame individually
- Not allowing the browser to handle as much as it can, such as scrolling
If you need help measuring the performance of your website, optimizing your current site or developing a new one, EX² Solutions can help. We are Austin’s Top Web Developer and a Microsoft Gold Certified Partner with extensive experience in all types of web site development. Contact us today for more information.