Opens in a new tab
Back to Blog
WordPressMarch 7, 2023

How to make your WordPress site load faster

TC
Techoli TeamDesign & Strategy
Banner with a speedometer and Serbian text about making a WordPress site load faster

Speed decides how a WordPress site feels to visitors, and Google measures it through Core Web Vitals. In our speed optimization case study we took a store from 49 to 98 on mobile PageSpeed. The steps below are the ones that moved the score, in the order we apply them.

Measure before you change anything

Run the page through PageSpeed Insights and note three numbers. LCP shows how fast the main content appears; good is 2.5 seconds or less. INP shows how fast the page reacts to a tap or click; good is 200 milliseconds or less. CLS shows how much the layout jumps while loading; good is 0.1 or less.

Look at the mobile result first, because it is the stricter one. Test more than the homepage: product, category and article templates often behave differently.

How to make your WordPress site load faster: the essentials

  1. Start with hosting and PHP. Use a current PHP version and a host that offers server-level caching. A slow server response delays everything that follows, and no plugin can fix it.
  2. Use a lean theme. A theme built for your site loads only what your pages use. Multipurpose themes ship large CSS and JavaScript files for features you never switch on.
  3. Turn on page caching. A page cache stores the finished HTML and serves it without running PHP and database queries on every visit. Make sure the cart, checkout and logged-in pages are excluded. We built our own plugin, DJIA Cache, for this job.
  4. Add object caching on dynamic sites. Stores, membership sites and large catalogs repeat the same database queries. An object cache such as Redis or Memcached keeps the results in memory. We explain how it works in Object Caching in WordPress.
  5. Optimize images. Serve WebP or AVIF, size each image to the space it fills, and set width and height so the layout does not jump. Lazy-load images below the fold, but never the main image at the top of the page.
  6. Deliver CSS and JavaScript carefully. Inline the small amount of CSS needed for the first screen and load the rest without blocking rendering. Defer scripts that the first paint does not need, and remove plugins that load assets on every page for a feature used on one.
  7. Host fonts yourself. Load fonts from your own domain, limit the number of weights, and use font-display: swap so text stays visible while the font loads.

Fine-tuning your WordPress site for extra speed

  1. Use a CDN if your visitors are spread across countries. A content delivery network serves static files from a location close to each visitor.
  2. Clean the database. Remove old revisions, expired transients and spam comments, and limit revisions with WP_POST_REVISIONS in wp-config.php.
  3. Audit your plugins. Deactivate plugins one at a time on a staging copy and measure again. Query Monitor shows which plugin runs slow queries or loads heavy scripts.
  4. Enable compression and browser caching. Use Brotli or Gzip for text files and long cache lifetimes for static assets with versioned file names.
  5. Cut third-party scripts. Chat widgets, trackers and embedded videos often cost more than the whole theme. Load them after the visitor interacts, or only on the pages that need them.
  6. Keep WordPress, the theme and plugins updated. Updates bring performance fixes as well as security patches. See what regular site maintenance includes.

What result to expect

On most WordPress sites, page caching, image work and CSS and JavaScript delivery bring the largest gains; the rest is fine-tuning. Measure after every change. If a number does not move, undo the change and try the next step.

If you would rather hand this over, contact us and we will measure your site and tell you where the time goes.