Start here
Settings reference
Every setting in Caching Out lives in one place: WordPress admin > Caching Out. The left-hand sidebar groups the tabs into Performance, Optimization, Delivery, Insights and Account. This page lists every tab in that order, every setting on it, the value it ships with, and when it is worth changing.
A few things that apply everywhere:
- Most tabs have a Save Changes button at the bottom. Nothing you type takes effect until you press it. The Database schedules save the moment you pick one, and the Insights panel saves through its own buttons.
- Saving a tab that changes what a page looks like also clears the page cache, so the next visitor gets the new version rather than a stale snapshot. Changing only the cache lifespan or the filesystem check does not clear anything.
- Settings can be exported and imported as a JSON file from the Import/Export tab (Pro), which is the easiest way to copy a tuned configuration to another site.
- Every time you save, Caching Out also writes a small snapshot of the cache-related settings to disk. That is what lets cached pages be served before WordPress itself loads.
- Settings marked (Pro) come from the Caching Out Pro add-on and need an active licence. Without it they are hidden, and any value already stored for them is kept but ignored.
Anything that can change how a page looks is off until you switch it on. Everything that is safe by default is applied automatically when you activate the plugin, with no configuration.
Performance results vary depending on hosting, theme, plugins and traffic. Benchmark figures are measured on our published test suite and are not a guarantee of results on any specific site.
Cache
Page caching and the rules for what must never be cached. See Page caching.
| Setting | Default | What it does | When to change it |
|---|---|---|---|
| Enable page caching | on (applied at activation) | Serves ready-made HTML to visitors who are not logged in, before WordPress loads. | Leave on. Switch off only while investigating a problem you think the cache is causing. |
| Cache lifespan | 10 (hours) | How long a cached page is kept before it is written again. 0 means no automatic expiry. Maximum 8760 (one year). | Raise it on a site that rarely changes; lower it if you publish very often. Content edits clear the cache anyway. |
| Separate mobile cache | off | Keeps a second set of cached files for phones. | Only if your theme sends different HTML to phones. Most responsive themes do not. |
| Filesystem check | on | Verifies that the files caching needs are present and healthy, and reports the result after install or update. | Turn off if you do not want the notice; real activation failures are still reported. |
| Record changes (Pro) | on | Keeps a local record of every change made to your settings and server files so you can see what changed and undo it. Never leaves your server. | Leave on. A record that starts after the problem is no use. |
| Changes to keep (Pro) | 500 | How many of the newest changes are always kept, whatever their age. Range 50 to 5000. | Raise on a busy site with several administrators. |
| Delete changes older than (Pro) | 90 (days) | Age at which older changes are removed. Range 7 to 365. | Lower it if you want a shorter record. |
| Let the AI Assistant see recent changes (Pro) | on | Sends a short summary of your last changes with each question you ask the assistant, so it can point at the change that caused a problem. Sent only when you ask. | Turn off if you would rather send nothing beyond the question itself. |
| Ignored query parameters | the tracking list (see note) | Query parameters that do not change the page. A URL whose parameters are all on this list is served the same cached page as the plain URL; the address in the browser is left as it is, so tracking pixels still read it. A trailing * matches every name with that beginning. One per line. The "Restore default parameters" link adds back any default you removed and keeps your own names. | Leave the defaults. Remove a name only if a plugin on your site reads that parameter on the server. Never add a parameter that changes what the page shows: a URL carrying a parameter that is not on the list is never served from cache. |
| Never cache these URLs (Pro) | empty | Extra paths that must always be built fresh. One per line, exact or partial. | For a custom page that shows per-visitor content. Carts, checkouts and account pages are already excluded. |
| Never cache when these cookies are present (Pro) | empty | If a visitor carries one of these cookies, they never see a cached page. One name per line. | For a plugin that personalises pages through its own cookie. |
| Never cache for these user agents (Pro) | empty | Visitors whose user agent contains one of these strings always get live content. One per line. | Rarely needed. Useful for a monitoring or preview service. |
Notes
Ignored query parameters, the default list. Since 1.21.17 the list is
prefilled with the parameters social networks, ad platforms and campaign
links append to a link and that only the browser-side pixels read:
fbclid, igshid, igsh, gclid, gbraid, wbraid, dclid, ttclid,
msclkid, twclid, yclid, li_fat_id, mc_cid, mc_eid, _ga, _gl,
_hsenc, _hsmi and utm_*. Before 1.21.17 the list was empty, so every
visitor arriving from Facebook, Instagram or an ad campaign was served an
uncached page. There is one list, with one meaning: a parameter on it is
removed from the cache lookup and from the cache write, so ?fbclid=abc
and ?fbclid=xyz both read the plain page's single cached file and no file
is written per value. There is no second list of parameters that produce a
different page per value; such a URL is simply not cached. Sites that had
already filled the list keep it on update; sites whose list was empty get
the defaults. A plugin that puts its own parameter on outbound links
registers it with the cachingout_ignored_query_strings filter (append
the names to the array it receives); Caching Out rewrites the drop-in's
settings file on every settings save and on every plugin activation, and a
plugin that registers its names at another moment calls
( new CachingOut_Settings() )->export_runtime_config() once afterwards.
- The built-in safety rules are part of every edition and cannot be turned off: logged-in visitors, session, login and cart cookies, cart, checkout and account pages, wp-admin, the login screen, feeds and sitemaps are never cached. The three "Never cache" lists above are additions to that, not replacements for it.
- Saving this tab clears the whole cache, except when the only change was the lifespan or the filesystem check.
CACHINGOUT_DISABLE_CACHEinwp-config.phpoverrides the enable toggle completely. See the kill switch.
Browser Cache
How long visitors' browsers keep your images, stylesheets and scripts, and whether text files are compressed. See Browser caching.
| Setting | Default | What it does | When to change it |
|---|---|---|---|
| Set far-future Expires headers | on (applied at activation) | Tells browsers to keep static files for up to a year, so return visits fetch less. | Leave on. |
| Enable GZIP compression | on (applied at activation) | Compresses HTML, CSS and JavaScript before sending them. | Leave on. Turn off only if your host already compresses and the two conflict. |
| Enable Brotli compression | on (applied at activation) | A newer compression method that most browsers support. Used in preference to GZIP where both are available. | Leave on. Harmless on servers without Brotli. |
Notes
- These three write a rules block to your
.htaccessfile on Apache and LiteSpeed. The file is backed up first, and the block is never written over another plugin's rules. - On NGINX nothing can be written automatically. Add the equivalent snippet to your server configuration by hand; see server compatibility.
- Deactivating Caching Out never edits
.htaccess.
Preload (Pro)
Fills the cache for you after it is cleared, so the first visitor to each page does not have to wait for it to be built. See Cache preloading.
| Setting | Default | What it does | When to change it |
|---|---|---|---|
| Enable preloading | off | Warms the cache automatically after a full clear. | Switch on once the rest of your configuration is settled. |
| Sitemap URL | empty (auto-detect) | The XML sitemap used to find pages worth preloading. Left empty, Caching Out looks for one from your SEO plugin or WordPress itself. | Set it when auto-detection picks the wrong sitemap, or you want a narrower list. |
| Batch size | 4 | How many pages are fetched in each background batch. Range 1 to 20. | Lower on a small shared host; raise on a strong server with many pages. |
| Request timeout | 30 (seconds) | How long to wait for each page before giving up on it. Range 5 to 60. | Raise on a slow site where preloading reports timeouts. |
Notes
- The Preload Now button clears the entire cache and starts again from scratch, whatever the toggle says.
- Preloading is work your server does for itself. On a very small host, a smaller batch size is kinder than a larger one.
Media
Lazy loading, image dimensions and the priority hint for your main image. See Media optimization.
| Setting | Default | What it does | When to change it |
|---|---|---|---|
| Enable LazyLoad | on (applied at activation) | Master switch. Defers images, iframes and background images until they are about to come into view. | Leave on. Everything below it does nothing while it is off. |
| LazyLoad Images | on | Adds the browser's own lazy-loading attributes to images. | Turn off if a gallery or slider misbehaves and exclusions do not help. |
| LazyLoad Iframes | on | Same treatment for iframes: videos, maps and embeds. | Rarely changed. |
| LazyLoad CSS Background Images | off | Defers inline CSS background images until the element scrolls into view. | Switch on only if you have heavy decorative backgrounds, and check the result. This one can affect layout. |
| LazyLoad Videos and Pause Off-screen | on | Self-hosted videos do not download until they are near the viewport, and off-screen players are paused. | Turn off for a hero video that must start the moment the page opens, or exclude just that video. |
| Exclude Above-the-Fold Images | on | Skips lazy loading for the first images on the page, so the largest visible image is not delayed. | Leave on. It is what keeps lazy loading from hurting your main image. |
| Number of Excluded Images | 3 | How many images at the top of the page load immediately. Range 0 to 10. | Raise if your header shows more than three images before the fold. |
| Add Missing Width/Height | on | Reads real image sizes from the server and fills in missing width and height, so the page does not jump as images arrive. | Leave on. Designed to reduce layout shift. |
| Prioritise the main above-the-fold image | on | Finds the image most likely to be the largest one on screen and asks the browser to fetch it first. | Leave on. A wrong guess only wastes one hint. |
| Never prioritise | empty | Patterns that must never be chosen as the main image, one per line. | Add slider or carousel when the hint keeps landing on a rotating image. |
| Replace YouTube Embeds with Thumbnail (Pro) | off | Shows a thumbnail with a play button; the YouTube player loads only when a visitor clicks it. | Switch on for pages with several videos. Typically improves the initial load a lot. |
| Serve WebP copies (Pro) | off | Browsers that announce WebP get a cached page whose images point at the .webp copies already on your server (photo.jpg.webp, photo.webp or an uploads-webpc folder). A copy larger or older than its original is never used. | Switch on if something else on your site already produces .webp files, or if you make copies with Pro's Image compression. This setting itself converts nothing. |
| Serve AVIF copies (Pro) | off | Browsers that announce AVIF get a cached page pointing at the .avif copies, or at the WebP copy where an image has no AVIF one. | Switch on when your converter, or Pro's Image compression, also makes AVIF. Safari does not announce either format, so it keeps the WebP or original images. |
| Excluded Patterns | empty | Any image or iframe whose tag contains one of these strings is never lazy-loaded. One per line. | Add logo or hero when a specific image must be there on first paint. |
Notes
- Images and iframes that already carry a loading attribute, or a
skip-lazy/no-lazyclass or data attribute, are always left alone. - The main-image priority runs before lazy loading, so an image it prioritises is never lazy-loaded by mistake.
File Optimization
Minifying, deferring and combining CSS and JavaScript. This is the tab most likely to change how a page looks, so everything on it ships off. See File optimization.
| Setting | Default | What it does | When to change it |
|---|---|---|---|
| Minify CSS | off | Serves smaller copies of your stylesheets from the cache folder. Your original files are never touched. The switch alone decides: SCRIPT_DEBUG is not consulted, so a development site with it defined still serves minified copies while this is on. | Switch on, then check the site. Typically a small but free saving. Switch off while debugging a stylesheet. |
| Excluded CSS files | empty | Stylesheet URLs or patterns to leave out of every optimization. One per line. | Add a file that breaks when minified or combined. |
| Excluded inline CSS | empty | Text to look for inside inline style blocks; a match is skipped. One per line. | Useful for animation or keyframe blocks that must stay untouched. |
| Minify JavaScript | off | Serves smaller copies of your scripts. Defer, async and module attributes are preserved. As with Minify CSS, SCRIPT_DEBUG is not consulted: the switch alone decides. | Switch on, then click through the site, especially forms and sliders. Switch off while debugging a script. |
| Excluded JavaScript files | empty | Script URLs or patterns to leave out of every optimization. One per line. | Add any script that stops working once minified. |
| Excluded inline JavaScript | empty | Text to look for inside inline script blocks; a match is skipped. One per line. | For snippets that must be left exactly as written. |
| Optimize CSS delivery (Pro) | off | Loads stylesheets in a way that does not hold up the first paint, and inlines what is needed for the top of the page. Designed to improve LCP. | One of the biggest wins available, and one of the riskiest. Test carefully. See Optimize CSS delivery. |
| Optimize Google Fonts (Pro) | off | Combines Google Fonts requests into one, adds display=swap so text stays visible, and adds connection hints. | Switch on if your theme loads Google Fonts. |
| Self-host Google Fonts (Pro) | off | Downloads the font files to your own server and serves them from there. Refreshed weekly. | Switch on for privacy, or to remove an external connection. See Google Fonts. |
| Combine CSS files (Pro) | off | Merges stylesheets into fewer files. | Usually unnecessary on a modern HTTPS server. Try it only if you have a very large number of small stylesheets. |
| Combine JavaScript files (Pro) | off | Merges scripts into fewer files. Async, deferred and module scripts are left alone. | Most likely of all these to break something. Test thoroughly. |
| Defer JavaScript | off | Adds the defer attribute so scripts do not block the page from rendering. jQuery, async and module scripts are skipped automatically. | A good early step. Switch on and click through the site. |
| Load jQuery in the footer (Pro) | off | Moves jQuery to the end of the page so it no longer blocks the first paint. Scripts that need it still run after it. | Try it after Defer JavaScript. If a header template contains inline jQuery, the page will break, so test. See Load jQuery in the footer. |
| Defer jQuery (I have checked my inline scripts) (Pro) | off | Lets Defer JavaScript defer jQuery as well. | Only when the Filesystem Check reports no inline scripts using jQuery on your front page. "Load jQuery in the footer" is the safe alternative. |
| Delay JavaScript execution (Pro) | off | Holds non-essential scripts until the visitor interacts with the page, or until the timeout. | The most aggressive setting here. Consent banners, payment scripts, chat widgets and reCAPTCHA are excluded automatically. |
| Also delay analytics and tag-manager scripts (Pro) | off | Includes analytics and tag managers in the delay. | Raises measured scores, but visits shorter than the timeout are not recorded. Decide which matters more to you. |
| Delay timeout (seconds) (Pro) | 10 | How long to wait for an interaction before loading the delayed scripts anyway. Range 1 to 60. | Lower it if delayed features feel slow to wake up. |
| Delayed JS exclusions (Pro) | empty | Scripts that must never be delayed. One per line, matched as plain text anywhere in the script URL or its id attribute; not a regular expression. jQuery, wp-i18n, wp-hooks, wp-polyfill, analytics, consent, chat and payment scripts are excluded already. | Add the shortest distinctive fragment (swiper, not swiper.min.js) for a library that inline code calls at load. |
Notes
- Change one setting at a time here, and check the site after each. When something breaks, the exclusion lists are the fix.
- Turning any of these on clears the cache, because cached pages are a snapshot of the optimizations that were on when they were written.
CACHINGOUT_DISABLE_OPTIMIZATIONinwp-config.phpswitches this whole tab off in one step without changing any of your settings.
Unused CSS/JS (Pro)
Stops named plugin files from loading on pages that do not use them. This is the only optimization that removes content, so nothing happens until you add a rule and switch it on. See Unused CSS/JS.
| Setting | Default | What it does | When to change it |
|---|---|---|---|
| Unload unused CSS and JavaScript | off | Master switch. With it off, your rules are kept but nothing is unloaded. | Switch on after previewing your rules. |
| Refuse unsafe rules | on | Keeps a file when another loaded file depends on it. | Leave on. Switching it off only removes the refusal; it does not force anything to unload. |
| Rules | none | Each rule names a file and the pages it should stop loading on. Added by hand, or from the suggestions after a scan. | Build these from the scan suggestions, preview, then save. |
| Also remove hard-coded tags | off | Lets URL-pattern rules remove tags a theme prints directly instead of registering. | Advanced. There is no dependency check for these, so use it only when a normal rule has no effect. |
| Scan pages weekly | off | Repeats the page scan once a week so suggestions stay current as content changes. | Switch on once you are using rules regularly. |
| Pages to scan | 12 | How many pages the scanner samples when listing loaded files. Range 1 to 50. | Raise on a large site with many page types. |
Notes
- Preview shows what your rules would remove without saving anything. A rule is never applied until it has been previewed and saved.
- jQuery, the active theme stylesheet, the admin bar, consent, payment and reCAPTCHA files can never be unloaded.
- Device-only rules do nothing until Separate mobile cache is on (Cache tab), because the page cache would otherwise serve one device's page to the other.
- Every rule change is recorded on the Activity page, where it can be undone.
Database
Cleans up rows WordPress accumulates over time. The free edition runs every cleanup by hand, showing the row count before anything is deleted. See Database cleanup.
The manual operations have no stored setting: each row has Preview and Run. They are Post Revisions, Auto Drafts, Trashed Posts, Spam Comments, Trashed Comments, Expired Transients and All Transients, plus Optimize Tables and Orphaned Metadata with Pro.
| Setting | Default | What it does | When to change it |
|---|---|---|---|
| Post Revisions schedule (Pro) | Never | Deletes stored copies of posts on the chosen schedule. | Weekly suits a site with a lot of editing. |
| Auto Drafts schedule (Pro) | Never | Removes auto-draft posts older than seven days. | Safe to schedule monthly. |
| Trashed Posts schedule (Pro) | Never | Permanently deletes posts already in the trash. | Only when you are sure nothing in the trash is wanted. |
| Spam Comments schedule (Pro) | Never | Deletes comments marked as spam. | Weekly on a site that attracts spam. |
| Trashed Comments schedule (Pro) | Never | Permanently deletes trashed comments. | Same as above. |
| Expired Transients schedule (Pro) | Never | Deletes temporary values that have passed their expiry. | Safe to run often. A good first schedule. |
| All Transients schedule (Pro) | Never | Deletes every temporary value, expired or not. | Rarely. Your site may be briefly slower while caches rebuild. |
| Optimize Tables schedule (Pro) | Never | Reclaims unused space in core tables. Skips InnoDB tables. | Monthly at most. |
| Orphaned Metadata schedule (Pro) | Never | Deletes metadata pointing at entries that no longer exist. | Preview it by hand first; then monthly if the count is large. |
Notes
- A schedule saves as soon as you pick it. Choosing anything other than Never both saves the schedule and switches that cleanup on.
- A scheduled cleanup runs unattended, with no preview. Leave an operation on Never until you have previewed it by hand and are happy with what it removes.
- Space saved is an estimate based on average row sizes.
CACHINGOUT_DISABLE_DATABASEinwp-config.phpblocks every cleanup, manual and scheduled.
CDN (Pro)
Rewrites the addresses of your static files so they are served from a content delivery network. See CDN integration.
| Setting | Default | What it does | When to change it |
|---|---|---|---|
| Enable CDN | off | Master switch for rewriting asset URLs. | Switch on once your CDN hostname works and serves your files. |
| CDN CNAME(s) | empty | Your CDN hostname or hostnames, separated by commas. | Required. Every asset must be reachable at the same path on the CDN. See CNAMEs. |
| Rewrite HTTPS | on | Serves CDN assets over HTTPS. | Leave on. |
| CSS files | on | Rewrites .css addresses. | Turn off if your CDN mishandles stylesheets. |
| JS files | on | Rewrites .js addresses. | As above. |
| Images | on | Rewrites image addresses, including WebP and AVIF. | Usually the main reason to use a CDN. |
| Fonts | on | Rewrites font file addresses. | Turn off if your CDN does not send the right cross-origin headers for fonts. |
| Video | on | Rewrites video file addresses. | Turn off if your CDN charges heavily for video. |
| Exclusions | empty | Paths or patterns never rewritten. One per line. Exact paths, wildcards and regular expressions are supported. | Add anything that must be served from your own domain. |
Add-ons (Pro)
Clears third-party caches whenever Caching Out clears its own. See Add-ons.
| Setting | Default | What it does | When to change it |
|---|---|---|---|
| Enable Cloudflare | off | Clears Cloudflare's edge cache when the local cache is cleared. | Switch on if your site is behind Cloudflare. |
| Cloudflare Account Email | empty | The email address on your Cloudflare account. | Required for the Cloudflare add-on. |
| Global API Key | empty | Your Cloudflare Global API Key, from My Profile > API Tokens. | Required for the Cloudflare add-on. |
| Zone ID | empty | The Zone ID for your domain, from the Cloudflare Overview page. | Required for the Cloudflare add-on. |
| Enable Varnish | off | Sends purge requests to Varnish when the local cache is cleared. No credentials needed. | Switch on if your host runs Varnish in front of WordPress. |
| Enable Sucuri | off | Clears the Sucuri firewall cache when the local cache is cleared. | Switch on if you use the Sucuri firewall. |
| Sucuri API Key | empty | From your Sucuri dashboard, under Settings > API. | Required for the Sucuri add-on. |
| Sucuri API Secret | empty | From the same place. | Required for the Sucuri add-on. |
Notes
- Credentials are stored in your site's database. The safe settings export leaves them out; the second export button includes them, so treat that file as a secret.
- With Pro switched off, a purge clears the local cache only. Nothing is sent to any external service and your stored credentials are untouched.
Heartbeat
Controls how often WordPress talks to itself in the background, and lets you warm up connections to outside domains.
| Setting | Default | What it does | When to change it |
|---|---|---|---|
| Disable heartbeat on frontend | on | Stops the background check from running for ordinary visitors, which cuts server requests. | Leave on unless a plugin needs live updates on the front end. |
| Admin heartbeat interval (seconds) | 60 | How often the background check runs in the admin area. Saved values are kept between 15 and 120. | Raise it on a busy shared host to reduce load. |
| Post editor heartbeat interval (seconds) | 30 | How often it runs while editing a post. This affects autosave and post locking. | Raise it a little if editing feels heavy; do not push it too high or you lose autosaves. |
| DNS prefetch domains | empty | External domains to look up and connect to early. One per line, no protocol. | Add domains you load fonts, analytics or embeds from. |
Insights
Audits your key pages and explains what to fix. The Page Audit is part of every edition and needs no key or account. See Insights.
| Setting | Default | What it does | When to change it |
|---|---|---|---|
| Page Audit | always available | Reads each tracked page the way a visitor would and lists findings: one click where a plugin setting solves it, plain advice where your theme or host does. | Nothing to configure. Press Audit pages now. |
| I agree to share anonymous performance data (Pro) | off | Opt-in only. Sends anonymous scores, which features are on, and which suggested settings you kept. Never page content, URLs or personal data. | Entirely your choice. Required before the PageSpeed panel appears. |
| Google PageSpeed API Key (Pro) | empty | Your own free key from the Google Cloud Console, used to fetch PageSpeed scores. | Enter one if you want score dials, history and trends. |
Notes
- Without Pro, the tab shows the Page Audit only: no score dial, no baseline, no history and no scheduled re-test.
- Three related values have no on-screen control in this version: the extra pages to track, whether mobile audits run alongside desktop ones (on by default), and scheduled re-tests (off by default, weekly when switched on). They can be set through an imported settings file. See Custom pages.
- Telemetry can be blocked outright with
CACHINGOUT_DISABLE_TELEMETRY, whatever the opt-in says.
AI Assistant (Pro)
A chat tab that already knows your setup: which plugins you run, which settings are on, and what the Page Audit found. It has no settings of its own.
Notes
- The assistant needs an active licence, and it is scoped to Caching Out and your site's configuration. It is not a general-purpose chatbot.
- Your question, a fingerprint of your site (plugin and theme names, PHP version, server type) and, when the Filesystem Check is on, a pass or fail summary of those checks are sent. No page content, visitor data or user information is transmitted.
- What it may see of your change record is controlled by Let the AI Assistant see recent changes on the Cache tab.
- Answers are AI-generated and can be wrong. Test consequential changes on a staging site first.
- When the service cannot be reached, the tab says so before you type.
License (Pro)
| Setting | Default | What it does | When to change it |
|---|---|---|---|
| License key | empty | Activates Caching Out Pro on this site and switches its features on. | Enter the key from your purchase, then press Activate. Deactivate before moving the licence to another site. |
See Licensing for tiers, transfers and renewals.
Import/Export (Pro)
No stored settings. Two export buttons and one import form. See Import and export.
| Action | What it does | When to use it |
|---|---|---|
| Download Settings (safe) | Exports every setting as a JSON file, with API keys and credentials redacted. | The normal choice. Safe to store or share with support. |
| Download Settings (include secrets) | The same file with credentials included. | Only when moving a site yourself. Treat the file as a password. |
| Upload and Import | Applies a previously exported file. Sections present in the file are updated; sections not in it are left alone. | Copying a tuned configuration to another site. Values marked as redacted are skipped so your existing credentials survive. |
Pro
A comparison screen only. It lists what the free edition does, what Pro adds, and where to enter a licence. It saves nothing.
Other screens
Two screens sit in the Caching Out menu rather than in the settings tabs, and neither has settings of its own:
- Setup Wizard walks through caching, media and optimization choices on a new install and writes them to the tabs above.
- Filesystem Check is a read-only look at every file caching needs: the drop-in, the cache directory and its guards, and the background task wiring. Its Re-run button repeats the activation writes. It is shown or hidden by the Filesystem check toggle on the Cache tab.
- Activity (Pro) lists every change the plugin made, with one-click revert. See Activity.
- On a multisite network, Pro adds network screens for managing sites and applying settings across them. See Multisite.
Constants for wp-config.php
These are defined in wp-config.php, above the line that says to stop
editing. They override the settings screens and cannot be changed from the
admin, which is what makes them useful when a site is misbehaving.
define( 'CACHINGOUT_DISABLE_CACHE', true );
| Constant | Effect | Default |
|---|---|---|
CACHINGOUT_DISABLE_CACHE | The kill switch. Stops all cache reading and writing, in every version. The documented first response to any suspected caching problem. | false |
CACHINGOUT_DEBUG | Adds the X-CachingOut-Cache response header, showing HIT, MISS or BYPASS with the reason, plus related debug headers. | not defined |
CACHINGOUT_DISABLE_OPTIMIZATION | Switches off all HTML optimization: minifying, deferring, combining, delaying, unused CSS/JS and the jQuery settings. Your settings are left as they are. | not defined |
CACHINGOUT_DISABLE_DATABASE | Blocks all database cleanup, manual and scheduled. | not defined |
CACHINGOUT_DISABLE_AUDIT | Stops the change record. Deliberately independent of the cache kill switch, so the record survives a caching incident. | not defined |
CACHINGOUT_DISABLE_TELEMETRY | Blocks all telemetry regardless of the opt-in setting. | not defined |
CACHINGOUT_PAGESPEED_API_KEY | A PageSpeed key used when the field on the Insights tab is empty. Keeps the key out of the database. | not defined |
CACHINGOUT_LICENSE_API_URL | The licence server address. Not needed on a normal site: from 1.21.6 the plugin knows the production server. Define it only to point a staging site at a test server. | not defined (production server) |
CACHINGOUT_AI_API_URL | The assistant's endpoint. When unset, it is derived from the licence server address. | not defined |
CACHINGOUT_DEV_LICENSE | Removed in 1.21.14; has no effect. Until 1.21.13 it marked a development site on which an RS-DEV- developer key was accepted without contacting the licence server. Every key is now checked by the server. Delete the line if you have it. | not defined |
CACHINGOUT_TELEMETRY_ENDPOINT | An alternative destination for telemetry. | not defined |
Notes
WP_CACHEis written for you at activation and is not something to set by hand.- After changing a constant, clear the cache once so nothing built under the old behaviour is still being served.
- Caching Out Pro runs only with the free plugin at 1.22.0 or newer; the two are released as a pair. Upgrade the free plugin first; otherwise Pro refuses to run.