Skip to content

Check C7 · Private pages and Cloudflare cache

C7: Cloudflare caches your pages, but nothing clears the cache when you publish

Check C7 of Edge Doctor for Cloudflare® looks for something that clears the Cloudflare cache when content changes: APO, your host, or a plugin that can purge.

Last reviewed 2026-10-30Plugin version 1.0.1Cloudflare dashboard paths checked 2026-10-25

What the check looks at

C7 runs only when your home page is cached at the edge. The plugin calls your home page cached at the edge when one of two requests for it, without query string or cookies, is a HIT, or when the answer carries cf-apo-via: tcache. It then looks for something that clears that cache: the official Cloudflare plugin with APO (the cf-edge-cache header with platform=wordpress), a host that runs Cloudflare for you (check A1), or an active plugin the plugin knows can purge Cloudflare.

Like every request Edge Doctor sends, these go only to the hosts of your Site Address and WordPress Address (home_url() and site_url()). An address WordPress gives on another host, such as a single sign on page, is never requested.

Results and what they mean

ResultWhat it means
PassedConfidence: HighYour cache is cleared when content changes
The official Cloudflare plugin is set up with Automatic Platform Optimization.
PassedConfidence: MediumYour host clears the cache for you
Your host runs Cloudflare for this site.
PassedConfidence: MediumA plugin that can clear the cache is active
Installed, but the plugin cannot tell whether it is connected to your Cloudflare account. Confirm that.
WarningConfidence: MediumNothing appears to clear your cache
An edit can stay invisible to visitors until the cached copy expires on its own.
Not applicableNo cached pages, so no cache purge to check
Reason not_observed.
Not applicableCloudflare is not in front of this site
Check A1 did not detect Cloudflare, so this check sent no request. Reason not_behind_cloudflare.

When the result names a reason

  • not_observed: The plugin has not seen this happen on your site.
  • not_behind_cloudflare: This site is not behind Cloudflare.

Symptoms you may notice

  • You publish or edit, and visitors still see the old version, while you see the new one when logged in.
  • Prices, stock or opening hours on the site are out of date for visitors.

Why it happens

A cached page stays until its Edge TTL runs out or someone purges it. WordPress does not tell Cloudflare that a page changed unless a plugin does it for you.

Confirm it by hand

Change a page, then request it without cookies and compare:

curl -sI "https://example.com/changed-page/" | grep -iE "cf-cache-status|^age|cf-edge-cache"

A HIT with a large age after your edit means nothing purged it. cf-edge-cache: cache, platform=wordpress means the official plugin with APO is active.

How to fix it

In WordPress: use a plugin that clears the Cloudflare cache when you publish and connect it to your Cloudflare account. The official Cloudflare plugin does this with APO; LiteSpeed Cache and WP Fastest Cache have Cloudflare purge as well.

In Cloudflare: or shorten how long HTML stays cached in the Cache Rule, and purge by hand after larger changes.

Caching > Configuration > Purge CachePath checked on 2026-10-25 against the Cloudflare documentation. Cloudflare moves dashboard items from time to time; if the path differs, search the dashboard for the setting name.

Limitations

The plugin knows a list of purge plugins and hosts. It cannot see whether a plugin is actually connected to your account, nor custom code that purges through the API.

Sources

Run this check on your own site with Edge Doctor for Cloudflare®, free on WordPress.org.

Edge Doctor for Cloudflare® is not affiliated with or endorsed by Cloudflare, Inc. Cloudflare is a registered trademark of Cloudflare, Inc.