Table of Contents
Last update on
YSlow is an open-source tool that analyzes your website and gives you suggestions to improve its performance.
You enter the web page that you want to test, then YSlow will analyze it against a set of rules and provide you with both a grade and a list of what your site is doing well when it comes to performance…and what it’s doing poorly.
In this post, we’ll share how you can run your own YSlow test to analyze your site’s performance. Then, we’ll help you interpret the results so that you know how to use YSlow to improve your WordPress website’s performance.
How to Run a YSlow Performance Test
YSlow is an open-source tool, so there are a variety of ways you can use it to run a test against your site’s performance.
First, some speed test tools include YSlow as part of their results. Most notably, GTmetrix, which is what we’ll use in this tutorial:
The YSlow website also lists browser extensions that you can use, but they don’t seem to be working at the moment. For that reason, your best bet is to just use GTmetrix.
How to Interpret YSlow Results and Improve Your Score
YSlow works by crawling your website and comparing it against a list of 23 rules, based on Yahoo’s rules for high-performance websites.
YSlow then scores your site against these 23 rules and gives you an overall score based on the average.
Each of the 23 rules has a different weighting. That is, some rules have a bigger influence on your overall score than others. For example, limiting the number of HTTP requests that your site makes has a bigger impact on your score than reducing the size of your cookies.
Viewing Your Overall YSlow Score: What’s a Good YSlow Score?
When you run your site through GTmetrix, you can view all your YSlow scores and information.
First, you’ll see your overall YSlow score at the top. Again, this is the weighted average of how your site did when compared against all of those 23 rules:
This overall score works just like your tests in school – a 100% is a perfect score and a 0% is the worst score possible.
You don’t need to stress about getting a perfect overall score – you can certainly have a fast-loading website without having a perfect YSlow score.
In fact, Yottaa analyzed over 5,000 websites and found that the average YSlow score was just 69, with very few sites scoring 90+:
However, you still do want to improve your score as much as possible within reason, as improving your score will generally mean an increase in performance.
Viewing the Individual Rules
Your overall YSlow score gives you a good idea of where your site is at, but the individual rules are where the meat of the analysis is.
To see the 23 individual rules that comprise your overall YSlow score, you can head to the YSlow tab in your GTmetrix results:
Here, you’ll see the name of each rule – e.g. “Add Expires headers” as well as three other data points:
- Grade – this is the grade that your site received for this specific rule. Remember, your overall score is based on the weighted average of each individual score.
- Type – this is the type of optimization. For example, whether the rule applies at a server-level, or to your site’s CSS code.
- Priority – this is the approximate weight of each rule. A rule with a “High” priority will have a larger effect on your overall score than a rule with a “Low” priority. If you want to view the exact numerical weighting of each rule, you can head to this page.
If you want to see exactly how the score is calculated for each individual rule, you can view the rules.js file at the YSlow GitHub page. Don’t feel compelled to do this because it definitely gets a little technical. But if you’re interested, this file is where you find the exact calculations.
For example, the rules will tell you that you’re allowed up to four external DNS lookups before YSlow starts penalizing your “Reduce DNS Lookups” score, with each external DNS lookup over four penalizing your score for that rule by five points.
So for the example site below, you can see that it has 11 total external DNS lookups. The first four don’t affect the score because you’re allowed up to four requests, while the remaining seven DNS lookups reduce the score by five points each (35 points total).
That’s why the score for that rule is 65 (100 – 35 = 65):
For the biggest return on your effort, you’ll want to focus on the high-priority rules that your site scores poorly on.
How to Fix Individual Rules
Unfortunately, there’s no easy way to magically fix all the YSlow rules. However, as you saw above, GTmetrix will give you an explanation for each individual rule so that you know the exact problem.
All you need to do is click the arrow to expand the rule:
If you’re not sure how to go about fixing these rules technically, the WP Rocket WordPress plugin can help you fix a number of the YSlow rules on your WordPress site.
It can’t get you a perfect score by itself, but it can help with many of the high-priority rules like:
- Gzip compression
- Make fewer HTTP requests (by combining CSS and JavaScript files)
- Minify JavaScript and CSS
- Use a content delivery network (CDN)
And again, you do not need to focus on scoring a perfect 100. YSlow is just a set of suggestions – it doesn’t necessarily mean that you’ll see a huge jump in performance if you move from a score of 75 to a perfect 100 score.
Is YSlow All You Need to Improve Your Site’s Performance?
No, YSlow is not a comprehensive performance analysis. Instead, YSlow focuses on the front-end performance of your site.
However, it doesn’t touch on any of the backend elements of your site’s performance, like the quality of your web hosting, your database’s optimization, etc.
These backend elements are just as important to your site’s performance, if not more.
For example, having a perfect 100% YSlow score for a site hosted on low-quality hosting is still going to lead to slow page load times, and page load times matter a lot more than your YSlow score.
Conclusion: How Should You Use YSlow?
In the end, YSlow is just a set of suggestions to improve the performance of your site’s front-end elements.
These suggestions are valuable and can help you optimize your site, but you should never lose track of what really matters – page load times.
That is, how quickly your site loads is more important than your YSlow score. If your site loads in under two seconds but you only score 70% on YSlow, you’re still doing pretty well! In fact, you’re doing a lot better than a site that scores 95% on YSlow but loads in four seconds.
So – use YSlow to help optimize your site, but don’t obsess about it.
Do you have any questions about how to use YSlow to improve your WordPress site’s performance? Ask away in the comments!