{"id":4760,"date":"2008-11-18T23:44:30","date_gmt":"2008-11-18T18:14:30","guid":{"rendered":"https:\/\/www.quickonlinetips.com\/archives\/?p=4760"},"modified":"2026-10-13T13:36:40","modified_gmt":"2026-10-13T08:06:40","slug":"wp-super-cache-not-deleting-expired-pages","status":"publish","type":"post","link":"https:\/\/www.quickonlinetips.com\/archives\/2008\/11\/wp-super-cache-not-deleting-expired-pages\/","title":{"rendered":"WP Super Cache Not Deleting Expired Pages? How to Fix It (2026)"},"content":{"rendered":"<p>Is WP Super Cache not deleting expired pages, so visitors still see old versions of your posts or theme? It happened to us in 2008: after a template change, the WP Super Cache admin panel was stuck showing 1,183 expired files, and many pages kept showing the old design no matter which delete button we pressed. The plugin has improved a lot since then, but stale cached pages are still one of the most common WP Super Cache problems. Here&#8217;s why it happens and how to fix it in 2026.<\/p>\n<p><img decoding=\"async\" class=\"aligncenter size-large wp-image-63755\" src=\"https:\/\/www.quickonlinetips.com\/archives\/wp-content\/uploads\/wp-super-cache-expired-pages-1024x538.webp\" alt=\"WP Super Cache not deleting expired pages fix\" width=\"760\" height=\"399\" srcset=\"https:\/\/www.quickonlinetips.com\/archives\/wp-content\/uploads\/wp-super-cache-expired-pages-1024x538.webp 1024w, https:\/\/www.quickonlinetips.com\/archives\/wp-content\/uploads\/wp-super-cache-expired-pages-300x158.webp 300w, https:\/\/www.quickonlinetips.com\/archives\/wp-content\/uploads\/wp-super-cache-expired-pages-150x79.webp 150w, https:\/\/www.quickonlinetips.com\/archives\/wp-content\/uploads\/wp-super-cache-expired-pages-768x403.webp 768w, https:\/\/www.quickonlinetips.com\/archives\/wp-content\/uploads\/wp-super-cache-expired-pages.webp 1200w\" sizes=\"(max-width: 760px) 100vw, 760px\" \/><\/p>\n<p><strong>Quick answer:<\/strong> WP Super Cache deletes expired pages through garbage collection, which runs on WP-Cron. If WP-Cron doesn&#8217;t run (low traffic, or <code>DISABLE_WP_CRON<\/code> without a real cron job), expired files pile up. Fix it by setting a cache timeout and timer under <strong>Settings &gt; WP Super Cache &gt; Advanced &gt; Expiry Time &amp; Garbage Collection<\/strong>, making sure WP-Cron runs, clicking <strong>Delete Cache<\/strong>, and then clearing any CDN or browser cache.<\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_89 counter-hierarchy ez-toc-counter ez-toc-custom ez-toc-container-direction\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<label for=\"ez-toc-cssicon-toggle-item-6af09c47d5680\" class=\"ez-toc-cssicon-toggle-label\"><span class=\"ez-toc-cssicon\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #1a202c;color:#1a202c\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #1a202c;color:#1a202c\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/label><input type=\"checkbox\"  id=\"ez-toc-cssicon-toggle-item-6af09c47d5680\" checked aria-label=\"Toggle\" \/><nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.quickonlinetips.com\/archives\/2008\/11\/wp-super-cache-not-deleting-expired-pages\/#Why_WP_Super_Cache_is_not_deleting_expired_pages\" >Why WP Super Cache is not deleting expired pages<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.quickonlinetips.com\/archives\/2008\/11\/wp-super-cache-not-deleting-expired-pages\/#How_to_fix_WP_Super_Cache_not_deleting_expired_pages\" >How to fix WP Super Cache not deleting expired pages<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.quickonlinetips.com\/archives\/2008\/11\/wp-super-cache-not-deleting-expired-pages\/#1_Set_expiry_time_and_garbage_collection\" >1. Set expiry time and garbage collection<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.quickonlinetips.com\/archives\/2008\/11\/wp-super-cache-not-deleting-expired-pages\/#2_Make_sure_WP-Cron_runs\" >2. Make sure WP-Cron runs<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.quickonlinetips.com\/archives\/2008\/11\/wp-super-cache-not-deleting-expired-pages\/#3_Delete_the_cache_manually\" >3. Delete the cache manually<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.quickonlinetips.com\/archives\/2008\/11\/wp-super-cache-not-deleting-expired-pages\/#4_Fix_permissions_and_advanced-cachephp\" >4. Fix permissions and advanced-cache.php<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.quickonlinetips.com\/archives\/2008\/11\/wp-super-cache-not-deleting-expired-pages\/#5_Update_the_plugin_dont_roll_back\" >5. Update the plugin, don&#8217;t roll back<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.quickonlinetips.com\/archives\/2008\/11\/wp-super-cache-not-deleting-expired-pages\/#6_Purge_your_CDN_and_browser_cache\" >6. Purge your CDN and browser cache<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/www.quickonlinetips.com\/archives\/2008\/11\/wp-super-cache-not-deleting-expired-pages\/#Use_preload_to_avoid_stale_pages\" >Use preload to avoid stale pages<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/www.quickonlinetips.com\/archives\/2008\/11\/wp-super-cache-not-deleting-expired-pages\/#Our_experience_with_WP_Super_Cache\" >Our experience with WP Super Cache<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/www.quickonlinetips.com\/archives\/2008\/11\/wp-super-cache-not-deleting-expired-pages\/#Frequently_asked_questions\" >Frequently asked questions<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/www.quickonlinetips.com\/archives\/2008\/11\/wp-super-cache-not-deleting-expired-pages\/#How_often_does_WP_Super_Cache_delete_expired_pages\" >How often does WP Super Cache delete expired pages?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/www.quickonlinetips.com\/archives\/2008\/11\/wp-super-cache-not-deleting-expired-pages\/#Is_it_safe_to_delete_the_wp-contentcache_folder\" >Is it safe to delete the wp-content\/cache folder?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/www.quickonlinetips.com\/archives\/2008\/11\/wp-super-cache-not-deleting-expired-pages\/#Why_do_I_still_see_the_old_page_after_deleting_the_cache\" >Why do I still see the old page after deleting the cache?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/www.quickonlinetips.com\/archives\/2008\/11\/wp-super-cache-not-deleting-expired-pages\/#Should_I_use_WP_Super_Cache_in_2026\" >Should I use WP Super Cache in 2026?<\/a><\/li><\/ul><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"Why_WP_Super_Cache_is_not_deleting_expired_pages\"><\/span>Why WP Super Cache is not deleting expired pages<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<ul>\n<li><strong>WP-Cron isn&#8217;t running:<\/strong> garbage collection is a scheduled task. On quiet sites, or when cron is disabled in <code>wp-config.php<\/code>, it may never fire.<\/li>\n<li><strong>Cache timeout set to 0:<\/strong> a timeout of 0 means pages never expire, so nothing is cleaned up automatically.<\/li>\n<li><strong>File permission problems:<\/strong> if the web server can&#8217;t delete files in <code>wp-content\/cache\/<\/code>, expired pages stay. Our 2008 cache had folders with odd names (with triple backslashes) that couldn&#8217;t be deleted by FTP.<\/li>\n<li><strong>A broken advanced-cache.php:<\/strong> leftover files from another caching plugin can stop WP Super Cache from managing the cache properly.<\/li>\n<li><strong>A CDN or browser cache:<\/strong> sometimes WP Super Cache did delete the page, but Cloudflare, your host&#8217;s CDN or the visitor&#8217;s browser still serves an old copy.<\/li>\n<\/ul>\n<h2><span class=\"ez-toc-section\" id=\"How_to_fix_WP_Super_Cache_not_deleting_expired_pages\"><\/span>How to fix WP Super Cache not deleting expired pages<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3><span class=\"ez-toc-section\" id=\"1_Set_expiry_time_and_garbage_collection\"><\/span>1. Set expiry time and garbage collection<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Go to <strong>Settings &gt; WP Super Cache &gt; Advanced<\/strong>. Under <strong>Expiry Time &amp; Garbage Collection<\/strong>, set a <strong>Cache Timeout<\/strong> (for example 3600 seconds for a busy blog, or 86400 for a site that rarely changes), choose a <strong>Timer<\/strong> interval for garbage collection, and save. Also tick <strong>Clear all cache files when a post or page is published or updated<\/strong> on the same page.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"2_Make_sure_WP-Cron_runs\"><\/span>2. Make sure WP-Cron runs<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Open <strong>Tools &gt; Site Health<\/strong> and check for scheduled event warnings. If your <code>wp-config.php<\/code> contains <code>define( 'DISABLE_WP_CRON', true );<\/code>, add a real server cron job that calls <code>wp-cron.php<\/code> every 5 to 15 minutes, for example in cPanel&#8217;s Cron Jobs:<\/p>\n<pre><code>*\/10 * * * * wget -q -O - https:\/\/example.com\/wp-cron.php?doing_wp_cron &gt;\/dev\/null 2&gt;&amp;1<\/code><\/pre>\n<h3><span class=\"ez-toc-section\" id=\"3_Delete_the_cache_manually\"><\/span>3. Delete the cache manually<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>On the <strong>Easy<\/strong> tab, click <strong>Delete Cache<\/strong>, or use <strong>Delete Cache<\/strong> in the admin toolbar. If the counter of expired pages doesn&#8217;t drop, delete the contents of <code>wp-content\/cache\/supercache\/<\/code> using your host&#8217;s File Manager or SSH (<code>rm -rf<\/code>), which can remove folders that FTP clients refuse to delete.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"4_Fix_permissions_and_advanced-cachephp\"><\/span>4. Fix permissions and advanced-cache.php<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li>The <code>wp-content\/cache<\/code> folder should be writable by the web server (usually 755 folders, 644 files). Never leave <code>wp-content<\/code> at 777.<\/li>\n<li>Deactivate WP Super Cache, delete <code>wp-content\/advanced-cache.php<\/code> and any leftover cache folders from other plugins, then reactivate. WP Super Cache recreates the file and adds <code>define( 'WP_CACHE', true );<\/code> to <code>wp-config.php<\/code>. This was the fix that finally worked for us in 2008.<\/li>\n<\/ul>\n<h3><span class=\"ez-toc-section\" id=\"5_Update_the_plugin_dont_roll_back\"><\/span>5. Update the plugin, don&#8217;t roll back<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>In 2008 we temporarily went back to an older version from the WordPress plugin archive. Today, it&#8217;s safer to update to the latest version of <a href=\"https:\/\/wordpress.org\/plugins\/wp-super-cache\/\" target=\"_blank\" rel=\"noopener\">WP Super Cache<\/a>, which Automattic still maintains, because old versions may have security issues.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"6_Purge_your_CDN_and_browser_cache\"><\/span>6. Purge your CDN and browser cache<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>If you use Cloudflare, a host CDN or Amazon CloudFront, purge it after clearing WP Super Cache. See <a href=\"https:\/\/www.quickonlinetips.com\/archives\/2020\/04\/clear-cloudfront-cache-purge-refresh-files\/\">how to clear CloudFront cache<\/a>. Then test in a private browser window.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Use_preload_to_avoid_stale_pages\"><\/span>Use preload to avoid stale pages<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>On the <strong>Preload<\/strong> tab, WP Super Cache can rebuild the cache for all posts on a schedule. With preload on, pages are refreshed regularly instead of waiting for visitors, which keeps the cache fresh after theme changes. Preloading thousands of pages uses server resources, so set a sensible interval on shared hosting.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Our_experience_with_WP_Super_Cache\"><\/span>Our experience with WP Super Cache<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>WP Super Cache helped QOT survive traffic spikes on shared hosting for years, and we listed it among our <a href=\"https:\/\/www.quickonlinetips.com\/archives\/2008\/06\/most-essential-wordpress-plugins\/\">most essential WordPress plugins<\/a>. We also wrote about our earlier <a href=\"https:\/\/www.quickonlinetips.com\/archives\/2008\/05\/fix-wp-super-cache-errors\/\">WP Super Cache errors and fixes<\/a>. Today our site runs on a LiteSpeed server with LiteSpeed Cache, but the same rule applies to any caching plugin: when pages look outdated, check expiry settings, cron and your CDN.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Frequently_asked_questions\"><\/span>Frequently asked questions<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3><span class=\"ez-toc-section\" id=\"How_often_does_WP_Super_Cache_delete_expired_pages\"><\/span>How often does WP Super Cache delete expired pages?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>As often as the garbage collection timer you set, provided WP-Cron runs. Without traffic or a server cron job, it can be delayed.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Is_it_safe_to_delete_the_wp-contentcache_folder\"><\/span>Is it safe to delete the wp-content\/cache folder?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Yes. It only contains cached copies of pages. WP Super Cache rebuilds them as visitors arrive or during preload.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Why_do_I_still_see_the_old_page_after_deleting_the_cache\"><\/span>Why do I still see the old page after deleting the cache?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Your browser or a CDN is probably serving an older copy. Purge the CDN and do a hard refresh.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Should_I_use_WP_Super_Cache_in_2026\"><\/span>Should I use WP Super Cache in 2026?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>It&#8217;s still a good free option on Apache or Nginx hosting. If your host runs LiteSpeed, LiteSpeed Cache is usually faster.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Is WP Super Cache not deleting expired pages, so visitors still see old versions of your posts or theme? It&#8230;<\/p>\n","protected":false},"author":4,"featured_media":63755,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_kad_post_transparent":"default","_kad_post_title":"default","_kad_post_layout":"default","_kad_post_sidebar_id":"","_kad_post_content_style":"default","_kad_post_vertical_padding":"default","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"categories":[6],"tags":[49,17],"class_list":["post-4760","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blogging","tag-tutorials","tag-wordpress"],"_links":{"self":[{"href":"https:\/\/www.quickonlinetips.com\/archives\/wp-json\/wp\/v2\/posts\/4760","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.quickonlinetips.com\/archives\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.quickonlinetips.com\/archives\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.quickonlinetips.com\/archives\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.quickonlinetips.com\/archives\/wp-json\/wp\/v2\/comments?post=4760"}],"version-history":[{"count":3,"href":"https:\/\/www.quickonlinetips.com\/archives\/wp-json\/wp\/v2\/posts\/4760\/revisions"}],"predecessor-version":[{"id":65281,"href":"https:\/\/www.quickonlinetips.com\/archives\/wp-json\/wp\/v2\/posts\/4760\/revisions\/65281"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.quickonlinetips.com\/archives\/wp-json\/wp\/v2\/media\/63755"}],"wp:attachment":[{"href":"https:\/\/www.quickonlinetips.com\/archives\/wp-json\/wp\/v2\/media?parent=4760"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.quickonlinetips.com\/archives\/wp-json\/wp\/v2\/categories?post=4760"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.quickonlinetips.com\/archives\/wp-json\/wp\/v2\/tags?post=4760"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}