In the last fortnight we have been involved in 2 Magento rescue projects. Both sites were performing terribly and hurting conversion rates and usability of the sites, and in one case making the site virtually unusable.

Both clients approached us with a similar story, along the lines of ‘our provider has told us this is just the way it is’ ‘magento is slow’ ‘magento has memory holes’. It’s always frustrating to hear these views as it is simply not true.

Magento is a significant piece of software, feature-rich and deeper than most ecommerce systems by some margin. With this incredible scope comes an important reality check: Mistreat it and it will bite you. There are a million things you can do wrong in Magento, so it’s imperative that your developers and hosting providers know the platform and know it well.

So what was wrong?

The Magento 1 site

The Magento1 site we took over was taking on average;


1611ms to load the home page
1598ms to load a category page


We migrated the codebase to our new Magento optimised dedicated server and found the same level of performance. We scrutinised the theme, which was ok (not great) which led us to check all the installed modules. Disabling them one by one we found a module from a well known module developer which was causing fireworks of activity on every page load. Digging deeper into the code of the module we discovered lots of unnecessary event observers, including;


<controller_action_predispatch>
<controller_action_postdispatch>


By modifying the module we were able to reduce page load time by over 90%;


160ms to load the home page
155ms to load a category page 


The Magento 2 site

The Magento2 site we took over was on taking on average;


7346ms to load the home pag
7201ms to load a category page


We migrated the codebase to our own staging server to analyse what was going wrong and found multiple issues, including;

  • Full page cache was broken with cacheable=false in layout xml (see earlier blog post on that one)
  • Multiple module issues with poorly written code, outdated versions and broken installations


There was also a fundamental hosting issue, with the provider claiming the client was getting a 26 core VPS with 10GB of ram, which we seriously doubt was the case.

Having resolved the issues and moving the clients to a 4 core VPS with 6GB of ram, perfect for the needs of the site, the site has achieved a reduction in page load time of over 95%!


298ms to load the home page
280ms to load a category page 


Magneto2 Perfomance

So there you have it. If your Magento site is running slow and your provider is telling you it’s ‘just the way it is’, get in touch for a no-obligation second opinion.