Speed work is best done in order, from the fixes that give the biggest win for the least effort, down to the optimisations for when you want the last few percent.
0. Measure first, or you're flying blind
Run the front page through a speed testing tool before changing anything. Note two numbers in particular: time to first byte (how fast the server responds — hosting/PHP layer) and total page weight (how much data the visitor must download). This tells you which layer to attack, and proves your fixes.
1. The big wins (do these first)
- Compress and resize images. The easiest massive gain. Photos under ~200 KB each; resize to the size they're displayed; serve the exact format your tooling recommends. Every large image you remove buys back time for every visitor.
- Enable caching. If your site is WordPress, install a caching plugin and switch on page caching — repeat visits no longer rebuild the whole page. See What Is Caching?.
- Run a modern PHP version. Newer PHP executes the same site faster and harder to notice in the browser, but it adds up across every request. See PHP Versions Explained.
2. Tidy the fat (medium wins)
- Audit plugins: deactivate the unused and the heavy. Each plugin is PHP that runs on requests.
- Trim themes and scripts you don't use; drop old media you've stopped referencing.
- Clean up space and resource usage — old backups and logs sitting in directories slow things indirectly.
3. Infrastructure steps
- A CDN for visitors outside your region delivers static files from a server near them. See What Is a CDN?.
- Database hygiene for heavy WordPress sites: optimise tables occasionally, keep plugin tables lean.
- If repeated resource limits cap you, plan an upgrade — after the free fixes are done, not instead of them.
4. Measure again
Re-run the speed test. Compare with your first numbers — if the fix didn't change the metric, it wasn't the bottleneck. I've seen plenty of "my host is slow" problems turn out to be a single 8 MB image; the measurement is what exposes it.