How to Speed Up Your WordPress Website and Improve Core Web Vitals
Google uses page speed as a ranking factor, and slow websites lose both rankings and customers. Core Web Vitals are the specific speed metrics Google measures. A WordPress website that scores poorly on mobile PageSpeed loses ranking positions to faster competitors, even if the content is better. This guide covers the most effective actions to speed up a WordPress website for Malaysian hosting environments.
Before making any changes, run your website at pagespeed.web.dev and screenshot the current scores. This gives you a baseline and shows which specific issues need fixing. Make changes one at a time and re-test after each to measure impact.
Step 1: Check Your Current Performance
Run PageSpeed Insights
Go to pagespeed.web.dev. Enter your website URL and press Analyse. Test both:
- Mobile tab – this is the primary score Google uses for ranking
- Desktop tab – generally scores higher
Core Web Vitals scores show as:
- Green (Good): LCP under 2.5s, INP under 200ms, CLS under 0.1
- Amber (Needs improvement): Borderline scores
- Red (Poor): Failing – significant impact on rankings and user experience
Scroll down to the Opportunities and Diagnostics sections. These list specific issues with estimated time savings for each fix.
Step 2: Install and Configure Caching
Set Up LiteSpeed Cache (LiteSpeed Servers)
If your website is on a LiteSpeed server (check with your host – Shinjiru, Exabytes and many Malaysian shared hosts use LiteSpeed):
In WordPress, go to Plugins > Add New. Search LiteSpeed Cache. Install and activate.
Go to LiteSpeed Cache > Cache. Enable:
- Enable Cache: On
- Cache Logged-In Users: Off
- Browser Cache: On
Go to LiteSpeed Cache > Page Optimization. Enable:
- CSS Minify: On
- CSS Combine: On (test carefully – may break some themes)
- JS Minify: On
- JS Defer/Delay: On
- Lazy Load Images: On
Configure Cloudflare CDN (Free)
Cloudflare is a free CDN that serves your static files (images, CSS, JS) from servers near your visitors globally, reducing load times for all users.
Sign up at cloudflare.com. Add your domain. Update your domain’s nameservers to Cloudflare’s nameservers at your registrar. This takes 24 to 48 hours to propagate.
In Cloudflare dashboard:
- Speed > Optimization > Content Optimization: Enable Auto Minify for HTML, CSS and JavaScript
- Speed > Optimization > Image Optimization: Enable Polish (converts images to WebP automatically)
- Caching > Configuration: Set Browser Cache TTL to 4 hours minimum
Step 3: Optimise Images
On most WordPress websites, uncompressed images are the primary cause of slow load times. A single unoptimised hero image can be 3 to 10 MB – this alone fails Core Web Vitals on mobile.
Compress Images with Smush or ShortPixel
Install Smush (free, by WPMU Dev) from the plugin directory. After activation, go to Smush > Bulk Smush and run bulk compression on all existing images.
Enable:
- Automatic compression for new uploads
- Lazy Load (images below the fold load only when scrolled into view)
- WebP conversion (Smush Pro required for WebP conversion – alternatively use ShortPixel which includes WebP in free tier)
For new images, size them appropriately before uploading. A full-width website image rarely needs to be more than 1,200px wide and 200KB.
Step 4: Reduce Render-Blocking Resources
Defer Non-Critical JavaScript
Render-blocking scripts force the browser to pause page rendering while scripts load and execute. In LiteSpeed Cache or your caching plugin:
- Enable JS Defer (delays non-critical scripts until the page has loaded)
- Enable JS Delay for scripts not needed on page load
Be cautious with Combine CSS/JS – this can break pages built with Elementor, Divi or other page builders. Test thoroughly after enabling. If the page breaks, disable combining and use minify only.
Step 5: Optimise Hosting
Review Hosting Plan
No amount of plugin optimisation compensates for slow hosting. Malaysian websites should use:
- Shared hosting (budget): Shinjiru, Exabytes, WebServer Malaysia with LiteSpeed plans. Test your Time to First Byte (TTFB) – should be under 600ms.
- Cloud VPS: DigitalOcean, Vultr or Linode with LiteSpeed or Nginx. Significantly better performance than shared hosting.
- Managed WordPress hosting: WP Engine, Kinsta or Cloudways. Best performance but higher cost.
Check your TTFB at web.dev/ttfb. If it is consistently over 1 second, your hosting is the bottleneck and plugins will not fix it.
After optimisation, target: LCP under 2.5 seconds on mobile, INP under 200ms, CLS under 0.1. For Malaysian hosting environments, an LCP of 2.0 to 2.5 seconds on mobile is realistic. LCP under 1.5 seconds requires premium hosting or aggressive caching and CDN configuration.
Need IT Help in Malaysia?
Cybergate provides SEO and Google ranking Malaysia for businesses across Malaysia. Our team is available Monday to Saturday, 9am to 6pm.
