Skip to content
Performance optimization

Make Joomla faster

Speed up your Joomla site with these practical tips. From caching to image optimization - everything you need for lightning-fast loading pages.

Home Joomla Speed optimization

A slow Joomla site costs you visitors and Google rankings. Research shows that 53% of mobile users leave a site if it takes longer than 3 seconds to load. Fortunately, you can significantly speed up Joomla with the right optimizations.

The foundation of speed is good hosting, but there's much more you can do yourself. In this guide you'll learn all the Joomla performance optimizations you need.

Test your current speed first

Before you start optimizing, measure your current speed so you know if your optimizations work:

Google PageSpeed Insights

Measure Core Web Vitals and get specific improvement points

→ Test your site

GTmetrix

Detailed waterfall analysis and performance scores

→ Test your site

10 quick Joomla performance wins

Start with these optimizations for immediate noticeable results

1

Activate Joomla cache

System → Global Configuration → System tab → Cache Settings → Conservative Caching

+40% faster
2

Enable Gzip compression

System → Global Configuration → Server tab → Gzip Page Compression = Yes

60-70% smaller
3

Update to PHP 8.2+

Via your hosting control panel. PHP 8.2 is up to 3x faster than PHP 7.4

+200% faster
4

Optimize images

Compress images and convert to WebP format. Use max 200KB per image

+50% faster
5

Remove unused extensions

Every extension adds overhead. Remove everything you don't use

Less overhead
6

Install JCH Optimize

Free extension that combines and minifies CSS/JS, lazy loading and more

All-in-one
7

Use a CDN

Cloudflare (free) or KeyCDN serves your static content from servers close to your visitors

Fast worldwide
8

Enable OPcache

Via your hosting control panel. Caches compiled PHP code

+30% faster PHP
9

Lazy load images

Load images only when they come into view. JCH Optimize does this automatically

+25% faster
10

Choose fast hosting

SSD storage, modern hardware, LiteSpeed server and good uptime make the difference

Basic requirement

Setting up Joomla caching (step by step)

Caching is the most important performance optimization. It stores static versions of your pages, so Joomla doesn't have to execute the same queries every time.

1
Activate system cache

  1. 1. Log in to your Joomla admin panel
  2. 2. Go to System → Global Configuration
  3. 3. Click on the System tab
  4. 4. Find the "Cache Settings" section
  5. 5. Set Cache to ON - Conservative Caching
  6. 6. Set Cache Handler to File (or Redis/Memcached if available)
  7. 7. Set Cache Time to 15 minutes
  8. 8. Click Save & Close

Note: Conservative caching is safe for most sites. Progressive caching is more aggressive but can cause issues with dynamic content.

2
Activate page cache plugin

  1. 1. Go to System → Plugins
  2. 2. Search for "System - Page Cache"
  3. 3. Click it and set Status to Enabled
  4. 4. Optional: click "Advanced" tab and exclude pages that shouldn't be cached (e.g. shopping cart, checkout)
  5. 5. Save

Tip: Page cache is even more powerful than system cache - it serves complete HTML pages without executing PHP. This can make your site 3-5x faster!

3
Set up browser cache

Add this code to your .htaccess file (in your Joomla root folder) to enable browser caching:

## BEGIN BROWSER CACHING
<IfModule mod_expires.c>
  ExpiresActive On

  # Images
  ExpiresByType image/jpeg "access plus 1 year"
  ExpiresByType image/gif "access plus 1 year"
  ExpiresByType image/png "access plus 1 year"
  ExpiresByType image/webp "access plus 1 year"
  ExpiresByType image/svg+xml "access plus 1 year"

  # CSS and JavaScript
  ExpiresByType text/css "access plus 1 month"
  ExpiresByType application/javascript "access plus 1 month"

  # Fonts
  ExpiresByType font/woff2 "access plus 1 year"
</IfModule>
## END BROWSER CACHING

Best Joomla speed extensions

These extensions automate performance optimization

JCH Optimize

Free + Pro

The most popular Joomla performance extension. All-in-one solution for speed.

  • CSS & JavaScript minification + combine
  • Lazy loading for images
  • WebP image conversion (Pro)
  • HTTP/2 Server Push
View JCH Optimize

LiteSpeed Cache

Free

For LiteSpeed servers (fastest Joomla hosting). Advanced server-side cache.

  • Server-level page caching
  • Automatic image optimization
  • CDN integration
  • Database optimization
View LiteSpeed Cache

EasyBlog CDN

Premium

CDN integration for Joomla. Serve static content from edge servers worldwide.

  • Cloudflare integration
  • KeyCDN and MaxCDN support
  • Automatic URL rewriting
  • SSL compatible
View EasyBlog CDN

Optimizing images for Joomla

Images are often the biggest bottleneck. A page with 10 images of 1MB each loads much slower than the same page with optimized images of 100KB.

Compress images

Tools to compress images without quality loss:

  • • TinyPNG - up to 70% smaller
  • • Squoosh - Google's image optimizer
  • • ImageOptim - Mac app (free)
  • • JCH Optimize Pro - automatic compression in Joomla

Use modern formats

WebP is 25-35% smaller than JPEG at the same quality:

  • • Convert JPEG/PNG to WebP
  • • JCH Optimize Pro does this automatically
  • • Fallback for older browsers (e.g. <picture> tag)
  • • AVIF is even smaller but less support

Use correct dimensions

Don't upload images larger than needed:

  • • Hero images: max 1920px wide
  • • Content images: max 1200px wide
  • • Thumbnails: max 400px wide
  • • Icons: use SVG (vector, scales perfectly)

Enable lazy loading

Load images only when they come into view:

  • • Native HTML: loading="lazy" attribute
  • • JCH Optimize has built-in lazy loading
  • • Speeds up initial page load by 30-50%
  • • Especially important for long pages

Server requirements for fast Joomla

Your optimizations only work if your hosting is good. These are the minimum requirements for good Joomla performance:

Must-have specs

  • • PHP 8.2+ (minimum 8.1)
  • • SSD storage (10x faster than HDD)
  • • OPcache enabled (caches compiled PHP)
  • • Minimum 256MB PHP memory (512MB recommended)
  • • HTTP/2 support (faster loading)

Nice-to-have specs

  • • LiteSpeed server (faster than Apache)
  • • Redis/Memcached (for object caching)
  • • NVMe SSD (4x faster than SATA SSD)
  • • CDN integration (Cloudflare, KeyCDN)
  • • HTTP/3 support (newest protocol)

Frequently asked questions about Joomla speed

The most common causes: (1) no caching activated, (2) images too large, (3) too many extensions, (4) old PHP version, or (5) slow hosting. Start by enabling caching (System → Global Configuration) and upgrade to PHP 8.2+. Also check your images - are they larger than 200KB? Then you can gain a lot with compression.

Conservative caching is safer and works for most sites - it caches module output. Progressive caching is more aggressive and also caches view output, but can cause problems with dynamic content (like logged-in users, shopping carts). Always start with Conservative. Does that work well? Then you can try Progressive for extra speed.

For most sites JCH Optimize is the best choice - it's free, easy to set up and does everything you need (CSS/JS minify, lazy loading, etc.). Have LiteSpeed hosting? Then LiteSpeed Cache is even faster because it works at server level. For advanced users with budget, JCH Optimize Pro is the ultimate solution (WebP conversion, HTTP/2 Push).

Hosting is the foundation - without good hosting you'll never achieve top speed, no matter how much you optimize. The difference between cheap shared hosting and premium hosting can be 3-5x speed.

Look for: SSD storage (must), PHP 8.2+, OPcache, sufficient PHP memory (512MB+), and preferably LiteSpeed server. Local servers are also faster for local visitors. Check our Joomla hosting comparison for fast providers.

Google's "good" thresholds are: LCP < 2.5s, FID < 100ms, CLS < 0.1. With a well-optimized Joomla site you should be able to achieve:

  • • LCP (Largest Contentful Paint): 1.5-2s (with caching + image optimization)
  • • FID (First Input Delay): < 50ms (minimize JavaScript)
  • • CLS (Cumulative Layout Shift): 0.05 or lower (fixed image dimensions)

Test with PageSpeed Insights and focus on LCP first - that has the biggest impact on experience.

For local sites with mainly local visitors, a CDN isn't necessarily needed if your hosting is already local. But it does help for images and static content, plus you get DDoS protection. Cloudflare is free and easy to integrate - so why not? For international sites, a CDN is a must, because it serves your static content from servers close to your visitors.

Start with a fast Joomla site

Good speed starts with the right hosting. Compare Joomla hosting providers and choose the fastest for your site.