- Last updated:
Site speed is arguably one of the most important metrics for any website — for some sites, the difference of a single second can add up to thousands of dollars of missed (or gained) revenue. This makes accurately measuring site speed crucial. Unfortunately, site speed isn’t a particularly easy metric to measure. In this article, I’ll show you how to use one of the most popular tools available, GTmetrix, to effectively gauge a website’s speed.
Four Important Speed Test Considerations
Many tools — including GTmetrix — are great, but pretty useless if all you do is a one-off speed check. Instead, you’ll need to run multiple tests and experiment with other factors to get accurate results.
Here are some of the biggest factors to consider…
1. Number Of Tests
To get a really good comprehensive set of data, you need to do a whole lot of speed tests, preferably at different times throughout the day. The ideal would be to schedule an hourly test and leave it running for about a week or so.
The reason for this is that your website’s performance will change throughout the day, depending on your visitor count or even the usage of your server box if you are on a shared host.
A nice side-effect of this test is that you will see your peak hours — which could potentially indicate the best time for you to post new content or target ads/popups, etc, to your visitors.
That said, there’s still plenty to be learned by doing just five or ten tests over the course of an hour or so. Although the actual load speed given in seconds may change over the course of a day (or even week), some of the things GTmetrix can reveal — such as many of the recommendations it will yield on how to go about speeding up your website — will not change with time at all.
2. Test Locations
The proximity of your site to the test location (or a real human visitor) plays a big role in your test results because of physics (we still haven’t figured out how to change the speed of light!).
Because of that, the location you choose to test your site from makes a big difference.
In general, you want to pick a test location that’s as close as possible to your target visitors (which should also be close to the physical location of your hosting server).
If your website only targets one location, all you really need to care about is the test results for that location.
However, if you’re targeting a global audience, you should pick four or five testing servers in key locations around the world. Try to spread them out if possible — e.g. choose at least one server from the US, one from Europe, one from Australia, and one from Asia.
In order to be able to choose the location from which to test your site from using GTMetrix, you’ll need to register for a free account.
If you’re targeting a global audience and you notice below-average page load times for certain regions, that might be a sign that you need to start using a content delivery network (CDN).
3. Test Targets
I often see people testing ONLY their homepage. This is a big mistake that can skew things a lot more than you might think. First of all, your homepage may be the least data-intensive page on your site, making it naturally the fastest.
Your homepage may also not be as important as you’d like to think. I worked on a site that acquired 97% of its traffic organically through search engines, almost all of which went to single posts/pages — so be sure to focus on more than just your homepage!
In short: the speed of your homepage is important, but it may be secondary to many of your other pages, so be sure to also test a number of other pages. Test pages like single post pages, store pages, and product pages, etc, to get a well-rounded set of results.
4. Test Devices/Connection Speeds
When most people test the speed of their site, they only test the desktop experience and ignore the mobile experience.
This is a big mistake, as mobile traffic accounts for more than half of all Internet traffic.
Connection speed is another important consideration. Not all of your visitors will be using ultra-fast wired connections. For example, they could be browsing from their phone on 4G — that will also lead to slower page load times.
If you want to get an accurate picture of how these visitors experience your site, it’s useful to experiment with different devices and connection speeds.
GTmetrix will let you test different connection speeds for free, but you’ll need to pay for a premium account if you want to test using a mobile device.
How to Use and Understand the Basic GTmetrix Speed Test
Basic use of GTMetrix is free. While you can go to the main page and start analyzing your site right away, I would recommend first registering for a free account because it will give you a lot more flexibility.
When you use the basic speed test as an anonymous guest, you’re forced to use the following configuration:
- Test from Vancouver, Canada
- Use a desktop Chrome browser
- Use an ultra-fast unthrottled connection
If you’re targeting a Canadian audience, that might be fine. Otherwise, you’ll want to test from a different location.
When you register for a free GTmetrix account, you open up a ton of new configuration options that will help you address those considerations that we discussed above.
- Locations — Dallas (USA), Hong Kong (China), London (UK), Mumbai (India), Sydney (Australia), Sao Paulo (Brazil), Vancouver (Canada).
- Test devices — Chrome (Desktop) and Firefox (Desktop) for free. With a paid plan, you can also test Chrome on a Galaxy Nexus Android device.
- Connection speeds — various options from Broadband down to 56k (Dialup — remember those days?).
The free account also gives you access to more analysis tools — more on those later.
Once you’ve created your free account, you can:
- Enter your site’s URL in the box.
- Click the Analysis Options accordion button to expand the extra options.
To get an accurate picture of your site’s load times, you should make at least two choices:
- Select the location nearest to your target audience using the Test URL in drop-down.
- Select Broadband (Fast) in the connection drop-down. This will use a connection speed that’s around the average for the USA as a whole — you can choose a different connection speed if that fits your needs.
Once you run your test, GTmetrix will show you a summary box that looks like this:
The summary box contains five pieces of information:
- Fully Loaded Time — how long it takes your site to fully load (this is the most important number).
- Total Page Size — how large your site is. Smaller is better.
- Requests — how many HTTP requests your site requires. Fewer is better.
- PageSpeed Score — a quick approximation of how optimized your front-end site is based on Google PageSpeed.
- YSlow Score — a quick approximation of how optimized your front-end site is based on a different set of metrics from YSlow.
Don’t stress too much about the PageSpeed and YSlow scores! These scores can be a useful guide, but the only number that really matters is your page load time.
How to Use the Advanced Analysis Options
The snapshot above gives you a good example of your site’s current metrics. But if you want to improve your site, GTmetrix also includes advanced analysis tools to help you dig into your site’s performance, which it divides into six tabs below the summary box:
- PageSpeed — compares your site against the 23 recommendations from Google PageSpeed.
- YSlow — compares your site against the 19 recommendations from YSlow.
- Waterfall — helps you see how each individual HTTP request loads on your site.
- Timings — requires a free account — lets you see different timing metrics for your load times (we’ll explain this below).
- Video — requires a free account — lets you film a video of how your site visibly loads.
- History — lets you track your site’s performance over time.
PageSpeed And YSlow
PageSpeed and YSlow offer two slightly different methodologies of gauging how a website’s structure and mechanics impact its speed. The results of these contain their own recommendations for making things faster — such as caching, adding expires headers, minifying assets, enabling gzip compression, and the like.
Your overall PageSpeed and YSlow scores are based on the weighted average of the scores that you receive for individual recommendations. Some of the suggestions are more important than others, which you can see in the Priority column.
To learn more about what each recommendation means and how it applies to your site, you can click on the arrow to expand each section.
Once again: Don’t chase percentage scores. These can be misleading and don’t necessarily take into account absolutely everything that’s important, such as the overall size in megabytes of the page (which, incidentally, is often highly influenced by poorly optimized images).
Instead, emphasize the actual page load speed given in seconds — aiming to shave seconds off this should be the real goal!
You can 100% have a fast-loading site without getting perfect scores and that’s totally fine.
The waterfall is one of the most useful tools for pinpointing bottlenecks in your website’s speed. It gives you insight into each HTTP request on your site and where/how quickly it loads.
Without getting into too much detail, every asset on your site is a separate HTTP request. An asset could be an image file, a CSS stylesheet, a script, etc.
If the test summary box says your site has 26 requests, that means that your site needs to load 26 different assets. It also means you’ll have 26 different entries in the waterfall analysis.
Each asset on your site needs to be looked up, transferred, and displayed. Each bar in the waterfall shows all the steps involved for each asset and how long they took.
The steps that each asset can go through are as follows, with a little explanation added:
- DNS Lookup: Time to resolve the DNS
- Connecting: Time taken to create a connection
- Blocking: Time spent in the browser queue waiting for a connection
- Sending: Time taken to send the request
- Waiting: Time spent waiting for the response (time to first byte)
- Receiving: Time taken to download content
Based on this information, you can make some assumptions about what’s going on with your website.
First of all, take a look at that small vertical blue line in the waterfall above (on the right side). It represents the point at which the DOM was loaded. The red line represents the time the page was loaded.
The time to first byte (TTFB) is also considered an important indicator of your server speed. This is shown by the waiting information in the waterfall. If you’re consistently seeing a high TTFB (even after going through and improving the main recommendations for improving site speed), it may be that your host server is what’s letting you down!
The waterfall analysis is one of the most technical parts of GTmetrix, but it’s also one of the most useful. If you’re still not sure how to use it effectively, GTmetrix offers a detailed guide on how to read and analyze every part of the waterfall.
The Timings tab gives you insights into specific milestones for how/when your page loads.
See, when most people think of “page load time”, they think of a single metric. But there are actually different definitions for when a page can be considered “loaded”.
For example, is a page loaded when all of the above-the-fold content is visible to human visitors? Or is it only loaded once all of the backend scripts finish downloading, even if your human visitors won’t interact with those scripts (e.g. tracking scripts)?
When it comes to the experience for actual human visitors on your site, these are important distinctions. Most humans only care about how long it takes for them to start seeing visible content on the page — they don’t necessarily care about all that background stuff. Your site might take a while to “fully load”, but if you can load the visible content quickly your visitors will still think of your site as loading quickly.
The Timings tab helps you investigate all these different metrics. You’ll be able to see the following metrics:
- Time to first byte (TTFB)
- First paint
- First contentful paint
- DOM interactive
- DOM loaded
Another nice thing about this tab is that it will also give you detailed explanations for each metric when you hover your mouse over the metric in question:
Note – this report is only available if you register for a free GTmetrix account.
The Video tab is another useful tool to help you gauge how your site loads to humans. As with the Timings tab, it can help you go beyond the top-line number and discover some of the following:
- When is content visible?
- Are there any flashes of unstyled content? For example, sometimes it takes some time for a custom font to load, so your text will “jump” when it changes from a system font to the custom font.
- Are there any large content “shifts”? Sometimes content will “jump” or “shift” as additional assets load. You’ve probably experienced this on content sites where the text “jumps down” when the site loads an ad.
The last item is another part of Google’s Core Web Vitals — it’s called “Cumulative Layout Shift (CLS)“.
The Videos tab lets you watch a screen recording of your site loading with two enhancements:
- You can slow down the recording to 1/4 speed, which helps you more easily see any content shifts or flashes of unstyled content.
- You can jump to major timing milestones, such as First Contentful Paint.
For example, here’s what the exact moment of First Contentful Paint looks like at WordPress.org:
Because Google is putting more emphasis on these types of “user experience” loading metrics, it’s a good idea to take advantage of this feature so that you can catch issues.
In order to take a video recording, you will need to do two things:
- Register for a free GTmetrix account.
- Turn on the Create Video setting when you run a test.
The History tab allows you to view the results of multiple tests on one page in an easy-to-understand, handy graph. It’s useful for seeing how your page load times change over time.
You can also add notes, which is another useful tool. For example, if you switched to a new host or caching plugin, you could add a note in GTmetrix to see how that change affected your load times.
How to Set Up Automatic Monitoring and Alerts With GTmetrix
Another useful feature that you get with your GTmetrix account is the ability to set up automatic performance monitoring. You can use monitoring with a free account, but it’s heavily limited.
Without paying, you can only set up automatic tests from the Vancouver, Canada server — you cannot choose the other test locations.
You can choose from the following frequencies for up to three URLs:
To enable monitoring, click on the Monitor button at the top of the test results page to open a slide-out to configure how to monitor your site:
GTmetrix will send you an email digest of your results and you’ll also be able to view them from the History tab.
If you pay for GTmetrix Pro, you’ll unlock the ability to monitor from different test locations, as well as hourly monitoring tests and the ability to monitor additional websites.
Once you enable monitoring, you’ll also be able to set up custom alerts. For example, you can receive an alert if your page load time goes above a certain number, if your TTFB increases, or lots of other conditions.
You can set these up by clicking the Set Up Alerts button in the test results interface:
Reasons to Consider GTmetrix’s Paid Plans
Up until now, everything that you’ve seen is available with the free version of GTmetrix (though you’ll need to register for a free account).
GTmetrix also offers a premium plan, though. So what are some of the reasons to go Pro?
You already saw one — more options for automatic monitoring.
Another useful feature is the Developer Toolkit, which gives you access to a number of new features:
- Test load times on a physical mobile device — a Galaxy Nexus using Android.
- Simulate other mobile devices such as iPhones, iPads, etc. Note — this feature is just a simulation, it won’t be able to test actual hardware performance like the Android test.
- Choose different screen resolutions or user agents.
- Save test configurations as presets.
If you’re working with clients, you also get a feature that lets you white-label PDF reports, which gives you an easy way to provide a branded deliverable to clients.
GTmetrix Pro starts at $14.95 per month with prices going up from there depending on your usage.
Speed Tips For WordPress Users
If you’re using WordPress, there are lots of strategies that you can implement to increase your GTmetrix scores and, more importantly, reduce your page load times.
Here are some fixes that you can implement:
- Ensure whatever web host you’re using uses servers that are optimized specifically for WordPress — and if you’re still using generic, non-WordPress-optimized shared hosting, switch to something much, much faster, such as a web hosting plan from WP Engine, Flywheel or Kinsta.
- If you aren’t already, start using a page caching plugin, such as W3 Total Cache, WP Super Cache or WP Rocket. Read our comparison of these three plugins to pick the best option for your needs.
- Take some time to go through your site’s images and ensure they’re all as optimized as they can be (either re-optimize them in a program such as Photoshop or consider using a specialist service/plugin such as WP Smush, ShortPixel, or Imagify).
- As painful as it may be: remove any unnecessary social media profiles from loading on your page (such as Facebook, Twitter, and LinkedIn profiles — all of which can quite literally add seconds to your page load times).
- Enable gzip compression, minify all scripts, and leverage browser caching wherever possible.
– Any other super-effective quick fixes? Feel free to leave them in the comments below! 😉
For a more in-depth approach to WordPress speed optimization, check out these two detailed guides:
If you want a fast website, you’ll need a comprehensive tool to test it under a number of circumstances. GTmetrix lets you do exactly this: by setting up automatic monitoring and testing from different locations, it will give you a complete picture of how your website performs.
Used properly in the battle against slow site speeds, GTMetrix also equips you with more than enough information to fight back by analyzing your site’s performance and making improvements.
Just remember to test more than only your homepage, to test each page more than once, and from multiple locations, and to keep the focus on actually reducing those load times rather than on maximizing the PageSpeed and YSlow percentage scores!
Know of any other/better ways of measuring a website’s speed? Thoughts?