One of the questions that comes up fairly regularly in my weekly WPMU DEV chats is “how can I speed up my WordPress website?” It’s an important question, particularly for businesses who want to scale their website. Of course, the procedures necessary for speeding up your website are going to differ depending on whether you have a site the size of something like WPMU.org or a lamoid little homepage like my own.
Guh! I Don’t Care if My Webpage is Fast! Why Can’t You Just Leave Me Alone?
You should care if your website is fast – it makes a difference for a number of reasons:
- SEO – Google uses site speed to determine rankings
- Usability – If your users have to spend ages waiting for your website to load then they’re going to be off somewhere else. No one will notice if your page loads quickly but they will notice if it’s slow. Take too long and your visitor will be off elsewhere.
There are lots of different tips and tricks out there. Some of them will speed up your website loads. Others will add just a little bit of speed. If you’ve got a massive site and it is taking a long time to get anywhere then you’ll want to squeeze every bit of optimization out of it. For a small site, just one or two of the steps will be enough to get your website speedy.
1. Plugins
Plugins….. we all love them. There’s nothing more cuddly than a brand new plugin that supercharges your website. But we are all guilty of installing ones we don’t really need, or of installing a plugin, trying it out, deciding we don’t really need it and deactivating it, leaving it sitting inactive in our installation (nb – an inactive plugin won’t slow your site down but it will take up space. This will only cause you problems if you have restricted space). As is pointed out on this forum post, each plugin removal will speed up your website, even if it is only by a millisecond.
Here are some tips for plugin use for speedy-sites:
- Only install plugins that you plan to use
- Install plugins on a test site before installing on your main site
- Deactivate and delete plugins that you aren’t using
- Don’t use a plugin when you can use code – there are lots of lovely Twitter plugins, for example, but Twitter provides code for a widget that you can drop straight into your text widget or even place directly in your theme.
Okay, on a clean install of WordPress 3.1 with TwentyTen installed here is a site’s score with Google’s Page Speed Tool:
That’s okay. Not great but not dreadful either.
Here is the same install with 10 of WordPress’ most popular plugins activated:
![]()
So much slower…… It’s not hard to see the difference that the plugins make.
NB: The plugins that I used for this test are: Akismet, All in One SEO Pack, Contact Form 7, Google Analytics for WordPress, JetPack, NextGEN Gallery, WordPress Importer, WPTouch, Yet Another Related Posts Plugin, Add to Any
2. Cache
A caching plugin will make the biggest difference to your blog or website’s speed. If you are concerned about speed and don’t have one installed it should be the first thing that you do. Every time someone visits your website WordPress gathers up all of the information that it needs from your database. A caching plugin stores a flat HTML version of your website and, provided there has been no changes – a new comment or blog post, for example – serves that up instead.
There are a number of different caching plugins out there and it can be difficult to know which one to choose. The one that you go with will largely depend on what your website needs. Do you have a small website that needs a simple caching plugin for a small number of visitors? Or do you have large amounts of traffic and require lots of options to customize the plugin as you wish?
- WP Super Cache – This is a modification of the WP Cache plugin. It stores data as HTML so a page visit does not require a trip to the database.
- W3 Total Cache – This does everything that WP Super Cache does but with bells and whistles, including managing your CDN, minifying your Javascript and CSS, and caching your database queries – great for big sites that need a whole load of options.
Here’s how my test site did after I set up W3 Total Cache:
![]()
!!!! That is speedy!! W00t!
And this is interesting – with the same ten plugins installed as above, running W3 Total Cache check out the results:
![]()
That’s even faster than a clean WordPress install. I’m impressed! If you’re not caching – start!
Some Cache-Related Resources
- Ben from Binary Moon has a fantastic three-part series about WordPress Caching. It’s definitely worth checking out. He goes into quite a bit of detail about how to use the often ignored built-in WordPress caching capabilities as well building your own caching plugin
- Olly from WPLift has got an indepth walkthrough on setting up the W3 Total Cache Plugin
- Check out WPBeginner’s walkthrough on setting up WP Super Cache
- An interesting comparison of the various caching tools using the Apache Benchmark tool
3. Choose a Good Hosting Provider
This can be a difficult task – especially if you’re not familiar with the ins and outs of web hosting. Many people, when they set up their first website, will go with a popular and cheap shared hosting option like Host Gator and GoDaddy. I still have a number of sites on GoDaddy, which is where I started off my WordPress career – I’m actually in the process of moving my sites to a new provider.
Aside: Two Reasons to Avoid GoDaddy
- It is a pain to get emails to send from GoDaddy. Check out this post on WordPress emails and GoDaddy. I did get them working for a while but every so often they would stop working and I’d have to spend ages setting it up again. It has been a problem on every GoDaddy site that I’ve built. Problems with emails means problems with contact forms which means total pain in the ass. If you want an easy life avoid GoDaddy.
- GoDaddy’s CEO shoots elephants and posts videos of them being butchered to the sound of AC/DC. N’uff said. (nb. Article link is interesting but the video is graphic).
How Do I Choose a Web Host?
- A good place to start is WordPress.org where they have recommendations of hosts to use. WPMU DEV also has a page with a few recommendations.
- You should also talk to friends and family about their own hosting. There’s nothing better than a personal recommendation.
- Make sure it meets the minimum requirements for WordPress
- Always get Linux hosting – Windows hosting will cause you problems (I had a client ask me to install WordPress on Windows hosting… what a pain!)
- Shared hosting will be slower than dedicated hosting. Remember that the speed of your website will be affected by the number of people using that hosting. If you have just a basic low-traffic site then shared is fine, but for bigger, scalable sites you’ll need to use VPS or dedicated hosting.
4. Optimize Your Images for Web

One of my big bugbears is people not optimizing their images for use on the web. Why do they not understand that a 300ppi 9999999999px x 99999999999px is not necessary for a website? If an image takes a long time to load then I’m off. I don’t care if you’re selling the secret to eternal youth or have an image of the world’s cutest kitten. If it takes a long time to load – seeya later alligator!
Simply: Big image = big file size = slow load times
Don’t you understand that it takes much longer to load 300 pixels in an inch than 72???? Gah!
Anyway…..
The first thing you should do is ensure that the image is the right dimensions for your blog or website. WordPress does offer you the option to scale your images when you upload them but you are much better off doing it before uploading. Our posting space here at wpmu.org is 550px wide so I always reduce images to those dimensions.
You should, always, always resample your image to 72ppi.
You can use one of these methods:
- Resample your image using a piece of image editing software – even programs such as Preview on the Mac can do this. You could also try out this great online image editing tool – Pixlr
- If you’re a Photoshop user always use “Save for Web and Devices” when saving your images. You can find it in the “File” menu. You can also go to File>Automate>Batch to resize large numbers of images at once. It’s one of my favorite time saving techniques.
- You can use Yahoo’s free Smush it tool for resizing. There is is a Firefox add-on for it, and there is a WP-Smush.it plugin. This can save quite a lot on your image size, sometimes even more than the “Save for Web” in Photoshop
- Python users can use this script to smush whole directories of images
5. Farm Out Your Video
Unless you’ve got a super–fast server with loads of space, hosting your videos on services such as Vimeo or YouTube can help with your speed. If you have a site with loads of videos then no doubt you’ve already taken server speed into consideration but if you are just posting the occasional video you should definitely host elsewhere. You can check out this interesting post on why you should use Youtube to host your video.
6. Optimize Your Database
Over time your database can get unruly. However, you can use the optimize function to clean up any wasted space that you have. It’s especially effective if you’ve recently just deleted lots of comments, creating lots of dead space in your DB. You should optimize your database at least once a month.
There are a number of ways you can do it:
a) Manually
Go to phpMyAdmin and select your WordPress database:

Check all:

Select Optimize Database from the dropdown:

b) Plugin

A plugin like WP-DB Manager will take care of this for you – you can set it up to optimize the database regularly and, like many plugins, it comes with other great options that let you automatically back up your database and perform other database management tasks.
c) Cron Job
A cron job is an automatic program that you can execute at specific times and at specific dates. You can set this up through your CPanel. If you are trying to cut down on your plugins and want to be able to optimize your database you could set up a cron job to optimize your database on a regular basis. I definitely wouldn’t advise doing this unless you are comfortable administrating your database. For those who are, here’s a Cron Job code snippet which should get you on your way.
7. Choose the Right Theme
The right theme can make a huge amount of difference to your website’s speed. Themes with large amounts of images and scripts can slow down your website. Here are a few tips to help you choose a speedy theme (or speed up your own theme):
- Choose a theme with a CSS menu, not an image based menu
- Always go for CSS before images
- Avoid image heavy themes
- Don’t install a theme with anything you don’t need. Do you really need a theme with 37 sidebars? If you love that theme but don’t need the side bars remove them. http://codesnipp.it/code/847
- Make sure there is no redundant CSS or Javascript
- Test!
8. Use Excerpts and Limit Front Page Posts
This won’t be so relevant if you’re using WordPress as a CMS to power your website but it is important for bloggers, especially prolific bloggers and bloggers who write long, image heavy, posts. If you have them all feeding through to your front page you can expect to see your website slowing down over time. It’s obvious why this is – more data = longer load times.
You can mitigate against this by using excerpts and limiting the number of posts that load on the front page.
Limit Front Page Posts
Easy to do by going to Reading > Settings:

Excerpts
To use post excerpts you’ll need to edit some code. In your index.php, archive.php and category.php you’ll need to find the following line:
<?php the_content();?>
And replace with:
<?php the_excerpt();?>
This means that you can now write custom excerpts for your post and have them displayed within your theme. If you don’t fill in the custom excerpt section WordPress will pull the first 55 characters from your post and use that instead.
You can change the word limit for the excerpt. Check out this post from WP Beginner for more details about how to do it.
8. Reduce PHP Queries
This one is a bit controversial so I thought I would include it. All WordPress themes contain some generic code which is used to pull data from your database. This can be replaced with static html. So, for example, this:
<?php bloginfo('name'); ?> <?php bloginfo('description');?>
Could be replaced with:
<title> My Blog – the best blog in the world, ever</title>
This means one less query on your database. You could go through your whole theme and replace all of the unnecessary php calls with html.
Update: Check out Mike’s comments for why I, and others, are wrong on this one :)
Does this speed up your website? Not as much as a caching plugin. But if you’re trying to get speed from anywhere possible and you are diligent about changing it across the site then you could see a modicum of speed increase.
Why is this controversial?
There’s an interesting discussion on Lorelle’s blog (from way back in 2007) in which Matt and Otto dispute the effectiveness of replacing these queries with HTML. If you’re a speed-geek it’s an interesting discussion to read and there’s quite a lot of detail about the effectiveness of this technique.
9. Disable Hot Linking
Hotlinking is when another internet user uses an inline link to display an image that is hosted on your site. You know, those people who do a Google image search and not only think that it’s okay to use your image but also are fine about embedding the image using the link to the one you host, thereby leaching up your precious bandwidth.
You can ensure that this doesn’t happen by adding the following code to you htaccess file:
WARNING! Always backup your htaccess file before making any changes.
#disable hotlinking of images with forbidden or custom image option
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?yourdomain.com/.*$ [NC]
#RewriteRule .(gif|jpg)$ – [F]
#RewriteRule .(gif|jpg)$ http://www.yourdomain.com/stealingisbad.gif [R,L]
Thanks to Josiah Cole for this hack.
10. Clean up after yourself
An easy way to build up too much data is to not clean up after yourself. You should clean your WordPress website as regularly as you clean your house (which for me isn’t too regularly).
Trash
Your trash is cleared automatically after 30 days. You trash a post and 30 days later it’ll be gotten rid of. You can empty the trash manually by going to Posts > Trash and clicking “Empty Trash” like so:

But, like everything else with WordPress, there is a way to do it automatically. Simply add the following to your code to you wp-config.php file:
define('EMPTY_TRASH_DAYS', 10 );
That will set it to empty ten days after trashing.
Revisions
As with emptying the trash, there is a number of ways to get rid of your revisions.
You can run a command on your MySQL database (make sure to back up before doing this). Log into phpMyAdmin, locate your database and run the following command on it:
WARNING! Backup your database before running any commands!
DELETE a,b,c FROM wp_posts a LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id) LEFT JOIN wp_postmeta c ON (a.ID = c.post_id) WHERE a.post_type = 'revision';
(Thanks to Craig for that!)
You can also use a plugin such as Better Delete Revision which will take care of it for you.
If you don’t use your revisions you can just stop WordPress from saving them altogether (only do this if you really don’t want them – I use my revisions quite a lot so would never turn them off).
To turn off your revisions altogether add the following to your wp-config.php
define(‘WP_POST_REVISIONS’, false);
If you want to just limit your revisions to, for example, 3, you can use the following code:
define(‘WP_POST_REVISIONS’, 3);
Thanks to Mike for that :)
11. Turn Off Communication
If you’ve got a big blog with a lot of traffic that people link to a lot all of that chatter could slow your website down. Trackbacks and pingbacks generate data on your website every time someone links to you. Turning these off can improve your site speed. This isn’t a difficult thing to do. Just log into your dashboard and go to Admin>Discussion and make sure the following is unchecked:

That’s just eleven of the ways that you can speed up your WordPress website. There are loads more ways to do it. If you’re still trying to improve your load time you should check out these great resources below which can help you even further.
Resources
- Use htaccess to Speed up WordPress (from WPShout)
- Vladimir Prelovac’s WordPress optimization guide
- NetTuts – 15 Tips to Speed Up Your Website and Optimize Your Code
- Sarah with 11 more ways to speed up your website
- WP Beginner with 18 Tips and Tricks to Boost Performance
Speed Testing Resources
- Google Speed Check
- Google Speed Check Online (just launched!)
- Y!Slow
- Pingdom
- GTMetrix
Good write-up! Very nice!
Great post. And thanks for linking to my article about VPS hosts for WordPress.
One host actually told me that database management plugins could slow you down a bit so you can deactivate them and only activate them for the few minutes in a month when you use them. I’ve not had this confirmed anywhere I just thought I’d throw it out there.
But pingback can even give you some link juice then why not continue with them?Anyway thanks for share some great tips.
Yeah.
#1 alone moved me to a 91/100. Very pleased. As you guessed, I had a lot of plug ins deactivated, but not deleted.
I’ll stay focused on the rest of your list as it applies too.
New, and now loyal, reader.
Hey Siobhan, nice post and thanks for mentioning my blog! :)
There’s some good tips there. It’s a nice reminder to go through and check things every now and then.
Siobhan – Thank you for the detailed post with lots of immediately useful tips and resources. The examples you give using TwentyTen and Page Speed make a compelling case. I’m in agreement about GoDaddy hosting. At one time, they were on the WordPress.org list of recommended hosts. Now they are not. No doubt there is a good reason for that. And their CEO speaks for himself – literally – which is a good thing, because you get to see where your money goes if you use GoDaddy.
One question: I keep the “allow link notifications (pingbacks and trackbacks)” box checked because it’s an easy way to get a notification when someone links to my site. If those pingbacks are published, I can see how they would generate more data on your blog, but what if you don’t publish them? Does having the extra data in the WordPress database slow down your site even if the data is not visible to site visitors? In that case, what if you delete the pingbacks after reading them? That should take care of it, right?
I like that you said pixels per inch (ppi) and not dots per inch (dpi). Too many people don’t understand the difference.
Glad you guys found the post useful.
@Rob – I didn’t know that about the database plugins. I guess that’s something to check on if you’re still having speed problems.
@Mark – even if your website isn’t publishing pingbacks it’s still generating information about them – sending you emails or storing the data. It’s like if you have loads of post revisions but don’t publish them – they still slow down your site. However, I could be wrong about the pingback thing. Anyone else know?
@Eric – yes, I agree. It’s very annoying when people use dpi when they mean ppi. They need a virtual poke in the eye >_<
It looks like a lot of it is hosting too. I have a 3.1 install with 10 plugins and no caching as of yet and got 90/100. I have it on a dedicated server with 75 other domains, relatively light server load.
I would imagine even a VPS would get you better load times than a standard shared box.
Fantastic post! I just made two of the changes you recommended (deleted old unused plugins, and optimized my database) and already my site loads almost twice as fast! Thank you so much!!
Isn’t this a better way to delete post revisions?
DELETE a,b,c FROM wp_posts a
LEFT JOIN wp_term_relationships b
ON (a.ID = b.object_id) LEFT JOIN wp_postmeta c
ON (a.ID = c.post_id) WHERE a.post_type = ‘revision’;
I’m curious how the 2 caching plugins you mentioned work. While it’s true w3 gets a better score then wp super cache and w3 loads my blog faster. But say I have a lot of pageloads; say 150k a day or so… Wp supercache wins hands down and w3 kills my server due to high load. Curious why?
Hi,
Nice Thanks I love You WordPress !
Excellent tips, thank you!
For anyone interested, I wrote about how customizing the WPMU Nelo theme for our site overhaul drastically improved load times and overall performace.
You know what would really help? Making that g’dang “site Admin notice” from WPMU DEV “exitable” and “clickable”. I can’t close the thing AND if I click the link I get taken to a blank window.
This is really pissing me off because it’s sitting right over some critical fields in the admin area and I can’t change them.
GRRRRRRRRR
You how proper usage of css, js and images matter, how compression of website matters a lot in opening fast. I came to know when i checked wpmu.org performance in zingro.com. We need to have only one js and css per page, having multiple components attached, increases load time of website.
Thanks and amazed at the way you deliver best wordpress related stuff.
I have also written an article on improving speed of your wordpress based site. You can check it out http://bit.ly/fEIFC6
great post. we’ve also been using cloudflare.com CDN which seems to help also. Any CDN will help with load times
Siobhan,
An interesting article but with some inaccuracies:
Your first point, implies that inactive plugins will slow your site down. This is not true, those files are not even accessed if they are not activated. The only time inactive plugins are accessed is on the plugins page in the admin screens.
The article you link to is quite clear
Point 6: Cleaning up fragmented storage space in your database tables isn’t going to affect the speed of your database, the database indexes mean that the unused space is not referred to.
Point 8: Whilst the heading is correct: reducing database queries will speed up your site. Replacing any of the bloginfo() calls will not reduce the number of database queries. All the options used by bloginfo() along with many, many more have been autoloaded and stored long before WordPress gets to your theme files.
Similarly, the overhead of calling an individual php function is really really small (down in the microsecond range).
Point 10: Firstly, WordPress does automatically empty the trash for you, that variable you mention is set to 30 days by default. But it doesn’t matter. WordPress does not reference, and MySQL does not access, the trashed posts on the front side of your blog. The indexes mean that they are completely ignored. It would be a very poor system indeed if that wasn’t the case.
The same goes for point 11, WordPress and MySQL ignore revisions when displaying your site. They are only *counted* on some of the back end screens, and only loaded on the actual revisions screen.
Hi Siobhan, regarding indexing and fragmentation. Its pretty well documented and tested that re-indexing your tables on a regular basis does improve performance, if you have a busy blog (meaning a lot of posts and edits)
One thing to add about removing unused plugins – it may not affect performance much, but you don’t have to deal with those nagging updates as much with fewer unused plugins.
This SQL will remove the revisions and their meta data
BACKUP YOUR DATABASE FIRST
DELETE a,b,c FROM wp_posts a
LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id)
LEFT JOIN wp_postmeta c ON (a.ID = c.post_id)
WHERE a.post_type = ‘revision
Change your database tables to INNODB. INNODB only locks the rows so if you have a high traffic site with a lot of posting, it will help immensely. Comments, Comments meta, posts and post meta all can be changed.
REMEMBER TO BACKUP YOUR DATABASE FIRST
Thanks for the comments. @Mike – Where possible, I’ve updated my post to take into account some of your notes – which were very helpful. I think I should have made a clear distinction between actual speed and creating space.
@Andrew – Thanks for the additional tip! :)
Hi Siobhan
Great in-depth article as usual, and I mean in-depth.
These posts are real information sources, links and all.
Liked the link for setting up the W3 total cache plugin.
May actually give it a go after reading the article.
My theme looks good but runs like a donkey.
I’m also looking at Genesis for my next site.
Seems pretty fast.
Hi Siobhan,
Thanks for your reply, but you don’t seem to have changed much…
Point 6, which states “This will give you a quick speed boost.” is still wrong. It will save you space (and usually a
minuscule amount), but not make anything quicker.
Point 8 states “This means one less query on your database.”, which, again, is wrong, it does not make any difference to the number of queries.
In point 10, I’ve realised you have a misunderstanding about how the EMPTY_TRASH_DAYS define works: It does not “empty your trash every 10 days”. It will cause the posts, pages and comments that have been in the trash for 10 days to be automatically deleted.
In other words, if you added one post to the trash every day from now, in 10 days time the one you added today will be deleted, the following day the one you add tomorrow will be deleted.
Also in point 10, ss someone else pointed out, there are better ways to remove all your revisions, and your way can leave a bunch of corrupted records in the data base: category relations, tag relations, meta data.
Finally, if you set wp_post_revisions to a number, e.g.
define(‘WP_POST_REVISIONS’, 3);WrdPress will only keep a maximum of 3 revisions. That way you get the advantage of revisions (retrieve a previous version when you make a mistake) and to control the overall number of revisions saved. Note, this won’t proactively remove existing revisions beyond 3, but if you save a post that as more than 3, they will be reduced to 3.
Mike
This is one of a kind complete post that would certainly useful in improving loading speed and time.
But I wonder why, WPWebHost is not listed on the WordPress hosting provider :(
Hi Siobhan
Great article. I also want to suggest an additional way to speed up website : reduce number of http requests and compress your css and js files. And this online tool: http://www.zbugs.com will do compression and merging in a single click.
Thanks
Nice tutorial.Clearly explained
I couldn’t get the .htaccess code to stop hotlinking to work. I needed to add |png to the two lines to also stop hotlinking of pngs but the hotlinking kept getting through. Anyone else have this or is it something I have done?!
Anyways, in case other people are having trouble with that code I ended up with this from another site (sorry forgot to bookmark link!) which works for me.
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://(.+\.)?yourdomain\.com/ [NC]
RewriteCond %{HTTP_REFERER} !^$
RewriteRule .*\.(jpe?g|gif|bmp|png)$ http://addresstoimagetodisplayinstead [L]
Thanks, this really helped the speed of my website. I have more than half of the plugins you mentioned that slowed down the site so I made just a few of your suggestions and my site is much faster.
Great article, lots of good resources. Thanks…
I have been browsing online more than 3 hours nowadays, but I by no means found any fascinating article like yours. It is pretty price enough for me. Personally, if all site owners and bloggers made just right content material as you probably did, the internet shall be a lot more useful than ever before.
Thanks, really well written and informative. I’ve noticed lately my wordpress site is really slowing down. There probably are a few plugins I could un-install and replace with PHP, it’s just laziness!! oh well.
Excellent article, which made me realize that I had thousands of revision pages, making my database far bigger than it needed to be. I found an excellent plugin called ‘Better Delete Revision’, which avoids editing .php files directly.
I’ve tried the WP Smush.it, which worked really well to begin with, and then began to give error messages. Looking around the Internet, others also experience the same issue.
Hi everybody,
I’ve got this problem when some articles load very slow (after 15 seconds or so) but not all of them. Could you give me a clue what could be?
Second problem I’ve got: how do I move javascript in the footer? I mean manually…I read somewhere that you can actually move the javascripts in the footer of your WP site…how do you do that?
Many thanks!
Thx, after following the steps, especially the DB I managed to speed up my blog considerably…even on Godaddy, the slowest hosting of them all :)
Thank you for this useful information on how to optimized our WordPress sites. I’ve search some information how I could tweak a WordPress that is having a problem with windows hosting in Godaddy and I’ve found your article.
I know this setting are most commonly good in Linux hosting but how about tweaking your web.config just like in .htaccess. I hope you could share some information about this matter. Thank you
Cheers,
Rosendo Cuyasen of Eyewebmaster
Wow…outstanding article! I’ve started putting some of these to use put have more work to do. My site is very image-heavy, so I need to increase load speed in any way I can.
awesome — i’ve been struggling with slow wordpress sites for ages and this makes it real easy to sort it out — cheers!
If your caching your website then you should be able to keep the bloginfo() methods in your theme.
Thank you – this is a very good checklist – well presented and easily understandable for me as a non-techie business owner
Thank you so much for this information. I’ve used all of your tips on my rather insignificant site, but I enjoy having it run as efficiently as possible.
Great post! Helped me a bunch – thank you!
A quick note about #10: Turning off post revisions completely will break your post preview functionality.
Don’t know where you get hat idea from Brad. But that’s completely untrue. The two areas of functionality are unrelated.
Smush.it is not even near tools like http://compresspng.com or http://kraken.io by compression ratio.