The fastest and most complete WordPress performance optimization plugin. Trusted by many popular blogs like: mashable.com, pearsonified.com, noupe.com, webdesignerdepot.com, freelanceswitch.com, briansolis.com, tutsplus.com, yoast.com, css3.info and others — W3 Total Cache improves the user experience of your blog by improving your server performance, caching every aspect of your site, reducing the download time of your theme and providing transparent content delivery network (CDN) integration.
Benefits:
- At least 10x improvement in site performance (when fully configured: Grade A in YSlow or great Google Page Speed Improvements)
- “Instant” second page views (browser caching after first page view)
- Reduced page load time: increased visitor time on site (visitors view more pages)
- Optimized progressive render (pages appear to load instantly)
- Improved web server performance (easily sustain high traffic spikes)
- Up to 80% Bandwidth savings via Minify and HTTP compression of HTML, CSS, JavaScript and RSS feeds
Features:
- Compatible with shared hosting, virtual private servers and dedicated servers / clusters
- Transparent content delivery network (CDN) integration with Media Library, theme files and WordPress itself
- Caching of (minified and compressed) pages and posts in memory or on disk
- Caching of (minified and compressed) CSS and JavaScript in memory, on disk or on CDN
- Caching of RSS (comments, page and site) feeds in memory or on disk
- Caching of search results pages (i.e. URIs with query string variables) in memory or on disk
- Caching of database objects in memory
- Minification of posts and pages and RSS feeds
- Minification (combine and remove comments / white space) of inline, embedded or 3rd party JavaScript (with automated updates)
- Minification (combine and remove comments / white space) of inline, embedded or 3rd party CSS (with automated updates)
- Browser caching of CSS, JavaScript and HTML using future expire headers and entity tags (ETag)
- JavaScript grouping by template (home page, post page etc) with embed location management
- Non-blocking JavaScript embedding
- Import post attachments directly into the Media Library (and CDN)
Easily improve the user experience for your readers without having to change WordPress, your theme, your plugins or how you produce your content.
Download it now or get support here.
- 291 Comments
- 20 Mentions
by serpico
on February 13, 2010 at 7:11 am
by serpico
on February 13, 2010 at 7:11 amdoes this plugin has an option to not show cached pages to logged in users?
EXCELENT PLUGIN, I MOVED TO W3 INMEDIATLY, FULL OF GOOD ENERGY AND GOOD AND HARD WORK, I REALLY APPRECIATE THE GOOD THINGS AND THIS PLUGIN FOR YOUR WORDPRESS IS THE ONE !!!!!!!!!!!
THANK YOU!
I could not understand a thing about the CDN in it nor I could be able to use CDN (For expert user, not enough help, i dont know whats domain rename tool, its complex, i tried but…) but I am using W3TC now. I am impressed. This plugins is difinitely the best out there and if you are using WP-Super Cache, I would suggest you to give W3TC a try. You will be amazed and drop WP-Super Cache today. Guaranteed.
Hiroshi,
I hear you and it took me haf a day to set this right on one of my sites too. I wrote a step-by-step guide here: http://goo.gl/1Ous
Hope it helps you.
Have just installed this software and i must say i've already seen some improvements in upload speed. cheers mate
by Chris
on February 15, 2010 at 1:14 pmThank you for this great plugin. It's saved my server from crashing every evening during high user traffic. Pages are also loading really fast now.
GREAT Plugin! – I have a question though. is there a way to have files that are in the CDN referenced as cdn.mydomain.com/photo.jpg instead of the longer cdn.mydomain.com.s3.amazonaws.com/photo.jpg ? I have a CNAME in place that works but don't see how to enable the virtual CDN name in the admin menus. If I ever were to change from S3 I wouldn't want to have to go back and change all the links for pages.
I am having a similar problem to Glenn, Francesco and Dan where I get a fatal error upon activation and it asks me to chmod 777 wp-content/w3tc. However, w3tc/ doesn't exist and if I create it, chmod 777 it, and then try to activate the plugin it gets deleted and I get asked to change the permissions and reactivate it again.
Software versions are W3TC 0.8.5.1 and WP 2.9.2
I have previously installed a much earlier version of the plugin before, and it worked fine at the time, but I wasn't able to use the caching because disk caching wasn't implemented yet, so I deleted it.
I love this plugin, but it dosen't seem to work very well with the WP-ecommerce plugin. Anyone else combining these two plugins?
by sOliver
on February 19, 2010 at 8:08 amHi,
great plugin!
I'm receiving the error "Memcached server(s): localhost:11211may not running or not responding." although I have double-checked that the daemon is running.
ps aux | grep memcached
nobody 24541 0.0 0.0 55740 836 ? Ssl 03:02 0:00 /usr/local/bin/memcached -d -m 128 -p 11211 -u nobody -l localhost
root 24552 0.0 0.0 3924 700 pts/0 R+ 03:02 0:00 grep memcachedSo, do you have any suggestions? I am running 2.9.1, maybe there's something wrong in the code?
Thanks,
OliverKeep up the good work
by sOliver
on February 19, 2010 at 3:38 pmI'm receiving the error: Server localhost (tcp 11211) failed with: Failed reading line from stream (0)
Also, I noticed that the daemon will automatically stop after some time or probably always when I quit putty.
If anyone had similar problems, I would appreciate a quick tipThanks!
i alwasy get this error
Warning: Cannot modify header information – headers already sent by (output started at /home/volkan/domains/yemektariflerin.com/public_html/wp-config.php:1) in /home/volkan/domains/yemektariflerin.com/public_html/wp-includes/pluggable.php on line 865
please helpi alwasy get this error
Warning: Cannot modify header information – headers already sent by (output started at /home/volkan/domains/yemektariflerin.com/public_html/wp-config.php:1) in /home/volkan/domains/yemektariflerin.com/public_html/wp-includes/pluggable.php on line 865
please helpThe plugin is amazing, thank you so much for making it. I really want to use it, but one problem is that it conflicts with my download plugin.
Essentially the Total Cache plugin is sending a Content-Length: 0 header which prevents the zip file I am trying to send out working, and downloads a file at precisely this size though named correctly. The plugin that underlying this, before caching, is sending its own headers. Is there any way I can either adapt the plugin or change a setting to prevent this? I could even adapt my plugin to turn off W3 on the fly if this is what is neccesary. I've tried exempting it in the settings by specifying /files/* and /downloads/*. The download code from the plugin can be looked at here – http://github.com/recordsonribs/ribcage/blob/mast...
Thanks very much in advance.
Alex
by bmu
on February 22, 2010 at 12:45 pmsilly question but do i need a different plugin so that the media uploader uploads to my cdn as well?
thanks.
by Dan
on February 22, 2010 at 10:16 pmI've just about got everything working the way I want to but I had a question in regards to the "reject user agents" for the bots/spiders/etc. I would think that it would be good to give the compressed versions to them. From what I have seen so far, this plugin is serving up the latest posts and information in the cached mode (in other words – the version the spider would get would not be old).
The compressed version is obviously quicker and this is what we are all after, so why serve the bot a slower dynamic page when we have the fast cached one sitting right next to it?
Thanks for the great plugin
by Dan
on February 22, 2010 at 10:16 pmI've just about got everything working the way I want to but I had a question in regards to the "reject user agents" for the bots/spiders/etc. I would think that it would be good to give the compressed versions to them. From what I have seen so far, this plugin is serving up the latest posts and information in the cached mode (in other words – the version the spider would get would not be old).
The compressed version is obviously quicker and this is what we are all after, so why serve the bot a slower dynamic page when we have the fast cached one sitting right next to it?
Thanks for the great plugin
Hey there guys! Just wanted to ask a quick question.
I am receiving this message in my dashboard on my WordPress site, "One or more plugins have been activated or deactivated, please 'empty the page cache' and check your 'minify settings' to maintain the desired user experience.
'Hide this message'"What is it all about and is it something I should be worried about? I have W3 Total Cache installed on two blogs of mine and both are displaying that message. I hope to hear back from someone soon.
Thanks much for sharing all your work and being supportive with everyone's questions. I'm using a random post plugin on a few sites and I've enabled debug mode and I think this query is getting cached and preventing real time random display of headlines.
enabled | Cached | SELECT * FROM wp_posts WHERE post_status IN ('publish') AND post_type='post' AND post_password ='' ORDER BY RAND() LIMIT 0, 4
I looked in the database section of the plugin and tried to add RAND to ignore DB queries but this didn't seem to work. Perhaps a feature to not cache ORDER BY RAND queries is needed?
by ddeconin
on February 26, 2010 at 2:00 pmis there some manual describing the different options in more detail ?
by Jamie
on February 28, 2010 at 10:16 pmHi, can you add plugin folders to the custom file list in the CDN settings?
WP 2.9.2 W3TC 0.8.5.1
I had to change
<script type="text/javascript" src="<?php echo w3_get_site_url(); ?>/<?php echo WPINC; ?>/js/jquery/jquery.js"></script>
<script type="text/javascript" src="<?php echo w3_get_site_url(),WPINC; ?>/js/jquery/jquery.js"></script>
in file wp-content/plugins/w3-total-cache/inc/popup/common/header.phtmlthe before added an extra / (http://www.domain.com//wp-includes...) which caused jquery to 404. this made it so I was unable to upload files to my cdn via the popup.
Any word on when lighttpd compatibility will be added? most things appear to be working fine except I am unable to combine and minify js files to the disk.
Also, I would like to enable memcache, but I have another project using it and I am worrying about key collisions. Is there a key prefix that gets used, or what is the key structure?
by InglesTotal
on March 3, 2010 at 8:51 amWould implementing the Total Cache affect my SEO??? I am well positioned and do not want to ruin it.
by Carlos
on March 3, 2010 at 2:07 pmOne question. Does implementing TOTAL CACHE affect my ranking in google? I mean, it creates static pages and I wonder if it may influenced how well I am positioned in google search. Please respond.
I´m looking for a cache system for my buddypress site.
I really would like to use W3 Total Cache. On the plugin page at wordpress.org, you wrote, bbpress and buddypress support will come.
Is there a time frame?Also I would like to know, if xcache will be supported in the nearest time.
I really need to know, if I wait for your plugin or use an other plugin.Can you tell me when the new fixed version is coming out so the image bug is fixed?
Any images within posts get cached by the CDN and the link TO the image is correct (linking to the source on the CDN), but image is still being served from the local server and not CDN (IMG SRC is still pointing to the original server and not CDN).
See my blog http://LeanStartups.com for an example.Thank you for the plugin, it's really great. I've used it recently for http://www.meinrad.cc and http://www.sba-rss.com, the difference to the uncached version is very cool.
Thanks, Wolf
What exactly happens to "Rejected User Agents"? When I use Google Webmaster Tools to access my site via Googlebot, I get
…
Page Caching using disk (enhanced) (user agent is rejected)The site is properly compressed and minified.
__a) does the UA-rejection have any negative implications on the indexing/listing of the page?
b) wouldn't it be better to provide Google with a faster (=cached) version, too?Best, Wolf
How can I disable the plugin on certain pages?
by John
on March 9, 2010 at 5:30 pmTried installing W3 Total Cache earlier and enabled CDN (used self-hosted option) but after it didn't work, I disabled it and used the plugin without the CDN capabilities. When I imported all my attachments to the Media Library, I had the "Use permanent redirects" option checked. All my post images don't show up because the image URL path is wrong and the domain name is repeated twice.
Example:
http://domain.com/http://domain.com/wp-content/up...
How do I fix this and is there any way to undo the permanent redirect? What should be the right settings when importing attachments to the Media Library?
Thanks!
Hi Frederick,
This is a great plugin!
I wanted to report a possible conflict between w3 total cache and Gravity Forms Plugin. It seems that Database Caching does some problem with recording the form entries. This is not confirmed yet by Gravity Forms – but since i use and love both plugins a would appreciate if you can look into that.
And also wanted to know how will turning off just database caching will effect total site speed improvements?
Great work on the plug!!!
This is a great plugin!
Thanks..
FT,
no, it doesn't take that long. 5 mins tops if one goes for basic setup using page and database caching. like Hiroshi, Minify and CDN were new stuff to me. child + parent themes setup were not in instructions though. that took me awhile to figure out that i needed to upload both into the self-hosted CDN. that said, to do the same on a new site shouldn't take me more than 20 mins now.

Is there specific ways that changing the status of plugins could effect the minify settings? Like if I was to add a plugin, what's a couple of errors that are likely to show? Just as examples so I know what to expect and so I know what to fix.
Mind you, my minify settings are set to default.
Thank you i solved problem. Problem about UTF codding notepad ++ solved my problem thak you
does this plugin has an option to not show cached pages to logged in users?