Caching

WordPress Page Caching Explained

Easy
High

What Page Caching Does for WordPress

Every time someone visits an uncached WordPress page, PHP executes dozens of database queries, assembles the HTML, and sends it to the browser. Page caching short-circuits that process by storing a static HTML copy of each page the first time it is generated. Subsequent visitors receive the pre-built copy directly, skipping PHP and the database entirely. The result is a dramatic improvement in Time to First Byte (TTFB) — often from 800+ ms down to under 100 ms.

Mochyon Lightspeed detects this automatically. It checks whether your site has page caching enabled and flags the finding if no caching layer is detected.

How page caching works

When a visitor requests a page for the first time, WordPress processes the request normally — loading the theme, running plugin hooks, querying the database, and assembling HTML. A caching layer intercepts the finished HTML and saves it, usually as a static file on disk or in memory. The next request for the same URL gets the saved copy without WordPress running at all.

This is sometimes called “full-page caching” to distinguish it from object caching or browser caching, which work at different layers of the stack.

Where caching happens

Page caches can live in several places:

  • Disk-based caching — static HTML files stored on the server. Most WordPress caching plugins use this approach. The web server serves the file directly without invoking PHP.
  • Server-level caching — built into the web server itself. LiteSpeed Cache, Nginx FastCGI Cache, and Varnish operate at this layer. These are typically faster than plugin-based disk caching because the request never reaches PHP.
  • CDN-level caching — services like Cloudflare or Fastly cache pages at edge locations worldwide, reducing latency for geographically distant visitors.

What page caching does not cover

Page caching works best for content that is the same for every visitor. Dynamic content — logged-in user dashboards, WooCommerce cart pages, personalized content — often cannot be cached, or requires more sophisticated strategies like fragment caching or AJAX-loaded dynamic sections.

Page caching also does nothing for front-end performance problems like oversized images, render-blocking JavaScript, or excessive CSS. A cached page with a 4 MB hero image is still slow — it just arrives with a faster TTFB.

Tools That Can Help

WP Rocket provides disk-based page caching with an easy setup process and broad compatibility, though it is a paid plugin. LiteSpeed Cache is free and integrates with LiteSpeed web servers for server-level caching that is faster than disk-based approaches. W3 Total Cache offers flexible caching with multiple storage backends, though its configuration can be complex.

Further Reading

Related Articles

Object caching handles the database layer that page caching bypasses entirely on cache hits.
A page cache is only useful if most requests actually hit it — cache hit ratio measures that effectiveness.

Need help with this?

Mochyon specializes in WordPress Core Web Vitals optimization. We diagnose, fix, and verify — with a named human accountable for the result.

Get help from Mochyon