Skip to main content

How to Configure Breeze WordPress Cache Plugin

Learn how to configure the Breeze WordPress cache plugin on Cloudways, including recommended settings for caching, Gzip compression, and browser cache.

Written by Syed Abuzar Mehdi

Breeze is the caching and performance plugin that comes pre-installed on Cloudways-optimized WordPress applications. Every setting is already configured for you, so you only need this guide when you want to review a setting, change it, or understand what it does.


Open the Breeze settings

Log in to your WordPress admin dashboard and go to Settings > Breeze.

The Breeze menu on the left lists every tab covered in this guide. These are Basic Options, File Optimization, Preload, Advanced Options, Heartbeat API, Database Options, CDN, Varnish, Tools, One-Click Optimization, and FAQs.

Most tabs have a Save Changes button at the bottom. Click it after you update any setting, and purge the cache so visitors see the change.

One-Click Optimization

One-Click Optimization applies a ready-made set of Breeze settings with a single button. Use it when you want proven defaults without going through each tab. A banner at the top of every Breeze tab also links to it through the Explore Optimization Options button.

Breeze offers three presets.

Preset

Recommended for

Settings it enables

Standard

Most websites

Gzip Compression, Browser Cache, Lazy Load Images, HTML Minify, CSS Minify, and Disable Emoji

Advanced

Modern themes and plugins

Everything in Standard, plus lazy load for iframes and videos, Include Inline CSS, Combine CSS, Preload Links, and Host Files Locally for Google Fonts

Expert

Simpler sites and testing

Everything in Advanced, plus JS Minify, Include Inline JS, Delay All JavaScript, and Host Files Locally for Google Fonts and Gravatars

To apply a preset, open the One-Click Optimization tab and click the Enable button under the preset you want.

The Advanced and Expert presets minify, combine, and delay files, which can change how some themes and plugins behave. Test them on a staging site first, and purge the cache after you apply any preset.

Basic Options

The Basic Options tab controls core caching and delivery. Cache System, Gzip Compression, and Browser Cache are on by default and should stay on.

Cache System turns the main Breeze cache on or off. It builds the internal and static caches for your WordPress site. Keep it on in all cases.

Mobile Cache serves separate cached pages to mobile visitors. Modern themes are responsive and usually work well without it, so turn it on only if your site uses a dedicated mobile theme or plugin.

On Cloudways, you must also enable Device Detection in the Cloudways Platform for mobile caching to work. Follow the Device Detection guide in the Cloudways Knowledge Base to set it up.

Purge Cache After sets how many minutes Breeze waits before it clears the internal cache. The default is 1440 minutes, which equals one day. Lower the number if your content changes often.

Gzip Compression compresses HTML, CSS, and JavaScript on the server before it reaches the visitor's browser. This means fewer and faster HTTP requests. Keep it on.

Browser Cache adds expiry headers to static files. Browsers then reuse files they already downloaded instead of requesting them again from the server.

Lazy Load Images delays loading images until they are about to appear on screen, which shortens the initial page load. When you turn it on, three more options appear.

  • iFrame lazy load applies the same delay to iframe tags, such as embedded maps and videos.

  • Video lazy load applies the delay to video tags.

  • Enable native browser lazy load uses the lazy loading built into the browser instead of a JavaScript library. Not every browser supports it.

Cross-origin Safe Links adds the noopener noreferrer attribute to links that open in a new tab with target="_blank" and point to an external site. This protects your visitors and your site from performance and security issues linked to those pages.

Cache Logged-in Users lets Breeze cache pages for logged-in users. You can turn it on for each of these WordPress roles individually, Administrator, Editor, Author, Contributor, and Subscriber. Some page builders do not work properly with this option, so check your pages after you enable it.

Click Save Changes when you finish.

File Optimization

The File Optimization tab reduces page size and load time by minifying and combining HTML, CSS, and JavaScript files. Minification can change how a theme or plugin behaves, so test every change on a staging site before you apply it to your live site, and purge the cache afterward.

If you see console errors after a change, turn off the settings you just enabled in this tab, starting with JS Minify, and test again.

HTML Settings

Cache Full Page HTML is a beta setting that saves a copy of each page so it loads faster. It is separate from the Cache System option in Basic Options. It works at the plugin level, and Varnish continues to run at the server level. Keep it on for faster pages.

Refresh Cached Page Parts is also in beta. After a cached page loads, Breeze refreshes only the page parts you list so they stay current. Use it only when a cached page shows outdated content in one block, such as a mini-cart. It can affect page response, so leave it off if your site already looks correct.

HTML Minify removes whitespace and comments from your HTML to reduce its size.

CSS Settings

CSS Minify removes whitespace and comments from your CSS files. When you turn it on, the options below it become available.

  • Font remain visible during load shows text in a fallback font while the custom font downloads, so visitors never see blank text. It works only when CSS Minify is on.

  • Include Inline CSS minifies CSS written directly in your pages and creates a separate cache file for it.

  • Combine CSS merges your minified CSS files into one file, which reduces HTTP requests.

  • Exclude CSS keeps specific CSS files out of minification and combining. Enter one URL per line. You can exclude a whole folder with a wildcard, or a single file by its name.

JS Settings

JS Minify removes whitespace and comments from your JavaScript files. As with CSS, the options below it become available after you turn it on.

  • Include Inline JS minifies JavaScript written directly in your pages and creates a separate cache file for it.

  • Combine JS merges your minified JavaScript files into one file. You cannot use it together with Delay JS Inline Scripts or Delay All JavaScript.

  • Exclude JS keeps specific JavaScript files out of minification and combining. Enter one URL per line, using a folder wildcard or a file name.

Delay JS Inline Scripts postpones inline JavaScript until a visitor interacts with the page, which shortens load time for visitors and speed testing tools.

Add a keyword that identifies each script you want to delay, with one keyword per line. Breeze includes a starter list of common keywords. Clear Varnish after you apply this setting, and do not use it together with Combine JS.

Delay All JavaScript delays every script on the page until a visitor interacts with it. Use the List of scripts not to delay field to keep specific inline scripts or JavaScript files running right away, with one keyword per line.

Use only one of Delay JS Inline Scripts or Delay All JavaScript at a time.

Move JS Files to Footer moves JavaScript files that a theme or plugin loads in the header to the footer during minification.

This lets the visible part of the page load first. Enter the complete URL of each file and click Add URL. Use the arrows to change the order and the X icon to remove an entry. Add the URL of the original file, because Breeze does not support minified file URLs here.

JS Files With Deferred Loading makes the browser run a JavaScript file only after it has parsed the full HTML of the page. Add the URL of the original file the same way as above.

Click Save Changes when you finish.

Preload

The Preload tab prepares fonts, links, domains, and cached pages ahead of time so key pages stay fast, even right after a cache purge.

Preload Webfont loads important font files earlier in the page load. Enter the URL of a local font file or of a CSS file that loads only fonts, then click Add URL. WOFF fonts give the best performance. Do not add your full website CSS file, because it slows the site down. Skip Google Fonts links too, since they already use preload.

For example, a local font URL looks like this.

https://example.com/wp-content/themes/your-theme/assets/fonts/my-font.woff

Preload Links prepares a page when a visitor hovers over an internal link, so the page opens faster after the click. It works in Chromium-based browsers such as Google Chrome, Microsoft Edge, Opera, and Brave. Pages listed under Never Cache URL(s) in Advanced Options are excluded from preload.

Prefetch of DNS Request resolves third-party domain names before the browser needs them, which speeds up connections to analytics tools, tag managers, fonts, and CDN domains. Enter one domain per line. Common examples include the following.

//www.google-analytics.com

//www.googletagmanager.com

//fonts.googleapis.com

//cdn.example.com

Preload URLs rebuilds the cache for pages you choose after the Breeze cache is cleared. This prevents the first visitor from hitting a slow, uncached page after a manual purge, a settings update, or a full cache clear. Breeze always includes your homepage automatically.

To add your own pages, follow these steps.

  • Turn on Preload URLs.

  • Enter one full local URL per line, such as a landing page, a category page, or a contact page.
    ​
    ​https://example.com/contact/

    https://example.com/pricing/

    https://example.com/category/news/

  • Click Save Changes.

You can save up to 30 URLs, and Breeze ignores any extra entries. Only URLs from your own site are accepted, so external URLs are rejected. URLs that match your Never Cache rules are skipped. On WordPress Multisite, each subsite keeps its own preload list.

Advanced Options

The Advanced Options tab handles cache exclusions, query strings, local file hosting, and the Breeze API.

Never Cache URL(s)

Enter the pages or posts you want to exclude from the Breeze internal cache, one URL per line. To exclude a single page, enter its full URL. To exclude every page under a path, add a wildcard at the end.

https://example.com/example/

https://example.com/events/(.*)

This setting applies only to the WordPress internal cache. If Varnish is enabled on your server, exclude the same URLs from Varnish as well.

Cache Query Strings

A query string is the part of a URL that comes after the question mark. It passes a parameter and a value to the page. In the URL below, name is the parameter and foo is the value.

http://example.com/page/?name=foo

By default, Breeze serves one cached version of a page and ignores most query strings. If a query string changes what the page shows, add its parameter to the Cache Query Strings field, one per line. Breeze then creates a separate cache file for each value of that parameter.

For example, if your site uses a country parameter, enter country in the field. Breeze caches the pages below as two separate files.

http://example.com/page/?country=germany

http://example.com/page/?country=france

If a URL contains several parameters and at least one of them is on your list, Breeze caches the page.

Breeze already creates dedicated cache files for the lang, permalink_name, and lp-variation-id parameters. For example, example.com/services/?lang=english and example.com/about-us/?lang=german each get their own cache file.

Manage query strings in the plugin file

For finer control, you can edit the query string rules directly in this file.

wp-content/plugins/breeze/inc/class-breeze-query-strings-rules.php

To cache each value of a parameter separately, add the parameter to the always_cache_query list.

public $always_cache_query = array(

'lang',

'permalink_name',

'lp-variation-id',

'_group_type',

);

With _group_type on the list, the URLs below each get their own cache file. This is useful when the content changes with the parameter, such as pricing, user roles, or interface variations.

https://example.com/?_group_type=admin

https://example.com/?_group_type=customer

https://example.com/?_group_type=guest

https://example.com/?_group_type=premium

Tracking parameters do not change page content, so Breeze ignores them and serves the same cache file for every value. To ignore another parameter, add it to the ignored_list in the same file. For example, these two URLs share one cache file.

https://example.com/product/123?fbclid=IwAR123abcXYZ

https://example.com/blog/post?fbclid=IwAR987xyzABC

Breeze ignores the following parameters out of the box.

Source

Ignored parameters

Google Analytics and Ads

utm_source, utm_medium, utm_campaign, utm_expid, utm_term, utm_content, campaignid, adgroupid, adid, gclid, _ga

Matomo

mtm_medium, mtm_campaign, mtm_keyword, mtm_cid, mtm_content

Piwik Pro

pk_source, pk_medium, pk_campaign, pk_keyword, pk_cid, pk_content

Facebook

fb_action_ids, fb_action_types, fb_source, fbclid

Age Verify Plugin

age-verified

Autoptimize

ao_noptimize

AMP

usqp

Cookie Notice

cn-reloaded

ShareASale

sscid

Google DoubleClick

gclsrc

Google Web Stories

_gl

Mailchimp

mc_cid, mc_eid

Bronto

_bta_tid, _bta_c

Listrak

trk_contact, trk_msg, trk_module, trk_sid

GoDataFeed

gdfms, gdftrk, gdffi

Klaviyo

_ke

Springbot

redirect_log_mongo_id, redirect_mongo_id, sb_referer_host

Marin

mkwid, pcrid

Adobe Advertising Cloud

ef_id

Adobe Analytics

s_kwcid

Microsoft Advertising

msclkid

Dotdigital

dm_i

Pinterest

epik, pp

Disable Emoji

Turns off the emoji libraries and CSS that WordPress loads by default. This removes a few HTTP requests from every page.

Host Files Locally

Serves third-party files from your own server, which removes extra external requests. Turn on Google Fonts, Gravatars, or both, and Breeze stores the files in the following folder.

uploads/breeze/service-name/

API Integration

Enables the Breeze API endpoint, so you can purge the cache on demand through the WordPress REST API. This is useful in workflows that update or add posts and products through the REST API.

Authentication Token

Secures the Breeze API endpoint against unauthorized access. This field becomes active when you turn on API Integration. Click the refresh icon to generate a random key, or enter your own custom value. Include the token in every request you send to the endpoint.

Click Save Changes when you finish.

Heartbeat API

The WordPress Heartbeat API sends data between the browser and the server in near real time while you are logged in to the admin area. It powers several features.

  • Admin dashboard notifications

  • Live sales data from e-commerce plugins such as WooCommerce

  • Lock-out notices for idle users

  • Periodic autosaves, drafts, and revisions

  • Post locking when another editor opens the same post

The API runs its tasks every 15 to 60 seconds through the /wp-admin/admin-ajax.php file. These requests can pile up and cause high CPU usage, especially when an admin screen stays open for a long time. It runs on the front end, in the back end, and in the post editor.

Turning the Heartbeat API off completely is rarely the best fix for high CPU usage. Instead, you can lower how often it runs with the Breeze controls below.

Control Heartbeat turns on the Heartbeat settings in Breeze. The three options below take effect only when it is on.

Heartbeat Front-end changes how often Heartbeat runs on the public side of your site, or disables it there.

Heartbeat Post Editor changes how often Heartbeat runs while you edit a post or page, or disables it in the editor.

Heartbeat Back-end changes how often Heartbeat runs in the admin area, or disables it there.

All three dropdowns offer the same choices. Default keeps the standard WordPress interval. Every 30 seconds, Every 60 seconds, Every 90 seconds, and Every 120 seconds set a fixed interval, and a longer interval means fewer requests to your server. Disable turns Heartbeat off for that location.

Disabling Heartbeat can break features in plugins and themes that depend on it, so check your site after you make a change.

Click Save Changes when you finish.

Database Options

Over time, WordPress collects data that your site no longer needs, such as old revisions, drafts, spam, and expired transients. The Database Options tab shows how much of each type your database holds and lets you remove it, which keeps the database small and your site faster.

Back up your site and database before you clean anything.

The Clean All toggle at the top removes all trashed posts and pages. Turn it on and click Clean Now. The number next to it shows how many items Breeze found.

Below it, each cleanup item appears as a card with a count in parentheses. Select the cards you want to clean, then click Optimize under the card grid. Your browser asks you to confirm that you want to optimize the selected items, so click OK to continue.

Card

What it does

Auto Drafts

Removes all auto-drafted posts and pages

All Transients

Deletes expired and active transients

Expired Transients

Deletes only expired transients

Post Revisions

Removes all post and page revisions

Spam Comments

Removes comments marked as spam

Trashed Posts

Removes all trashed posts

Trashed Comments

Removes all trashed comments

Unapproved/Pending Comments

Removes comments that are still waiting for approval

Trackbacks/Pingbacks

Removes trackback and pingback data

oEmbed in Posts metadata

Removes cached oEmbed data stored in post metadata

Duplicated Posts, Comments, User, and Term metadata

Removes duplicated metadata entries of each type

Orphaned Posts, Comments, User, and Term metadata

Removes metadata that no longer belongs to any post, comment, user, or term

Optimize database

Optimizes the database tables

Autoload Summary

Below the cards, the Autoload Summary shows the total size and the number of autoloaded options in your database. WordPress loads these options on every page request, so a large total can slow your site down. The table lists each option by name and size, which helps you find the biggest ones.

CDN

Breeze can connect your site to a Content Delivery Network, so you do not need the CDN provider's own plugin.

Breeze supports Cloudflare Enterprise with 1-click integration, and it needs no special configuration in Breeze. You can also purge the Cloudflare cache manually with the Purge Cloudflare Cache feature, which works with Cloudflare Smart Cache.

If you want to use your own CDN, use the fields below.

Activate CDN turns on CDN delivery for your site.

CDN CNAME holds the CDN URL. Start it with a double slash (//) if some of your pages load over HTTP and others over HTTPS.

CDN Content lists the directories the CDN should serve, separated by commas. The default is wp-includes,wp-content.

Exclude Content lists file types or directories that the CDN should skip. For example, enter .css to exclude CSS files.

Relative Path lets your CDN use relative paths on your WordPress site. Keep it on.

Click Save Changes when you finish.

Varnish

Varnish is enabled by default on all WordPress sites hosted on Cloudways, and Breeze comes with its settings already configured. You rarely need to change anything here.

Auto Purge Varnish clears the Varnish cache automatically when you publish or update content, such as new posts, pages, and comments. Keep it on.

Varnish Server holds the address of the Varnish server. Keep the default value if you host on Cloudways. If you host elsewhere, ask your hosting provider what to enter.

Purge Varnish Cache clears the Varnish cache for your entire site right away when you click Purge.

Click Save Changes when you finish.

Tools

The Tools tab lets you back up, restore, reset, and roll back your Breeze configuration. You can do the same work from the WordPress admin panel or with WP-CLI.

Use the WordPress admin panel

  • Export Settings downloads a backup of your Breeze settings as a .json file. Click Download Settings and the file saves to your computer.

  • Import Settings restores settings from a .json file of up to 30 MB. Click Choose File, select the file, and click Upload File and Import Settings.

  • Reset all settings returns every Breeze setting to its default when you click Reset Now.

  • Rollback Version installs an earlier version of Breeze. Pick the version from the dropdown and click Rollback.

Troubleshooting common issues

Console errors or a broken layout

Turn off the settings you changed in the File Optimization tab, starting with JS Minify, and test the change on a staging site. If the problem goes away, turn the settings back on one at a time to find the one that causes it, and add the affected file to the matching Exclude field. Purge the cache after every adjustment.

Configuration problems

Reset the file permissions of your application and check that the advanced-cache.php file exists in the wp-content folder. If it is missing, save your Breeze settings to regenerate it. You can also turn off caching features temporarily to find the setting that causes the issue.

Cloudflare compatibility

Breeze works with Cloudflare Smart Cache. Use the Cloudflare options in the latest Breeze interface to keep both in sync and to manage API limits for sub-accounts.


That's it! We hope this article was helpful.

Did this answer your question?