Skip to content

How to Fix Slow Website Performance

This guide helps you fix slow website performance caused by hosting limits, caching issues, large files, or inefficient WordPress setups.

Easy–Medium Difficulty
5–20 min Time
Optimisation Required

Common Causes of Slow Websites

High Resource Usage

CPU or RAM limits being reached.

No Caching

Pages being generated on every request.

Heavy Plugins

Too many or poorly coded plugins.

Large Images

Unoptimised images slowing page load.

Step-by-Step Optimisation

Check Usage
Enable Cache
Optimise
Test

Check Resource Usage

cPanel

Metrics → Resource Usage

DirectAdmin

System Info → Resource Usage

Look for Spikes

Identify when limits are being hit.

Enable Caching (Most Important)

Page Caching

Serve static pages instead of dynamic requests.

Browser Caching

Store files locally for faster repeat visits.

Object Caching (Redis)

Cache database queries for major speed improvements.

WordPress Optimisation (Recommended)

Use Redis Cache

Install a Redis Object Cache plugin for significant speed gains.

Reduce Plugins

Remove unused or heavy plugins.

Update Site

Keep WordPress, themes, and plugins updated.

Lightweight Theme

Avoid bloated themes.

Optimise Images & Files

Compress Images

Reduce file sizes.

Lazy Load

Load images only when needed.

Minify CSS/JS

Reduce file sizes.

Improve Server Performance

Upgrade PHP

Newer versions are faster.

Change PHP Version

Enable OPcache

Improves PHP execution speed.

Reduce Cron Jobs

Limit background processes.

Advanced: Check Performance via cPanel Terminal

Use these commands in Terminal to diagnose why your website is slow. Run them during slow periods for best results.

CPU & Load Average

top

Top Processes by CPU

ps aux --sort=-%cpu | head -15

Top Processes by Memory

ps aux --sort=-%mem | head -15

Memory Usage

free -m

Disk Usage (Account)

du -sh ~/* | sort -hr

Large Files in public_html

find ~/public_html -type f -size +50M -ls | sort -k7 -hr

Disk I/O Wait (Common Slowdown Cause)

vmstat 1 10

MySQL Running Queries

mysqladmin processlist

WP-CLI: Profile Page Load (WordPress)

wp profile stage --all --spotlight --url=https://yourdomain.com

WP-CLI: Slowest Hooks

wp profile hook --all --spotlight

WP-CLI: Database Queries

wp profile queries --url=https://yourdomain.com

Website Response Time (TTFB)

curl -I -w "Time: %{time_total}s\n" -s -o /dev/null https://yourdomain.com

Inode Usage (Hidden Limit)

df -i ~

Common Issues & Fixes

Slow Admin

Plugins or database queries.

Slow Site

No caching or heavy content.

Intermittent Slowness

Resource limits reached.

Quick Fix Checklist

  • ✔ Enable caching (Redis recommended)
  • ✔ Reduce plugins
  • ✔ Optimise images
  • ✔ Upgrade PHP
  • ✔ Check resource usage

Related Guides

Resource Limits

View Guide

PHP Version

View Guide

Error Logs

View Guide
← Back to Troubleshooting