You’ve all heard that Google factors their PageSpeed score algorithm into rankings. But, you just haven’t been able to score well on it. So what are the reasons that you score poorly, and what can you do about it?
1. You don’t understand what Google wants you to do
Google gives you a bunch of recommendations. But, if you aren’t well versed in techie speak, they are basically a foreign language.
Let’s start with the headings:
- Possible Optimizations – this is where Google says you could, in theory, improve. Possibly.
- Optimizations Found – this is what you’ve already done right and Google is happy with. Good job!
Here are a sample site’s PageSpeed results. You’ll see these two sections. Possible optimizations are on top with a list of 4 items. Optimizations found is lower on the page with the details hidden. Since you don’t need to improve items that are already optimized, those results are hidden.
The last item on the page is the Download optimized image, JavaScript, and CSS resources for this page. That gives you the ability to download already optimized files.
On the possible optimizations, if you click on Show how to fix, then it will expand and show you the details of the complaints. Below you can see that the images loaded from external twitter feed could be compressed.
If you’re on WordPress and you’d like your PageSpeed & YSlow results explained to you with actionable things you can do, you can Get a WordPress Speed Audit.
2. Your images are huge
Images are the most common reason for low PageSpeed scores. On most sites images account for more than 50% of the downloaded content, so you can get some really big wins by optimizing your images.
As a general rule: most images on your website should be under 100KB. Large full-size backgrounds will frequently be larger than this, but definitely, keep all images under 500KB.
You’ll know if your images are bigger than they need to be if you see Optimize images.
Here Google is thoughtful, they give you the ability to download the already optimized images at the bottom of the PageSpeed report. Then all you have to do is upload those images to replace the ones on your site.
If you are using WordPress, WP Smush is a great plugin. It also includes the ability to automatically resize your images as well as compress them. If you have multiple people contributing to your site and they do not resize and compress their images before uploading, this plugin can save you a ton of grief and significantly speed up your site.
Note: if you have a social media feed displayed on your website, then likely every image in the feed will be complained about. Some methods of displaying feeds allow you to remove images from displaying.
3. Internal vs external resources
There are two types of resources that a page can load, internal and external.
- Internal resources – these are resources on your own site that you have control over.
- External resources – these are resources that you load from elsewhere on the internet and have no control over.
These resources will most commonly show up in the Eliminate render-blocking JavaScript and CSS in above-the-fold content and Leverage browser caching.
Here’s what you can do about render blocking resources:
- Internal resources you can frequently combine into one by just downloading the optimized JavaScript and CSS files at the bottom of the PageSpeed report. Or, if you have a CMS like WordPress, use a plugin like Autoptimize to handle combining items for you. Some resources when combined may stop working though, so make sure that your changes are reversible.
- External resources you may be able to make internal. If you are loading fonts from the web, you can frequently load them from your own server instead.
- Some internal resources you can remove from loading. Themes or plugins on your site may load resources they don’t actually need because you aren’t using that feature. So, you can add some code to your site to specifically prevent those resources from being loaded.
- Some resources you can replace with something else that requires fewer things to be loaded.
- Other resources there may be nothing you can do about. If you need the external resources and can’t substitute anything, then you’re stuck.
Here’s what you can do about browser caching:
- Add some code to your .htaccess file or contact your hosting company about enabling browser caching for internal resources.
- Nothing you can do about external resources and browser caching.
Resources can be a bit confusing, so if you’d like some help, you can Get a WordPress Speed Audit.
4. Minify your HTML, CSS, and JavaScript
Minify is pretty much what it sounds like, making something smaller. This is done by removing extra stuff in the file. This extra stuff is generally tabs, spaces, and new lines. You know, all of the stuff that makes it easy for a human to read but it’s really important for a computer.
There are three basic types of things you can make smaller: HTML; CSS; and JavaScript. In an ideal world, you would send no more than one of each of these file types, and they would each be minified.
We don’t live in an ideal world.
Most sites have a lot of these files that get loaded. But, you can frequently combine a number of them together to make them smaller, and you can almost always remove the extra stuff.
If you are using WordPress, Autoptimize is a very good plugin for this. Most sites can use HTML & CSS minify without any problems. Whether or not JS minify works depends on exactly what plugins and themes you are using.
5. Compress with gzip
If you’ve ever compressed a file on your computer, you know that the compressed file takes up less space than the original one. The same principle applies on the web, compressed data takes up less space. And when you can make something smaller, it transfers faster.
So, what they want here is for you to turn on compression on your web server so that it can make the files smaller and then the smaller files will transfer faster. This means people visiting your website get the files faster, and are happier.
This one is typically a very easy win. On most web servers you can enable gzip compression with a small addition to your .htaccess file or by contacting your hosting support.
6. Avoid redirects & prioritize content
Redirects are pretty simple. They are a lot like a scavenger hunt. You go to a location and it sends you to another location. The more intermediate locations you have to visit, the longer it takes to get to your final destination.
So, if you see the avoid landing page redirects complaint, it means that visitors are having to go on a scavenger hunt to get to their final destination. This takes longer.
Generally, you can fix this one just by entering the correct final destination into the PageSpeed tool. If that doesn’t work, then there is likely something such as an A/B split test happening which is causing redirects.
Prioritize visible content is about the “above the fold” content of your page. Basically, they want the above the fold content to load quickly and with very few resources needed. If you are seeing this one come up, it’s likely because you need to load a lot of data above the fold, or because your design or theme requires a number of extra resources like CSS and JS.
7. Your server is slow
If you are seeing Reduce server response time than Google wants you to reduce your server response time to under 200ms.
- Optimize your database – most content management systems use a database, and over time that database can become bloated. It’s a good idea to regularly use a database optimization tool to clean up the bloat.
- Cache, cache, cache – caching pages on your server pre-builds the page. This means that when someone requests it, the server delivers the pre-built page. That’s a lot less work for the server, so the server can fulfill the request and respond with an answer much faster.
- Move to better hosting – let’s face it, some hosting providers are just crappy. Low quality, slow servers with a slow connection to those servers. That means even with a very lean site, you can’t get a fast response. A quick way to test if your server is just crap is to run a speed test on a simple HTML or txt file on the server. If that’s slow, then you need to move hosts. You can also do a whois lookup on your domain and see how many other sites are also on your server. The more sites on your server, the slower it is likely to be.
Want your site’s PageSpeed interpreted?
If you’re on WordPress and you’d like your PageSpeed & YSlow results explained to you with actionable things you can do, you can Get a WordPress Speed Audit.