Opens in a new tab

Limited-Time Lifetime Deal — 30% Off

Plugin Compatibility

Plugin Compatibility docs featured: WARP Performance

Warp Performance includes built-in integrations for the most popular WordPress plugins, themes, and hosting environments. This page documents what works automatically, what needs configuration, and what conflicts to avoid.

Incompatible Plugins

These plugins do the same core work Warp does — page caching, minification, or JavaScript delay. Running them alongside Warp causes double-minified assets, cache poisoning, or broken pages. Warp shows an admin notice when it finds any of them active.

Deactivate these before using Warp Performance:

PluginReason for conflict
WP RocketFull caching & optimization suite — overlaps entirely
W3 Total CacheFull caching & minification suite
WP Super CachePage caching — conflicts with Warp’s cache layer
WP Fastest CachePage caching & minification
LiteSpeed CacheFull caching suite — use Warp’s Server-native cache mode instead
HummingbirdFull caching & optimization suite
Cache EnablerPage caching
Swift PerformanceFull caching & optimization suite
Swift Performance LiteFull caching & optimization suite
AutoptimizeCSS/JS minification & deferral
Fast Velocity MinifyCSS/JS minification
WP OptimizeCaching & optimization suite
instant.pagePrefetch library — conflicts with Warp’s speculative loading
WP MeteorJS delay — conflicts with Warp’s Delay JavaScript

E-Commerce

WooCommerceintegrated

No configuration required.

  • Session cookies bypass the cache. wp_woocommerce_session_ and woocommerce_items_in_cart are in the default bypass list, so any visitor with an active cart or session always gets an uncached response. Cart, checkout and account pages are never cached, and the Cloudflare integration also excludes /cart/, /checkout/ and /my-account/ at the edge.
  • Cart Fragments replaced. The default wc-cart-fragments script, which fires a heavy admin-ajax call on every page load, is dequeued and replaced with Warp’s own fragment endpoint. The cart count and total refresh through one lightweight REST request.
  • Product cache purged automatically. Creating, updating, deleting a product or reducing its stock purges the product page, the shop page and the related archives, then preloads them.
  • Filter parameters stay in the cache key. orderby, min_price, max_price and rating_filter are cached as separate pages rather than being stripped.

WooCommerce Multilingual & Multi-Currency (WCML)integrated

Warp tracks the wcml_currency cookie and includes it in the cache key, so each currency gets its own cached copy of a page. Switching currency never serves a page priced in the previous one.

Page Builders

Elementorintegrated

  • Lazy Render per section or container. A “Warp Performance” panel appears in the Advanced tab of every Section and Container. Turn on Lazy Render to defer that element until it is about to enter the viewport.
  • Template changes purge everything. Saving a template, global widget or theme builder part purges the whole page cache and starts a preload, because those affect many pages at once.
  • Video widgets become click-to-play. Elementor’s video widgets are converted to a lightweight placeholder so the embed’s own scripts only load when a visitor plays the video.
  • The editor is never served from cache, because it runs as a logged-in administrator and admins are excluded from caching by default.

Bricks Builderintegrated

  • Delay JavaScript is made safe for Bricks. Bricks holds elements at zero opacity until its own JavaScript runs, which would leave a delayed page blank. Warp supplies its own visibility rules for those elements and replays the events Bricks expects, so entrance animations run normally.
  • Animations do not replay. Elements already on screen when the delayed scripts start are skipped, so nothing animates in a second time.
  • Bricks bloat dequeued where it is not needed on the front end.
  • Template saves purge all pages and start a preload.

Etchintegrated

Saving Etch global styles, global stylesheets or loops purges every cached page and starts a preload, because Etch’s styles are shared sitewide rather than scoped to one page.

Breakdanceintegrated

  • Lazy Render per element. A “Warp Performance” section appears in every element’s settings.
  • Template, header, footer and block saves trigger a full purge and preload.

Oxygen Builderintegrated

  • Lazy Render per component, in the component’s Plus (+) tab.
  • Template saves trigger a full purge and preload.

Diviintegrated

  • Lazy Render per module, under Advanced → Custom CSS on every module.
  • Divi library saves — layouts, headers, footers, body templates, theme options and code snippets — trigger a full purge and preload.

Gutenberg (Block Editor)integrated

  • Lazy Render per block, through Warp’s block sidebar panel.
  • Reusable blocks, navigation blocks, site templates, template parts and global styles trigger a full purge and preload when saved.

Beaver Builderauto-purge

Saving a Beaver Builder template purges all pages and starts a preload. No per-element Lazy Render control.

Brizyauto-purge

Saving a Brizy layout or global block purges all pages and starts a preload. No per-element Lazy Render control.

Optimization Plugins

When Warp detects an optimization plugin that duplicates one of its features, it turns off the overlapping feature in that plugin whenever you save Warp’s settings. This prevents double-minification, double lazy loading and similar conflicts. Nothing needs configuring by hand.

Perfmattersintegrated

Warp disables only the Perfmatters features it is replacing. Anything Warp is not handling stays active in Perfmatters.

Warp feature enabledPerfmatters feature switched off
Defer JSDefer JavaScript
Delay JSDelay JavaScript
Remove Unused CSSRemove Unused CSS
Lazy Load ImagesLazy Loading & CSS Background Images
Add Missing DimensionsImage Dimensions
Preload Critical ImagesCritical Images
Lazy Load iFramesLazy Loading iFrames
Preload CacheInstant Page
Optimize Google FontsLocal Google Fonts
Font Display SwapDisplay Swap and Disable Google Fonts
CDNEnable CDN

Breeze (Cloudways)integrated

Warp resets every Breeze setting that would conflict — caching, minification, lazy loading, defer and delay, preload, CDN and heartbeat control. Breeze stays installed but sits passive while Warp handles optimization.

EWWW Image Optimizerintegrated

Warp turns off EWWW’s lazy loading, which Warp handles itself. EWWW keeps doing image compression and format conversion without conflict.

ShortPixel Adaptive Imagesintegrated

Warp turns off ShortPixel AI’s lazy loading and image dimension rewriting. ShortPixel keeps serving optimized formats through its CDN.

SiteGround Optimizerintegrated

Warp disables the overlapping SiteGround Optimizer settings — caching, HTML/CSS/JS optimization, async JavaScript, font optimization, image lazy loading and emoji removal. The plugin stays installed, but Warp takes over.

Images & Media Offloading

Warp’s image optimizer writes converted copies beside your originals inside the uploads folder. That only works when the uploads folder is actually on your server, so Warp detects offloaders and steps aside.

DetectedHow
WP Offload Mediaas3cf_get_attachment_url() or its classes
S3 UploadsS3_UPLOADS_BUCKET
WP-StatelesswpCloud\StatelessMedia\Bootstrap
Media CloudMEDIACLOUD_VERSION or its storage tool
Any remote uploads directoryThe uploads base path is not local

While an offloader is active, in-place compression of originals is disabled entirely, and individual attachments served from remote storage are skipped. Everything else in Warp carries on as normal.

If you use an offloader Warp does not know about, add it through the WARP_PERFORMANCE_image_optimizer_offloaders filter. See the Hooks & Filters Reference.

Hosting Providers

Warp coordinates its purges with the server-level cache of these hosts. Purging in Warp clears the host’s cache at the same time.

Kinstaintegrated

A full cache purge in Warp also clears Kinsta’s edge cache. Detected automatically through the KINSTA_CACHE_ZONE environment variable.

WP Engineintegrated

A full purge clears both WP Engine’s Memcached object cache and its Varnish cache. Detected through the WpeCommon class.

Cloudwaysintegrated

A full purge fires breeze_clear_all_cache, clearing the Breeze/Varnish layer. Detected when the Breeze plugin is active.

Rocket.netintegrated

A full purge fires rocketnet_purge_cache to clear Rocket.net’s server-level cache. Detected through the WP_Rocket_Net_Common class.

Web Servers & Cache Mode

LiteSpeed and OpenLiteSpeedintegrated

Under Cache → Cache Mode you can choose:

  • Auto (recommended) — Warp uses the server’s own cache on LiteSpeed, and its file cache everywhere else.
  • File-based — always use Warp’s file cache. Choose this if your host runs OpenLiteSpeed, or if pages stay stale.
  • Server-native (LiteSpeed) — always use the server’s cache.

Warp purges the server cache after each optimization, so an optimized page appears without waiting for its cache entry to expire. Do not run the LiteSpeed Cache plugin alongside Warp; use Server-native mode instead.

Nginxmanual config

Nginx cannot read .htaccess, so Warp generates a configuration block for you under Cache → Nginx. Paste it into your server config and reload nginx. The block encodes your current settings, so Warp warns you and asks you to paste an updated block whenever a setting that affects it changes.

Apacheintegrated

Warp writes and maintains its own .htaccess block. It is removed again when the plugin is deactivated.

Varnishintegrated

Detected when the request carries both an X-Varnish and an X-Application header, and the application is not set to bypass. Purging one URL sends a URLPURGE request to the local Varnish instance at 127.0.0.1; purging all pages sends a PURGE.

Nginx Helperintegrated

When the Nginx Helper plugin is active, Warp calls its purge methods whenever the page cache is cleared, keeping the Nginx FastCGI cache in sync.

CDN

Cloudflareneeds credentials

Configure under CDN → Cloudflare with an API Token and Zone ID.

  • Cloudflare’s cache is purged whenever Warp’s local cache is purged. Editorial purges — publishing, updating a post, the dashboard purge buttons — jump ahead of routine background purges, so an edit is never stuck behind a preload crawl.
  • Warp can create and manage the Cloudflare cache rules that let HTML be cached at the edge, and verifies they are still in place rather than assuming.
  • An optional “Cache Regardless of Query String” rule ignores tracking parameters at the edge.
  • Rules are tied to the site that created them. A staging site sharing a zone will never adopt or delete the live site’s rules.
  • If your domain changes, Warp notices and re-applies the rules.

Use an API Token, not a Global API Key, and give it permission to edit cache rules. Warp’s connection test reports whether the token can actually manage rules, not just whether the zone is reachable.

Cloudflare APOintegrated

If the Cloudflare APO plugin is active and APO is on for your zone, Warp syncs its purges with APO, so purging a URL or the whole cache clears the APO copy at the same time.

Bunny CDNneeds credentials

Configure your API key and Pull Zone ID under CDN → Bunny. The pull zone is purged whenever Warp’s cache is purged, with pages that have just finished preloading given priority. A URL that repeatedly fails to purge is dropped after five attempts and logged once, rather than being retried forever.

Object Cache (Redis)

Warp can install its own Redis object cache drop-in, with no wp-config.php editing. It includes a connection tester, live hit-rate and memory figures, and encrypted password storage.

If an object-cache.php from another plugin is already present, Warp leaves it alone and tells you so. Remove the other drop-in first if you want Warp to manage it.

Translation & Multilingual

All four work the same way: when Warp auto-purges a URL, it expands the operation to cover every language version of that URL. No configuration needed.

WPMLintegrated

Warp reads the active WPML languages and purges every translated version of a page together with the original.

Polylangintegrated

Auto-purge is expanded through pll_get_post_translations() and pll_get_term_translations() to cover translated posts and taxonomy archives.

TranslatePressintegrated

Warp uses TranslatePress’s URL converter to build the translated URLs for each language and purges them together. The cache file path is also adjusted so each language keeps its own cache file.

WeGlotintegrated

The cache file path is adjusted for the current WeGlot language, so each language version has its own cache file, and auto-purge covers every destination language.

Themes

Divi (Elegant Themes)integrated

See Page Builders → Divi above.

BuddyBossintegrated

  • REST API access. BuddyBoss restricts the REST API by default; Warp adds its own endpoints to the exclusion list so the dashboard works.
  • Minification conflict resolved. BuddyBoss’s built-in CSS/JS minification is switched off to avoid double-minification.

Other Plugins

Advanced Custom Fields (ACF)integrated

Saving a post through ACF purges and preloads that post’s page. Saving an ACF Options Page purges every cached page and starts a full preload, because options data usually affects the whole site.

PrettyLinksintegrated

Pretty link redirect URLs are excluded from caching, because they need to run their tracking and redirect logic on every visit.

AI Assistants (MCP)

Warp exposes an MCP endpoint so Claude, ChatGPT, the WordPress AI Client and other MCP-compatible assistants can read cache status, Core Web Vitals and optimization settings. Requires WordPress 6.9 or newer and an Application Password over HTTPS. Write access is off by default and opt-in; credentials, access roles and code injection settings are never exposed.

Quick Reference

Plugin / ServiceCategoryStatusAction needed
WooCommerceE-CommerceIntegratedNone
WCML (Multi-Currency)E-CommerceIntegratedNone
ElementorPage BuilderIntegrated + Lazy RenderNone
Bricks BuilderPage BuilderIntegratedNone
EtchPage BuilderIntegratedNone
BreakdancePage BuilderIntegrated + Lazy RenderNone
Oxygen BuilderPage BuilderIntegrated + Lazy RenderNone
DiviPage Builder / ThemeIntegrated + Lazy RenderNone
GutenbergPage BuilderIntegrated + Lazy RenderNone
Beaver BuilderPage BuilderAuto-purgeNone
BrizyPage BuilderAuto-purgeNone
PerfmattersOptimizationIntegratedNone
BreezeOptimizationIntegratedNone
EWWW Image OptimizerOptimizationIntegratedNone
ShortPixel Adaptive ImagesOptimizationIntegratedNone
SiteGround OptimizerOptimizationIntegratedNone
WP Offload Media / S3 Uploads / WP-Stateless / Media CloudMedia offloadDetected, optimizer steps asideNone
KinstaHostingIntegratedNone
WP EngineHostingIntegratedNone
CloudwaysHostingIntegratedNone
Rocket.netHostingIntegratedNone
LiteSpeed / OpenLiteSpeedWeb serverIntegratedCheck Cache Mode
NginxWeb serverConfig block providedPaste and reload
ApacheWeb serverIntegratedNone
VarnishServer cacheIntegratedNone
Nginx HelperServer cacheIntegratedNone
RedisObject cacheNative drop-inEnter connection details
CloudflareCDNNativeEnter API credentials
Cloudflare APOCDNIntegratedNone
Bunny CDNCDNNativeEnter API credentials
WPMLTranslationIntegratedNone
PolylangTranslationIntegratedNone
TranslatePressTranslationIntegratedNone
WeGlotTranslationIntegratedNone
BuddyBossThemeIntegratedNone
Advanced Custom FieldsOtherIntegratedNone
PrettyLinksOtherIntegratedNone

Saurabh Guttedar

Saurabh Guttedar is the founder of Warp Performance, a technology entrepreneur, software engineer, and systems architect with extensive experience building and optimizing high-traffic digital platforms. His work spans WordPress, cloud infrastructure, caching, performance engineering, and scalable web systems. At Warp Performance, he is focused on making advanced website optimization faster, more intelligent, and accessible to businesses and developers.

View profile
[fluent_comments]