Speed is a ranking factor, a conversion factor and a patience factor. When a site crawls, the cause is almost never "the hosting is slow" — it's one of five fixable things. Ordered by how often they're the culprit.
The five usual culprits
- Oversized images. A 4 MB photo straight from a phone dwarfs everything else on the page.
- No caching. Without a page cache, WordPress rebuilds every page on every visit.
- Plugin bloat. A dozen plugins each doing heavy work, some duplicate each other.
- Old PHP or missed updates. Newer PHP runs the same site markedly faster.
- Resource limits. Hitting CPU/memory caps makes a site grind under traffic.
1. Fix images first
Compress every image going on the site. Aim for photos under ~200 KB. Resize to the actual size displayed (a "thumb" at 2000 px wide is wasted). Use a compression tool or a plugin that auto-optimises on upload.
2. Turn caching on
If you run WordPress and don't have a caching plugin, install one and enable page caching. The effect is usually dramatic. Read What Is Caching?.
3. Audit plugins
Deactivate what you don't use. Check for plugins that run scripts on every page, duplicate each other (e.g. two image optimisers), or are unmaintained. Fewer moving parts = faster and safer. Ask "would I notice if this was gone?"
4. Modern PHP
Confirm your site runs a recent PHP version — the single biggest "free" speedup available.
5. Check you're not capped
If things were fine and slowed down during busy periods, look at resource usage in cPanel. Repeated CPU/RAM limits may mean the plan is genuinely too small — upgrading is sometimes the honest fix.
Measure before and after
Test the homepage with a speed tool before and after each change — one metric (like time-to-first-byte versus total size) tells you which layer to attack. Full technique guide: How to Make Your Website Load Faster.