Why Is My WooCommerce Site Showing Stale Data?
Why This Happens
Each caching layer exists independently and serves its own purpose — a page cache stores full rendered HTML, an object cache stores database query results, a CDN caches assets and sometimes full pages at the network edge, and a browser caches assets locally on the visitor's device. A change made in WordPress needs to propagate through, or be explicitly cleared from, every layer that might be holding an outdated version, and it's easy to clear the obvious one (the page cache plugin) while forgetting the CDN or object cache sitting alongside it.
Common Causes
- A page caching plugin cleared, but a separate CDN layer in front of it still serving its own cached copy of the same page.
- An object cache (Redis/Memcached) holding stale database query results even after page cache is cleared, since it operates at a different layer entirely.
- Browser caching on the specific device being used to check the change, showing an old locally cached version even though the server is now serving fresh content.
- A hosting-level cache (some managed WooCommerce hosts run their own additional caching layer) that isn't controlled by any WordPress-side plugin at all, requiring a separate clear through the hosting control panel.
How to Clear Every Layer
- Clear the WordPress-level page caching plugin first, if one is active.
- Clear any object cache (Redis/Memcached) separately, since page cache clearing doesn't always also flush this.
- Purge the CDN cache if one is in use, through its own dashboard or control panel.
- Check the hosting control panel for any additional server-level caching specific to that host.
- Test in a private/incognito browser window to rule out local browser caching as the final check.
Need a caching setup properly configured and documented for your team? See WordPress speed optimization.