What Makes a Magento Site Slow?
Too many people are quick to blame the Magento application for their site being slow; this is not entirely fair. It may be true that Magento is a beast, but all beasts can be tamed.
Why Should I Care?
If you don't already know, Google and the other major search engines have started using your site's page speed as an indication of it's usability and making it a very important part of the search engine positioning algorithm. This means that if your site is slow, you probably have already started to notice your site dropping down the search engine and your sales dropping too.
Site speed also affects your site's conversion rate (the percentage of people on your site who actually buy something). Walmart previously carried out a study which showed that for every second they managed to speed up their site, they had a 2% conversion rate increase! Amazon carried out a similar study which found for every 100ms improvement, their conversion rate increased by 1%.
With reasons like this, can you afford not to optimise your Magento site?
How Should I Optimise Magento?
When we first heard about the importance of a website's speed, we decided to package up different optimisation strategies into Magento extensions. Not only did this make this functionality easier to maintain and improve but it also meant that we could share it with our clients. As a result we now have multiple Magento modules that have been created specifically to help improve Magento's performance.
Add a Full Page Cache Extension to Magento
The first extension to consider is Bolt, a Magento full page cache extension. This works by intercepting the user's request before it hits Magento and tries to load a cached version of the page they are requesting. Once Bolt's cache has warmed up, 75% of your user's will be able to browse your site without the Magento code ever being loaded or without connecting to the database!
This is possible by Bolt's clever logic and only allowing Magento to process the request when it really needs to. Example's of this would be when the customer adds an item to the basket, is logging into their account or progressing through your checkout. The majority of page requests (including search engine bots) will view a cached version of the page which will load in less than 2 seconds!
The beauty of Bolt is that it works on any server including shared hosting or a VPS. With Bolt, you no longer need to be spending an arm and a leg on your hosting costs to get a fast and responsive website.
Learn more about Bolt.
Optimise Magento by Minifying the HTML, CSS and JS
Opti is like Bolt's younger brother. He's not as powerful as Bolt but he has a few cool tricks up his sleeve that Bolt never mastered. Opti includes a block level cache that can be figured to work as a full page cache by caching the root block. This block level cache can work well if you configure it cache the blocks that generally take a long time to be generated (for example, the product list block). Opti's cache is great if you're on a tight budget.
Opti also has some great minification features built in that aren't available with Bolt. The reason this is important is that after Opti has minified your content (HTML, CSS, URL's), the amount of data that needs to be sent from your server to the user is considerabley less. As an example, look at the source code of a page on FishPig.co.uk and you will notice it is a single line of text. This is because Opti has minified it and removed all of the junk. It does the same for the CSS, which saves the server having to send all of the needless whitespace. This will decrease your server bandwidth costs and increase the overall performance of your server and site.
The minification features of Opti work great when combined with Bolt as it allows Bolt to cache smaller pages.
Learn more about Opti.
Stop all Magento Spam for Speed Improvements
NoBots helps cure your site of a problem you probably never knew that you had: spam bots! These spam bots in Magento go almost completely undetected and don't show up in your Google analytics (GA is loaded via JS, which spam bots won't load).
Spam bots work by scraping your site for HTML forms that can be used to post data (aka. spam) to your website. As a result, these bots can make 100's and 1000's of undetected page requests to your site, using up server resources which should be used for legitimate customers. NoBots works by leaving a trap that malicious spam bots will fall into (but the good bots, like Google Bot won't). When this happens, a ReCaptcha message is displayed, stopping the bot in it's tracks.
By stopping these bots wasting server resources, you can massively reduce the number of spam emails and reviews you get posted and improve the performance at the same time!
Learn more about NoBots.