WordPress is an incredible platform to build your site. But one added complication of a WordPress website is site speed.
When done correctly you can have a fast loading WordPress site with ease.
If you’re dealing with a slow WordPress site here are our top tips to speed up WordPress. We’ll go over beginner tips and more advance tips as well.
Here are the questions we will be answering in this WordPress performance guide.
- Why speed matters? Let’s face it you’ve been to a website that took more than 2 seconds to load and just ended up closing the tab. Speed factors into so many things including your Google ranking so having a fast site is essential to be competitive.
- How do I check my WordPress website speed? We’ll be analyzing your website with Pingdom and Google’s PageSpeed tool. These are huge indicators when determining what is slowing down your WordPress site.
- How do I increase WordPress speed? We’ll be going over 7 simple ways to speed up your WordPress site, including page caching, image optimization, CDNs, Core Web Vitals, and more.
Now let’s dive into our guide to speeding up your WordPress site:
Why is Speed Important?
Every second counts when a user is loading your site. If your users have to wait the likelihood of them leaving increases with each second.
Google found that 53% of mobile site visits leave a page that takes longer than 3 seconds to load, and Akamai’s research shows that a 100-millisecond delay in load time can hurt conversion rates by up to 7%. Source.
It may seem like a daunting task to speed up your WordPress site but it’s pretty simple with a few tweaks we’ll go over.
Most important, it improves your user experience, which keeps people on your site and lifts your Google rankings as a result.
Understand Core Web Vitals (LCP, INP, CLS)
Before you start optimizing, it helps to know what Google actually measures. Core Web Vitals are three real-world performance metrics pulled from real Chrome users browsing your site. They’re a direct Google ranking signal and the right targets to optimize against.

- Largest Contentful Paint (LCP): how long the biggest visible element on your page takes to render. Aim for under 2.5 seconds. Hero images, web fonts, and slow hosting are the usual culprits.
- Interaction to Next Paint (INP): how snappy the page feels when someone taps or clicks. Aim for under 200 milliseconds. Heavy JavaScript and bloated themes hurt this most. INP officially replaced First Input Delay (FID) as a Core Web Vital in March 2024.
- Cumulative Layout Shift (CLS): how much things jump around as the page loads. Aim for under 0.1. Always set width and height on images, and reserve space for ads, embeds, and late-loading widgets.
You can monitor your live scores in Google Search Console under the Core Web Vitals report (it uses real-user data from Chrome) or get a per-page diagnostic from PageSpeed Insights. The seven techniques in the rest of this guide map directly to fixing the three vitals above.
What Makes WordPress Sites Slow?
There are multiple factors at play when a WordPress site loads.
When a visitor loads a page on your website your server generates that webpage for them. After the page is displayed the user’s web browser starts to download the styles, images, and scripts for the page.
We’ll be going over how to speed up each part in this chain but it’s important to know what is slowing down your site. If you have 30 megabytes of images on a page it won’t matter how fast your server is since that will create a bottleneck.
Now let’s fix it.
How to Test Your WordPress Site Speed
Before we start to optimize our site need to know if our WordPress site is even slow.
The first thing I typically do is open the website you’re testing in a Google Chrome private browsing window (so that I am not using cookies or cache from my previous sessions). This allows me to try to use the site and to see how most users will experience the pages.
Typically I will refresh a page a few times to see if page caching is enabled as well. This can be obvious in Chrome since the loading bar will spin counter-clockwise while waiting for the server and clockwise for page assets.
There are tons of tools out there that test your website’s speed. The two I lean on most are PageSpeed Insights (Google’s own tool, the gold standard) and GTmetrix. Both are free and surface the information you need to see what’s slowing your site down. WebPageTest is worth pulling out for advanced waterfall analysis.
A little more info on these website speed tools:
- PageSpeed Insights: Google’s tool gives your site a performance score plus a Core Web Vitals breakdown using real-user Chrome data. Generally I tell people to ignore vanity “performance scores” elsewhere, but PageSpeed Insights matters because it directly reflects what Google measures for ranking. Learn how to score 100 in PageSpeed Insights.
- GTmetrix: Useful for seeing exactly which assets on your page are the largest, plus a clean waterfall view of every request. Great for spotting heavy images, slow third-party scripts, and render-blocking resources.
- Google Search Console: Once your site is verified, the Core Web Vitals report shows real-user performance data across your URLs. This is the data Google actually uses for ranking, so it’s the most important place to monitor over time.
Choose a Fast WordPress Host
Many WordPress hosting companies will handle things like caching and server optimizations for you. That is why choosing a good web host can be the simplest change for a lot of users.
Your web host won’t optimize what loads in user’s browsers though. So if you have 50 WordPress plugins loading with each page it’s nearly impossible for a host to help.
Use a Good WordPress Caching Plugin
Now there are a LOT of WordPress caching plugins.
Basically what they do is save a copy of the page the user loads so that it can quickly retrieve it for the next user.
This works fine for static content like pages or articles, but if you have features where users log in (a membership area, a WooCommerce store), caching pages won’t help those parts much.
Here is an example of some static vs dynamic content on a WordPress site.
- Static Content: Your site’s homepage, pages, articles, this type of content is easy to cache since it doesn’t change much.
- Dynamic Content: Your WordPress admin area, WooCommerce checkout and pages, areas that let your users login. These areas aren’t easily cachable since they change often.
Now most sites out there will just be static content. If you have a WordPress site for your business, restaurant, portfolio, or blog these are all great examples where caching can help.
Based on my experience most websites will be static content that is easy to cache.
Now let’s talk about WordPress caching plugins!
For a free easy-to-use plugin, my pick is WP Fastest Cache. If you’re willing to pay, WP Rocket is the dominant premium choice and bundles caching, lazy loading, CSS/JS minification, and a critical-CSS generator into one plugin. FlyingPress is a strong newer alternative that scores especially well on Core Web Vitals. If your host runs LiteSpeed (most budget hosts do), LiteSpeed Cache is free and exceptional. We’ll use WP Fastest Cache below to keep this guide free.
When a user visits your site, WP Fastest Cache stores a copy of the page so it can be served instantly to the next visitor. The result is much faster server response times because each page doesn’t have to be regenerated on every request.
Best of all, when you edit a page the plugin automatically clears the cache for it. So adding page caching to your WordPress site is largely set-and-forget.
Check with your web host before adding a caching plugin. Most shared hosts don’t add caching, but managed WordPress hosts like Kinsta, WP Engine, Rocket.net, and GridPane handle page caching at the server level, and adding a caching plugin on top can actually cause conflicts.
Choosing a Fast WordPress Theme
Choosing a fast WordPress theme from the start will prevent a lot of headaches down the line.
If you are early in your site creation I recommend using one of these free WordPress themes:
The best thing too is that if you need more features you can buy premium versions of each of the themes above. If you don’t like any of these themes you can always check out this theme buying guide.
Larger themes may appear to offer more features and flare but at the cost of your end user. Using a lean theme (like ones of the ones above) from the start and adding the functionality as you need later is the best way to start building your WordPress site.
Now if you already have a WordPress site switching themes can be a more daunting task. If you go that route I recommend going through each of your pages to ensure the transition went correctly. If you have a larger site you want to move to a lighter theme I’d recommend hiring a WordPress developer.
Optimize Images for Speed
One mistake I see on a lot of sites is using PNG images everywhere by default. PNG is great for logos and graphics with sharp edges or transparency, but for photos and screenshots you want JPG (smaller file size at comparable quality). And in 2026, the right answer for most images is actually WebP or AVIF, both of which compress significantly smaller than JPG with no visible quality loss.
- PNG: Lossless compression. Best for logos, graphics with sharp edges, and anything that needs transparency.
- JPG: Strong lossy compression. Solid default for photos and screenshots if WebP isn’t an option.
- WebP: ~25 to 35% smaller than JPG at the same quality. Supported by every modern browser. The default format for most new WordPress sites.
- AVIF: ~50% smaller than JPG, the best compression of any widely-supported format. Browser support is now 95%+, so it’s safe to use as a primary format with a JPG fallback.
To handle compression and WebP/AVIF conversion automatically, install one of the major image-optimization plugins. The popular ones in 2026:
- Smush: Free tier handles compression and WebP conversion. Solid default if you’re cost-sensitive.
- ShortPixel: Generally produces the best file-size-to-quality ratio of the bunch and supports both WebP and AVIF. Pay-per-image pricing scales well.
- Imagify: From the team behind WP Rocket. Simple interface, good results, integrates well if you already use WP Rocket.
- EWWW Image Optimizer: Can run compression locally on your server with no API call, which is unique among the bunch.
Doing this manually image by image is tedious, which is why a plugin makes sense, since it converts and compresses images on upload (and most can bulk-process your existing media library). If you do need to compress something manually, Crush Image works in the browser.
This can dramatically reduce image file sizes (often by 50% or more) and make them load faster on your site.
Two related image-performance wins worth a quick mention:
- Lazy loading is already on by default. WordPress 5.5 and later automatically adds
loading="lazy"to images below the fold, so they only load as the user scrolls toward them. You don’t need a separate plugin for this anymore. - Always set explicit width and height on images. The Gutenberg editor does this automatically when you insert an image. It prevents Cumulative Layout Shift (CLS), one of Google’s Core Web Vitals. Without dimensions, the page jumps around as images load and your CLS score tanks.
Now that we have our images optimized, it’s time to serve them faster with a CDN.
Speed up Asset Delivery with a Content Delivery Network (CDN)
A CDN serves your images, CSS styles, and javascript from fast loading servers closer to your user. Think of it the same as page caching but with your assets. Since things like images, CSS, and JS don’t change often a CDN can cache them in servers near the user.
Physical location of servers can play a huge part in page load since you can’t go faster than the speed of light. Now you can do this with your page cache as well but that adds a high level of complexity that I don’t recommend dealing with.
A CDN won’t make your server generate pages faster but it will make pages load faster after a user’s browser receives them.
Options #1:
My favorite CDN is CloudFlare. Time and time again I just return to using CloudFlare since it adds a slew of additional benefits to your site it also adds a simple CDN to your site.
It’s a bit more complicated to set up than a traditional CDN but Cloudflare’s setup wizard walks you through it. The basic flow: you point your nameservers to Cloudflare and they become your DNS. From there they sit in front of every request to your site and cache assets like images, CSS, and JS automatically. You also get free DDoS protection, HTTP/3, and Brotli compression as a bonus.
I prefer using CloudFlare since your assets will be served from your original website address and there isn’t much you need to do once it’s set up.
Option #2:
If you don’t want to route DNS through Cloudflare, a pull-zone CDN like Bunny.net is the strongest alternative I’ve found (and what a lot of speed-focused agencies have switched to since StackPath shut down its CDN in 2023). Bunny is fast, transparent, and pay-as-you-go cheap.
The setup pattern is similar regardless of provider: the CDN sits between your visitors and your site’s assets and caches the requests. You’ll get a new URL for your assets (since they’re served from the CDN), so a plugin like CDN Enabler rewrites the URLs in your HTML automatically.
Optimize Your WordPress Database
Your WordPress site can be bogged down by useless things in the Database, that is why it is important to periodically optimize your database.
We’ll be using WP-Optimize to optimize our WordPress database.
This includes running a MySQL optimization, deleting post revisions, deleting auto-drafts, clearing trashed posts and more. If those elements are important to you the plugin will let you uncheck them when running the optimization as well.

You can also set WP-Optimize to run daily, weekly, or even monthly. If the optimization runs correctly on your site I would recommend setting it up to run automatically monthly in the settings tab.
Remove Unused Plugins
Taking a hard look at plugins you aren’t using can help a ton in terms of performance. Most plugins will load their styles and scripts on all of your pages so if you’re not using a plugin it’s best to deactivate it and delete it.
On most of my sites if I find a plugin doing a one off task I might remove it and try to do it with plugins I already am using for other things.
I hope these WordPress speed and performance tips were helpful.
The fastest way to know whether the work paid off: run your site through PageSpeed Insights before and after, and check the Core Web Vitals report in Search Console a few weeks later for real-user data.
Let me know in the comments if these tips were useful or if you have any questions.



7 Responses
The process that you have discussed step by step to speed up the WordPress site is just amazing. WordPress speedup plugins can also very effective. The speeding themes are also important. Thanks for sharing this amazing article.
Thanks for this amazing post. Do you have post on how to setup Free Cloudflare CDN to website as it would be helpful
THANKS
Hey Sohil, I cover a bit of that in my photo blog tutorial https://ihitthebutton.com/how-to-start-a-photography-blog/ it’s near the bottom of the page
Thanks Andy for the link. It’s really helpful.
it’s great. Step-by-step, you have described the process for speeding up the WordPress site in a very clear way.
Thanks Andy Feliciotti for the link. It's really helpful.
Hello, I have been researching this issue and I have posted some of my shares at https://codeshub.net/how-to-speed-up-wordpress-without-plugin/ hoping to discuss with you.