W3 Total Cache

W3 Total Cache

Search Engine (SEO) & Performance Optimization (WPO) via caching. Integrated caching: CDN, Page, Minify, Object, Fragment, Database support.
Rating:
4.4
star-rating-1star-rating-2star-rating-3star-rating-4star-rating-5
Active Installations:
1000000+
Last Updated:
Jun 18, 2025
WordPress Version:
5.3 or higher
Tested up to:
6.8.1

Improved SEO and User Experience

Boost your website's performance and reduce load times with W3 Total Cache, improving your site's SEO rankings and providing a better user experience.

Lightning Fast Loading

Experience at least 10x improvement in site performance and reduced load times with W3TC's advanced caching and minification capabilities.

10x Faster Site Performance

Experience at least a 10x improvement in overall site performance, achieving Grade A in WebPagetest and significant Google PageSpeed improvements when fully configured with W3 Total Cache.

Increased Conversion Rates

Enhance your site's performance and see improved conversion rates. W3 Total Cache's site performance optimization can have a positive impact on your site's rank on Google, leading to more traffic and conversions.

2.8.10

  • Fix: Exception handling on activation
  • Fix: wp_resource_hint handling for arrays
  • Enhancement: Added X-W3TC-CDN header

2.8.9

  • Fix: AWS S3 test
  • Fix: Gravity Forms submissions
  • Fix: Windows: Configuration import
  • Fix: Redis: Fix PHP 8 warning for incrBy value not being an integer
  • Fix: DbCache Cluster: Check for mysqli_result before using the object
  • Fix: PHP 8 warnings
  • Fix: Typos on settings pages

2.8.8

  • Fix: Usage Statistics JavaScript error
  • Fix: Regex matching for Cookie Cache Groups
  • Fix: Image Service: Error when get_current_screen() is run before admin_init
  • Fix: _load_textdomain_just_in_time timing issue for WP-CLI and the Setup Guide
  • Fix: “DOMDocument::loadHTML(): ID already defined in Entity” errors
  • Fix: Cloudflare: Saving settings with a value of 0
  • Update: Removed StackPath, Limelight, and Highwinds CDNs due to end of service

2.8.7

  • Fix: Exit survey email field submission
  • Fix: Setup Guide analytics
  • Update: Allow deleting plugin data when skipping the exit survey on deactivation
  • Update: aws/aws-php-sns-message-validator (1.9.0 => 1.9.1)

2.8.6

  • Fix: Error deactivating when selected to delete plugin data
  • Fix: WP-CLI: Enable Object Cache depending on settings
  • Fix: Delete all plugin WordPress Options if selected on deactivation
  • Enhancement: Automatically disable Object Cache after plugin update if set to Disk and display a notice
  • Enhancement: WP-CLI: Added settings to enable Object and DB Cache for WP-CLI
  • Enhancement: Added an email field to the exit survey for requesting help
  • Enhancement: Added a popup modal to accept the risk when enabling Object Cache using Disk

2.8.5

  • Fix: CDN: Amazon S3 long hostname for default region
  • Fix: WP-CLI: Error running “wp w3tc alwayscached_*” commands
  • Fix: WP-CLI: Remove HTML in output
  • Enhancement: Simplified license messsaging

2.8.4

  • Fix: Deactivation modal JS error

2.8.3

  • Fix: HTTP API calls for checking required files
  • Fix: script-src-elem and style-src-attr security headers
  • Fix: Handle multiple line srcset attributes for CDN URL replacement
  • Fix: Fragment Cache: Fixed logic for navigation links
  • Fix: Check for modified advanced-cache.php dropin/addin file
  • Fix: Log directory name is made unique
  • Enhancement: Added an exit survey with option to delete plugin data on deactivation
  • Enhancement: Fragment Cache: Added notices for configuration
  • Enhancement: Use admin-ajax for settings help tab content links
  • Update: Handle XML MIME types in cache by default
  • Update: Added “immutable” options for cache-control headers
  • Update: Added WP-CLI command descriptions
  • Update: CDN widget notices for BunnyCDN
  • Update: WebP Converter widget notice

2.8.2

  • Fix: Added additional user capability checks
  • Fix: Ensure Object Cache garbage collection (disk) WP Cron event is scheduled
  • Fix: Added additional checks when loading the Object Cache dropin
  • Fix: Disable Database, Object, and Fragment Cache when using WP-CLI
  • Fix: Object Cache debug logging
  • Fix: FAQ help tabs
  • Update: Coding standards

= 2.8.1=
* Fix: Ensure WP Cron events get scheduled when using the Setup Guide wizard and on upgrade
* Fix: Undefined variable when the Object Cache purge debug log is enabled
* Update: Added warnings in the Setup Guide and the General Settings page when using Disk for Database and Object Caches
* Update: Skip Database and Object caches when using WP-CLI

2.8.0

  • Feature: Always Cached extension
  • Feature: Purge caches on WP-Cron schedules
  • Fix: Cloudflare: Some settings were not saved correctly
  • Fix: Check and update file mode/permissions for cache files
  • Fix: Issue prompting for credentials for some non-direct filesystem types
  • Enhancement: Added an admin notice if WP-Cron is not functioning correctly
  • Enhancement: Added Browser Cache filters
  • Update: Upgraded JSMin library to 2.4.3
  • Update: Added Premium Services tabs

2.7.7

  • Update: CDN: Added support for Microsoft Azure EntraID Managed identities

2.7.6

  • Fix: Improved cache flushing on actions/updates
  • Fix: Google PageSpeed authorization
  • Fix: Remove Fragment Cache link if extension is disabled
  • Fix: License status fix
  • Fix: Statistics PHP warning when some data is stale
  • Fix: API improvement for non-200 responses
  • Enhancement: Added notices when choosing Disk for object and database cache engines
  • Update: Object cache improvements
  • Update: Allow WPML extension activation for TranslatePress
  • Update: Added more information for selections in the setup guide wizard
  • Update: Updated cache header directive choices (no-cache/no-store)
  • Update: Nginx configuration examples

2.7.5

  • Feature: Added dismissible notifications
  • Fix: PHP error in Page Cache when deleting media
  • Fix: PHP warning in Page Cache when modifying an attachment
  • Update: Added additional default query strings for page cache exemptions
  • Update: Removed obsolete Google PageSpeed metrics
  • Update: Condensed Google PageSpeed proof block format for certain settings/features
  • Update: Added missing Google PageSpeed score block for PageCache Lazy Loading Google Maps setting on General Settings page

2.7.4

  • Fix: WP-CLI get option output for array type
  • Fix: Remove CSS/JS URL matching
  • Fix: Nginx rules for feature and permission policies
  • Fix: Redis connect port for unix sockets error
  • Update: Newsletter in footer is now a link to a working form
  • Update: Added JSON type for WP-CLI get/set option
  • Update: Added config export for WP-CLI
  • Update: Added content matching option for Remove CSS/JS individual entries
  • Update: Updated Google PageSpeed score block appearance for cleaner UI
  • Update: Added Google PageSpeed score block for PageCache Lazy Loading Google Maps setting
  • Update: Added Google PageSpeed score block for Minify Eliminate Render Blocking CSS option

2.7.3

  • Fix: Page Cache: File Cleaner now uses the correct expiration setting
  • Fix: PHP 8.1 warnings for Redis connect
  • Fix: Google ChartJS error
  • Update: Bumped PHP minimum version to 7.2.5; added support for up to PHP 8.3
  • Update: AWS SDK PHP dependency updated to 3.314.2
  • Update: Microsoft Azure Storage SDK PHP dependency updated to 1.5.4 (blob) and 1.5.2 (common)
  • Update: Several other PHP and NodeJS dependencies updated
  • Update: Made improvements to the Remove CSS/JS feature
  • Update: Removed the newsletter signup popup and added it in the footer
  • Update: Added use-case proof and links to settings pages
  • Update: Changed CDN default to none and updated the StackPath EOL notice

2.7.2

  • Fix: Page Cache cleanup purging all if browsercache.html.lifetime > W3TC_CACHE_FILE_EXPIRE_MAX
  • Fix: Page Cache primer: Ignore sitemap XML comments
  • Fix: Page Cache primer: Preload cache for custom post types
  • Fix: Page Cache primer: Add an option to prime cache after updating a post/page/CPT
  • Fix: Redis test logic
  • Fix: Cloudflare extension: Setting values via API
  • Fix: Amazon SNS message validation
  • Fix: Handle XML setting being saved properly
  • Update: Add more options to the Remove CSS/JS feature
  • Update: Add an option for Amazon CloudFront default region in distribution hostname
  • Update: Add information about feature impact on PageSpeed
  • Update: Reworked the Page Cache Preload settings UI

2.7.1

  • Fix: Page Cache: Prefer Brotli over Gzip
  • Fix: Page Cache: Purge sitemaps on post creation/edit/trash/delete
  • Fix: Page Cache: Processed content filter
  • Fix: Minify URL to filename filter mapping
  • Update: Added Bunny CDN partner information
  • Update: Added filters for Apache rules and Page Cache postfix

2.7.0

  • Feature: Performance Dashboard update
  • Feature: Remove unused CSS/JS
  • Fix: Nginx feature and permission policy header syntax
  • Fix: Memcache install check
  • Fix: CloudFront purge button
  • Fix: Uncaught type error on the install page
  • Fix: Page mapping data
  • Fix: Add missing id for a save settings button
  • Fix: Extension counts
  • Fix: PHP 8.2 deprecation warnings for dynamic class property assignments
  • Fix: Do not autoload WP option for PageSpeed data
  • Fix: Cache groups: Fix spacing in values for htaccess syntax
  • Fix: Refactor Minify cache key mapping to have shorter keys and separate storage
  • Fix: Minify statistics output and PHP warnings
  • Fix: Feature Showcase: New feature version numbers
  • Fix: Lazy Loading URL pattern match
  • Update: Upgrade modal/popup
  • Update: Added “Learn more” links

2.6.1

  • Fix: WebP Converter extension activation
  • Fix: Media Library upload may fail when using Bunny CDN
  • Fix: Cloudflare API error when updating certain settings
  • Fix: Lazy Loading issue with the Delay Scripts feature enabled
  • Update: Allow custom hostname changes for Bunny CDN

2.6.0

  • Feature: Added support for Bunny.Net CDN
  • Feature: Preload requests (Pro)
  • Fix: Error when changing CDN cookie domain setting
  • Fix: Admin notice when flushing cache from the admin bar
  • Fix: Error in some Minify cache file operations
  • Fix: PHP 8 compatibility
  • Update: Delay scripts UI changes

2.5.0

  • Feature: Added Delay Scripts (Pro)
  • Fix: Several PHP 8 warnings
  • Fix: Fragment Cache extension PHP warnings when no engine was selected
  • Fix: Fragment Cache engine selection disabled for pro license under certain conditions
  • Fix: Added Database Cluster compatibility for older db.php files
  • Fix: Fixed one PageSpeed tool metric not outputting data and adjusted a few labels
  • Fix: Multiple anchor links for PageSpeed block on General Settings page
  • Fix: Cache Groups validation on save
  • Fix: Cache Groups delete button not working for added groups
  • Update: Renamed Image Service feature to WebP Converter
  • Update: Added WebP Converter block to General Settings page along with link to navigation bar
  • Update: StackPath CDN prices (Service ending November 22, 2023 and will be replaced by Bunny CDN in future update)

2.4.1

  • Fix: Add a fallback for the older version of wp-content/db.php

2.4.0

  • Feature: Added filter “w3tc_config_item_objectcache.enabled” to allow for disabling W3TC object cache
  • Fix: Auto-apply W3TC Pro license after purchase via in-plugin purchase/upgrade buttons
  • Fix: PHP 8 warnings for Page and Fragment caches
  • Fix: Replaced delete_blog deprecated hook with wp_uninitialize_site and wp_update_site
  • Fix: Database Cluster configuration file save issue
  • Fix: Fragment cache will now be disabled for non-pro users instead of being only disabled on the front-end
  • Fix: Premium services widget list is now synced with the support page
  • Update: User interface updated for cleaner appearance and easier navigation and control
  • Update: Added support for get/set/add/delete wp_xxx_multiple methods to Object cache

2.3.3

  • Fix: Fragment Cache: Fatal error when displaying registered groups
  • Fix: PHP 8 deprecation warnings in the SNS Message Bus and NuSOAP libraries
  • Fix: Broken nonce for renewal form
  • Fix: Page Cache: Moved hardcoded query string exemptions to the settings page
  • Update: Redis and Memcached host/IP/domain configuration examples

2.3.2

  • Fix: Correct interpolation of a symlinked cache directory
  • Fix: Memcached test using SASL authentication
  • Fix: Multi-site authorization request returning to incorrect URL

2.3.1

  • Fix: PHP 8 compatibility: Invalid return type if Browser Cache is disabled
  • Fix: Added AWS SNS message classes (aws/aws-php-sns-message-validator)
  • Fix: PageSpeed service: messages and escaping
  • Fix: Image Service meta query handling
  • Update: Dependency version updates
  • Update: Content-Security-Policy (CSP) and Content-Security-Policy-Report-Only (CSPRO) header field configuration

2.3.0

  • Feature: PageSpeed Insights reports and performance page widget
  • Feature: Added basic OpenLiteSpeed support
  • Feature: Add Permissions-Policy to mirror Feature-Policy directives
  • Fix: PHP 8.2 compatibility
  • Fix: GuzzleHttp 7 conflict with Azure
  • Fix: Allow object cache updates when using WP-CLI
  • Fix: Added missing Page Cache configuration “host” value
  • Fix: Missing on_comment_status action callback
  • Fix: Flush cache on attachment update
  • Fix: Varnish flush for posts
  • Update: Improved comment status logic for flushing database and object caches
  • Update: Adjusted FTP form style
  • Update: Removed deprecated MaxCDN and NetDNA components and added a notice if one was used
  • Update: Removed deprecated FeedBurner

2.2.12

  • Fix: Comment status change error
  • Fix: Varnish flush post arguments

2.2.11

  • Fix: Error when flushing page cache after an attachment update

2.2.10

  • Fix: Optimized and fixed object cache flushing
  • Fix: Scheduled post page cache flushing
  • Fix: Admin bar flush cache for current page with disabled purge policy
  • Fix: Loop when disabling Minify HTTP/2 push setting
  • Fix: Extension admin notice missing links
  • Update: Removed custom translation files

2.2.9

  • Fix: Reset our textdomain for translations

2.2.8

  • Fix: Escape output in compatibility checker, minify, and New Relic pages
  • Fix: Admin notice buttons on non-plugin pages
  • Fix: Namespace on exception type in a minify class
  • Fix: Translation issues due to hooks and typos
  • Fix: Broken JavaScript in admin_print_scripts calls when language is not English
  • Fix: Deprecated warnings in JS and CSS minify
  • Update: Translation files

2.2.7

  • Fix: Updated database cache connection class to avoid deprecated warnings in WordPress 6.1
  • Fix: Redis: Fixed handling of retry interval and timeout options for usage statistics
  • Enhancement: Redis: Added TLS/SSL certificate verification option
  • Enhancement: Page cache: Added query string exemptions

2.2.6

  • Fix: Error clearing all cache when using CloudFront full CDN in Pro

2.2.5

  • Fix: Revert WooCommerce Variation Image Gallery plugin CDN filter
  • Fix: DB cache syntax error in PHP 5.6
  • Fix: Added missing space to S3 CDN bucket label
  • Fix: JS error for CloudFront CDN related check on non-W3TC pages
  • Fix: Page cache unpack warning for empty/malformed files
  • Enhancement: Image Service pre_get_posts anonymous action now hooked (w3tc_modify_query_obj)
  • Enhancement: Image Service ajax_query_attachments_args anonymous action now hooked (w3tc_filter_ajax_args)

2.2.4

  • Fix: Extensions URL in settings
  • Fix: Redis undefined array key warnings
  • Fix: Redis connect issue based on phpredis version
  • Fix: Sanitization of licensing messages
  • Fix: DB cache error in Ajax
  • Fix: Call to undefined function in DB cache query class
  • Fix: PHP 8 compatibility: join
  • Fix: WooCommerce Variation Image Gallery plugin CDN filter
  • Enhancement: Add setting for AWS S3 public objects in ACL
  • Enhancement: Check if post is empty before cache flush
  • Enhancement: Add max lifetime setting for non-disk page cache
  • Enhancement: Add notice when selecting CDN using CloudFront
  • Update: CSS Tidy 1.7.3 => 2.0.1
  • Update: Add sns-message-validator
  • Security: Ensure cache writes in cache folders

2.2.3

  • Fix: Redis Cache: Removed exception on warnings
  • Fix: Compatibility check for WP_CACHE
  • Fix: Flush all cache cache except Cloudflare button
  • Fix: License terms update notice escaping
  • Fix: Feature Showcase: Image Service activate button
  • Security: Updated guzzlehttp/guzzle to 6.5.8

2.2.2

  • Security: PHPCS and WPCS updates
  • Security: Updated guzzlehttp/guzzle to 6.5.6
  • Security: Updated guzzlehttp/psr7 to 1.8.5
  • Fix: Cloudflare flush all cache
  • Fix: Access log test
  • Fix: Better handling for PHP 5.6
  • Fix: Convert Redis warnings to exceptions
  • Fix: WordPress 5.5 image lazy loading
  • Fix: Infinite loop when using database cluster configuration
  • Fix: Database cluster logic
  • Fix: FTP credentials form
  • Fix: Preview deploy button
  • Fix: Image Service links in multisite network admin
  • Fix: Enable Image Service settings changes in multisite blog/sub sites
  • Enhancement: Updated Cloudflare settings to allow a global API key or token
  • Enhancement: Added Cloudflare CDN public objects option to settings
  • Enhancement: Added timeout settings for Redis
  • Enhancement: Added TLS/SSL certificate verification option for Redis
  • Enhancement: Added Image Service visibility option
  • Enhancement: Updated Image Service limit notification
  • Enhancement: Better handling of trailing slash URLs
  • Update: Adjusted lightbox for accessibility
  • Update: Removed deprecated opcache flush

2.2.1

  • Fix: Cloudflare: Removed use of the retired ip_lkup V1 endpoint
  • Fix: Prevent error in some environments using non-direct filesystems
  • Fix: Added better checking for some filesystem actions
  • Fix: AWS CloudFront: Reverted async change for cache invalidation to honor promises
  • Enhancement: Added option to exclude minified JS files from being processed by Rocket Loader
  • Enhancement: Improved handling of Image Service rate-limiting and error messages

2.2.0

  • Feature: Image Service extension: WebP conversion options

2.1.9

  • Fix: Cloudflare Dashboard Widget: Updated to use GraphQL
  • Fix: Cloudflare Dashboard Widget: Use WordPress timezone
  • Fix: CDN: Execute purge only if hosting is enabled, to prevent unneeded delays
  • Fix: Published/modified custom posts not clearing the archive cache(s)
  • Fix: Native WordPress sitemap caching
  • Fix: Extra MIME groups other than controlled by settings were added to rules
  • Fix: Usage Statistics: Not functioning when object cache is set to Redis
  • Fix: AMP Extension: Prevent popup admin bar for endpoints
  • Fix: Setup Guide Wizard: CSS for long translations
  • Fix: Opcache Settings: Validate timestamp indicator checkbox
  • Update: Remove robots.txt cache toggle setting
  • Enhancement: Impove 404 detection
  • Enhancement: Improved compatibility check indicators
  • Enhancement: AWS CloudFront: Faster cache invalidation using async

2.1.8

  • Fix: Corrected handling of robots.txt (file and filter)

2.1.7

  • Fix: Corrected relative paths used in the JS minify YUI Compressor
  • Fix: Disallow crawling of cache directory
  • Fix: Responsive display for the dashboard
  • Enhancement: Added lazy load threshold setting
  • Enhancement: Added feature policy security headers to settings

2.1.6

  • Fix: JS minify issue with template literal backticks
  • Fix: Do not redirect when using WP-CLI
  • Fix: Missing whitespace in Memcached Nginx configuration
  • Fix: Setting for CDN over passive FTP
  • Fix: Updated CDN Minify regex
  • Fix: Added missing text domains and fixed translations
  • Enhancement: Allow default AWS credentials provider
  • Enhancement: Added error logging when minification base URL is not found

2.1.5

  • Fix: Sanitize extension argument

2.1.4

  • Fix: Use Memcached server from config for Nginx rules instead of localhost
  • Fix: Allow more characters in CDN hostname sanitization
  • Fix: Added missing textdomains for Browser Cache settings
  • Fix: Avoid a possible PHP warning in LazyLoad mutator
  • Enhancement: Added a filter w3tc_cdn_cf_flush_all_uris for CloudFront purging

2.1.3

  • Fix: Authenticated Persistent XSS & XFS in CDN admin page
  • Update: AWS library version 3.183.0
  • Update: Minify: Include theme template files using page_* filenames

2.1.2

  • Fix: Skip removing spaces around “
  • ” tags in HTML Minify
  • Fix: Updated admin URL logic for multisite installations
  • Fix: TransparentCDN purge URL validation
  • Fix: Added an option to use ABSPATH as the document root for Minify
  • Fix: Database cache debug message
  • Update: Added regions for AWS S3 (af-south-1, cn-north-1, cn-northwest-1, eu-south-1)
  • Update: Added MIME types AVIF and AVIFS for Browser Cache rules
  • Update: Enhanced “get_pagenum_link” filter
  • Update: Removed “comment” from the non-persistent object cache group

2.1.1

  • Fix: Move Minify library to a namespace to avoid conflicts with other plugins
  • Fix: Check for AWS before loading functions
  • Fix: Update Minify ClosureCompiler base URL; use HTTPS
  • Fix: Corrected getting the network siteurl
  • Fix: Prevent PHP warning in CurlFactory
  • Update: Added information links to general minify options
  • Update: Added video/ogg support for browser caching

2.1.0

  • Feature: Added a Feature Showcase to highlight new and existing features
  • Update: Consolidated cache groups settings pages
  • Update: Replaced deprecated jQuery method for WordPress 5.6
  • Fix: PHP warnings for sprintf placeholders in PHP 8
  • Fix: PHP deprecated warnings in PHP 8
  • Fix: Browser Cache Quick Reference Chart link
  • Fix: Bad nonce in help
  • Fix: Google Drive CDN JavaScript

2.0.1

  • Fix: Corrected redirection logic for the new Setup Guide
  • Fix: Fixed JavaScript w3tc_ga error

2.0.0

  • Feature: Added the Setup Guide wizard for onboarding
  • Update: Updated jQuery compatibility and methods deprecated in WordPress 5.6
  • Fix: Browser Cache: Fixed ExpiresByType code; changed from modified time to client access time

0.15.2

  • Fix: Minify: Do not remove quotes around meta tags
  • Fix: Minify: Removal of spaces in calc function was breaking CSS
  • Fix: Browser Cache: Query string was not added to prevent caching after setting changes
  • Fix: Avoid warning when sending an empty URL for purging
  • Update: Added a filter for minified JavaScript content
  • Update: Minify: Added options for minify only got both JS and CSS in auto mode

0.15.1

  • Fix: Fixed Memcached flush logic
  • Fix: Remove disk enhanced rewrites when disabling page cache
  • Fix: Better handle conflicts on activation

0.15.0

  • Feature: Added TransparentCDN full-site delivery option
  • Fix: Update settings on activation in a changed environment
  • Fix: Fixed a compatibility check for Apache when PHP is running as CGI
  • Fix: Always set HSTS headers in Apache; not only for 2xx HTTP codes
  • Fix: Implemented anatomic incrementing of key version in Memcache(d)
  • Update: Allow filtering of w3tc_minify_url_for_files Minify URL for files

0.14.4

  • Fix: Cleanup widget and postbox display for WordPress 5.5
  • Fix: Update to PageSpeed API v5, show webvitals metrics
  • Fix: Console error when adminbar is hidden and PageSpeed module is active
  • Fix: Stats view JS issue
  • Fix: Deprecated jQuery warnings
  • Fix: Require files for request_filesystem_credentials() call
  • Added option to disable jquery-migrate on the front-end. Fixed #172 master (#240)

0.14.3

  • Fix: Take “Accepted Query Strings” into account when “Cache query strings” enabled
  • Fixed typo in variable for lazy loading
  • Update: Add lazy load Google Maps reference to the general settings page
  • Update: Support background-image: together with background: for lazy loading

0.14.2

  • Fixed WP-CLI redirect issue in multisite
  • Fix: Avoid PREG_JIT_STACKLIMIT_ERROR in minify
  • Fix: Prevent empty needle PHP warning
  • Update: Allow to specify URIs with a query string in Additional Pages

0.14.1

  • Fixed CSS minify URL rewrite logic that affected some lazy loading and CSS URL addresses using protocols

0.14.0

  • Added lazy loading for Google Maps
  • Added a filter w3tc_minify_css_content for minified contents
  • Fixed a minify regex issue in non-Unicode websites
  • Fixed a PHP notice in WPMU: accessing array offset on null
  • Fixed a minify issue where embedded CSS URL fragments were converted incorrectly
  • i18n improvement
  • Changed default to disabled for wp-admin requests in the object cache

0.13.3

  • Fixed HTML minification of img elements containing embedded SVG strings
  • Removed an identifying value for GDPR

0.13.2

  • Fix: Dont store content of HEAD requests
  • Updated informational URL on page cache static page comments

0.13.1

  • Fixed php warnings in PgCache_ContentGrabber.php

0.13.0

  • Added new Pro feature, Debug – Purge Stack Trace
  • Added “Feature Policy” security header
  • Removed deprecated get_magic_quotes_gpc()
  • Improved AMP Extension by ignoring value of amp querystring marker in request if passed without value in config
  • Improved lazyload by not processing elements with skip-lazy class or data-skip-lazy attribute
  • Fixed caching of query-string normalization redirects, no longer cached when cache key is normalized by accept querystring arguments, caused redirect loop

0.12.0

  • Added querystring based URL structures for AMP pages
  • Added filter of minify options
  • Added lazyload picture tag support
  • Removed footer link “Support Us” option
  • Improved wp_die handling
  • Improved lazyload handling of content in script tags
  • Improved lazyload handling of feeds
  • Improved printing tags coming from feeds
  • Improved handling of modified posts before wp_rewrite initialized
  • Nginx rules changed a lot to avoid “location” block conflicts. That change may cause problems on some systems using non-default WordPress rules – keep a backup of your original rules
  • Improved handling of .htaccess files in regard to EOF
  • Fixed Varnish purging
  • Fixed html minification of data tags equaling 0

0.11.0

  • Added recommendation for BoldGrid’s Total Upkeep plugin
  • Added new lazy loading feature
  • Removed New Relic extension by default for new installations
  • Updated usage of html minification and quote removal
  • Improved memcached config and added optional binary protocol setting
  • Improved process of renewing expired licenses
  • Improved page cache purging
  • Improved FAQ link by opening in new window
  • Improved detection of detect_post_id
  • Improved REST caching in relation to cache headers like X-WP-*
  • Improved Vary User-Agent header usage
  • Improved various features with AMP pages and HTTP2
  • Improved redis connection string to allow for tls://host:port format
  • Fixed file headers for CloudFront S3 CDN
  • Fixed fatal error on with flush / SNS
  • Fixed comments with URLs within minify debug mode
  • Fixed ObjectCache statistics within footer
  • Fixed temporary hotfix with wp_die and regular output
  • Fixed fragment cache header link
  • Fixed flushing of /feed and /feed/ cache
  • Fixed js error in widget
  • Fixed fatal cache flush error caused by empty $wp_rewrite
  • Fixed path for file_generic REST caching on non-default port
  • Fixed test minify button with Closure Compiler engine

0.10.2

  • Fixed compatibility with wpdb::prepare in WordPress 5.3

0.10.1

  • Fixed slowdown in memcached engine
  • Fixed Purge Cache menu links so they flush current blog in WPMU
  • Fixed error during upgrade, “Call to undefined method W3TCUtil_Content::is_database_error”
  • Updated Redis cache engine to avoid “Function Redis::delete() is deprecated” warning

0.10.0

  • Improved Statistics component for pro users
  • Improved support for CloudFront distributions with multiple origins
  • Improved redirects by using safter wp_safe redirect
  • Improved .htaccess usage when pagecache does not require it
  • Improved protection of unexpected values in global variables
  • Added more Amazon S3 regions
  • Added support for memcached binary protocol when available
  • Added caching for WebP MIME type
  • Updated S3 bucket creation by settings CORS policy
  • Updated blogmap to allow urls with custom ports
  • Fixed usage of base url with minify
  • Fixed mixing content of sync & async scripts with minify

  • Fixed S3 + CloudFront urls when CNAMEs not used

0.9.7.5

  • Updated AWS library
  • Added support of set_sql_mode by dbcluster
  • Improved support for webserver running on non-default port with disk-enhanced
  • Improved menu icons
  • Fixed php warning when remote service cannot be loaded
  • Fixed php warnings on support page

0.9.7.4

  • Fixed PHP warning when Redis integration not configured correctly
  • Fixed 404 in multisite caused by subdirectory issue
  • Fixed object cache issue in multisite where object cache was cleared at wrong time
  • Fixed database cluster in WordPress 5.1
  • Fixed warning caused by user agent theme change used
  • Fixed minification in multisite when URLs were set to root-blog based url
  • Fixed undefined w3tc_ga issue
  • Improved purging of current page by using post_id instead of URL
  • Improved cache delivery of /feed URLs
  • Improved security on calls to opcache flush
  • Improved minification of files in environments running on non-default ports

0.9.7.3

  • Fixed caching of redirect responses based on empty response body
  • Improved compatibility with WordPress 5.1
  • Improved transports, unix: prefix not required
  • Improved minify html

0.9.7.2

  • Fixed fatal error during media file upload with CDN module active
  • Fixed removal of empty values, JSON encoded string in attribute, trailing quote at end of tag, and the handling of anchors in HTML minify
  • Fixed undefined index warning
  • Fixed fatal error when purging CDN using full site delivery

0.9.7.1

  • Fixed undefined variable notice
  • Fixed “No such file or directory” warning
  • Fixed writing to PHP error log rather than WordPress debug log
  • Fixed default referrer policy should be “no-referrer-when-downgrade”
  • Fixed php_flag error related to browser cache, using ini_set instead
  • Fixed Cloudflare IPv6 check undefined offset
  • Fixed Undefined constant WP_ROOT
  • Fixed frame-ancestors being overwritten by frame-src
  • Fixed missing semicolon in nginx configuration
  • Fixed HTTP/2 URLs handling for browser cache and CDN modules
  • Fixed display of CDN debug information
  • Fixed CSS Minification with Google Fonts when included via “Include external files/libraries” and non-latin character-sets are loaded
  • Fixed media query string not updating when all caches were purged
  • Fixed double slash with ABSPATH if file exists
  • Fixed setting max-age and expires header simultaneously
  • Fixed SASL detection for PECL Memcached
  • Fixed handling of manually entered objects to be purged on CDN
  • Fixed query string handling in Nginx
  • Improved error handling with Cloudfront
  • Improved page cache logging
  • Improved multi-tenant support for memory-based caching engines
  • Improved CSS minification
  • Improved purge behavior for changed media objects when using CDN
  • Improved compatibility with sitemap plugins
  • Added support for Memcached for Nginx
  • Added support for caching webm files
  • Added Brotli HTTP compression support
  • Added StackPath full site delivery support
  • Added wc_session to the list of ignored query stems for improved WooCommerce compatibility

0.9.7

  • Fixed minified files not being hosted by CDN when enabled if “host minified files” is disabled
  • Fixed warning thrown when purge all was selected (via nigrosimone)
  • Fixed undefined offset error in fragment cache
  • Fixed MaxCDN test button failure when debug mode is enabled
  • Fixed purging of feeds when cache feeds option is enabeld
  • Improved handling of errors when full site delivery isn’t set
  • Improved nginx.conf to support xml caching
  • Improved nginx.conf to support HSTS for static files
  • Improved minify’s handling of query strings
  • Improved database caching, frequent wp_options no longer flush posts or comments data
  • Improved Limelight Networks CDN integration
  • Improved FAQ, they’re now hosted in the GitHub public repository
  • Improved handling for /<![CDATA[/ in HTML minify engine
  • Imporved garbage collection for basic disk caching
  • Improved HSTS support (via Dave Welsh)
  • Improved reliabilty of …

垃圾中的垃圾

By jonasoress on June 25, 2025

安装后在数据库产生了一堆垃圾文件,卸载后还直接导致网站错误!流氓垃圾插件。

这么多好评应该是虚假评价吧!

垃圾插件!!!

千万别用!!!

Great help resolving a JS issue

By panoramicpathways on June 5, 2025

I got great and responsive help finding and fixing a JS minification issue with image enlargement functionality. This saved me a lot of time and helped to preserve the speed increases realized with the W3 Total Cache plug-in.

Supports a lot of caching methods

By w-sky on May 8, 2025

W3 Total Cache was the best choice for my site because it makes best use of the server capabilities by choosing the appropriate caching methods.

Best caching plugin I could find

By jaredatbrtc on May 6, 2025

Spent the last several weeks testing out every free caching plugin with a decent rating in an attempt to find one that has the best results "out of the box," and W3 Total Cache takes the cake. It is a little more complex to set up than others, but the level of control you do have - even in the free version - is wonderful. Enabling any minify settings caused me a significant decrease in speed, but the general speed increase without that option has still been substantial. My only real quibble is that once I installed this, the header banner images on each page of my site started loading in with a quick zoom in/out animation. Simple enough to fix with a manual application of a different, less visually obtrusive animation, but still strange and a difficult problem to track down setting-by-setting. But even then after enabling and disabling every available option, the only thing that fixed it was disabling the plugin altogether, but I can live with alternative image animations for now.

All in all, a pretty solid caching plugin. Do take the time to go through each setting while wiping the caches and reloading a test page to figure out which setting work best for you. It's definitely time-consuming, but totally worth it once you're dialed-in.

Completely crashed my site!

By markjames1234 on April 27, 2025

Made my entire site un-usable and I have had to spend hours tracing the error to this plugin, followed by ages having to remove it from all the nooks and crannies it had wormed its way into to make the site work again.

Very Efficient Plugin with Friendly Support

By Myron L Stewart (myronstewart) on April 2, 2025

When I first started using W3 Total Cache, I had my doubts. I initially thought the plugin was faulty because I tried to push every feature to the max, especially with Memcached, and ended up seeing some strange results. After doing some research and properly configuring Memcached, I was blown away by the performance gains. One of my sites went from serving pages in 0.7 to 1 second down to about 0.122 seconds. That’s a massive improvement—especially for a high-traffic site.

I’m not saying you shouldn’t buy a license—please do, especially if you’re not a techie nerd like me. The support team can help you configure everything properly for your setup. Once you understand how to use the plugin and set up your backend caching system, you’ll see just how powerful this tool really is. It’s an advanced plugin, but with proper setup or a little help from support, it becomes a game-changer.

Great support, great performance

By alexanderaltendorfer on March 17, 2025

We have this plugin installed on several high traffic websites, greatly increasing their performance. Customer support is also top notch and very fast.

How to deal with mobile page caching issues?

By zhanhongyuan on March 7, 2025

My website creates PC and mobile pages differently, and cached pages sometimes cause display anomalies between the two. How can I provide inconsistent caching for different devices?

Website unusable for weeks

By jos03 on February 28, 2025

After an (auto) update of this plugin using default settings, my disk suddenly flooded and website became unusable.

Fixes also don't work, since the disk is full (config therefore won't save, fix won't apply).

DO NOT USE THIS PLUGIN

Not able to deactivate. Fatal error

By ddayoverlordwebmaster on February 18, 2025

Not able to deactivate, App was causing a Fatal error. Had to remove it from the server.

Try other plugins too!

DB Cache Reloaded Fix

The fastest cache engine for WordPress, that produces cache of database queries with easy configuration. Compatible with WordPress 3.4

Try Demo More Details

Redis Object Cache

A persistent object cache backend powered by Redis®¹. Supports Predis, PhpRedis, Relay, replication, sentinels, clustering and WP-CLI.

Try Demo More Details

Performant Translations

Making internationalization/localization in WordPress faster than ever before.

Try Demo More Details
Author Site Author Site

Try W3 Total Cache With InstaWP

Contact Sales

Reach out to us to explore how InstaWP can benefit your business.