Migrating Magento From on Server to Another

Why You Should Not Use Magento

Following on from my earlier post on ‘Why You Should Use Magento‘, now for Magento’s negative side.

This is part 2 of a two part series on Magento, in this first part we look at why you should not use Magento for your eCommerce website platform.

Magento is a beast, if its not the depth of the user interface, its hundreds of settings to get used to or just the sheer scale of it. To give you some idea there are 28,000 files for the default installation of Magento (compared to just ~2527  in OpenCart 1.5.5) and that’s not including any media or theme files that you’ll be adding to it as well.

I’ll be completely honest with you, two years ago it took me two or three attempts to get to grips with it, that’s slightly concerning as I would like to think I pick up things fast, very fast. I finally gave in when a client demanded that they needed me to know it, several hours later and many pints of coffee, I felt quite at home.

There is a lot of hype around Magento, for the large part of it, its worthy, but Magento has several other aspects that you need to be aware of:

Development & Design Costs

Because Magento has taken off, developers & designers are charging a premium for the development of custom extensions & themes.

You need to be really careful of this if you need design or coding alterations. I would strongly suggest you document any changes you wish to be made before approaching anyone and get at least three quotes from reputable companies. This will stop you looking inexperienced and open yourself to be over charged.

Expect to pay up to 40% more for the same functionality when compared to platforms.

There has been a very mixed feedback with freelancers, I personally suggest you look at the most downloaded extensions in Magento Connect for each of the categories and locate a company that has completed a similar extension and approach them directly with the specifications.

Magento is quite easy to extend against, but generally it requires a lot more work than other website platforms and expect to pay up to 40% more for the same functionality when compared to platforms.

Update for 2014:
Over the past year I’ve seen quotes from £500 to £20,000 for Magento website designs. The differences are wild and what you get for your money is also wildly different.

If you’re on a budget or would rather spend your website build budget on marketing (which will make you money instead of having to spend it before you can earn it), take a look at the Ultimo Magento website theme, it’s been downloaded over 6,000 times and any bugs in it were ironed out yonks ago. It might not be exactly what you’re looking for, but the disparity between $95 and even the lowest of quotes £500 is huge!

Export/Importing Abilities

This was a shocker, the import and export abilities are astonishing poor. And I mean REALLLLLLLY bad.

I’m used to software products that are highly configurable when it comes to data exports and Magento lacks in every department.

I recently had to hack the core code to get some images in via CSV, it felt soooo bad and its just wrong. There are no category exports and inventory exports are primitive to say the least. There are several import tools for Magento, they vary in their flexibility and cost.

If you’re migrating from another platform, spend a serious amount of time seeing if you can port your data across. This could make or break your decision to use Magento, so trawl the extensions directory Magento calls “Magento Connect” for extensions to migrate from another platform, most of the common platforms have special importers available for them, several examples can be found here for OSCommerce.

Update for 2014:
I got around to documenting and creating the video guides for Magmi as part of the UnderstandingE project, you can find all the video guides here.

Magmi is like the swiss army knife of import tools for Magento, you can pretty do much anything you need to and there are a wealth of plugins available. Those dirty core hacks of Magento are no longer needed, oh and it’s free too.

Indexing in Multiple Website/Store Setups

This is an issue if you are SEF rewrites enabled. Magento wants to have ALL the SEF URL’s (Search Engine Friendly) in a table for each store view for each website for each product for each category.

For single or a small number of stores with a low inventory count this isn’t a big problem. But for big sites of several thousand records (or more) with multiple store views/sites then this becomes a processing issue.

If this is you, then you’ll need to take a look at look at the recommendations on the kit to run Magento and optimisation suggestions; Plus you’l need to take a look at this blog post on a method on how to run the different indexing processes separately because they’ll just never complete on their own.

To give you some idea, one of the sites I recently worked last year, took a minimum of 2 hours and 5 minutes to index. The processes are run in the early hours of the morning, but it does mean new products do not show until they have been ‘indexed’.

Update for 2014:
The quality of web hosting has got better over the past few years and you can get inexpensive, decent Magento focused shared web hosting for £16-30 a month see here (aff link and I use them myself).

While this won’t suit super big sites, you don’t have to overpay or suffer if you’re a smaller business and have lots of inventory. Also SSD disks have come down rapidly in price and seeing as they’re ~10 times faster than traditional disks, there is no real reason for you not to be on SSD disks, especially if MySQL is running off the same server too.

No Bulk Update Tool

This was another shocker, there is no ‘bulk update’ tool. These are taken for granted in other software products I have come across and feel this is a big hole in the Magento platform.

Such tools allow a user to update one or more attributes on many inventory records. The save untold amounts of time, effort, oh and frustration.I did find a plugin that was mildly helpful its called “Related Products Manager” which I covered a few days ago and also its free which helps, but is no substitute.

Server Requirements

Magneto is far from ‘light’ in resource demands. This I hinted at with the indexing requirements I mentioned above. You’ll be lucky to run this on a shared hosting account, it almost demands an entire server to itself and for bigger installations, several with a load balancer to boot.

Expect to be paying good money for the hosting side for Magento, if you skimp here then it’ll bite you in the bum very quickly.

If this does not put you off, then renting or collocating a dedicated server is absolutely suggested for your site. Collocation starts at about £40 + VAT and you supply the kit or a rented dedicated server can be found for around the £85 + VAT mark that should last you a while.

There are also dedicated Magento hosting providers out there, I am unable to comment on them all, one company that suggested that their VPS was “Magento Ready”, when we loaded 14,000 products to it, it was far from capable and moved to a dedicated server with 16Gb of ram and 8 cores instead. Slight overkill, but never had a problem after that “upgrade” :)

TCO – Total Cost of Ownership.

Aptly after the server requirements point, unless you have a technical member of staff or development team, you’ll be better off outsourcing this to a 3rd party and when it comes down to total cost, you may ultimately be better off choosing a hosted solution for Magento or another platform less “resource hungry”.

Update for 2014:
If you’re having to keep to the realms of shared web hosting, then this does come with several benefits, such as regular backups.

Always check with your web hosting provider how often they are made and whether they are off site (desirable) or on site. Trust me there is nothing like the cold sweat of not having a backup to hand and while not to be completely relied upon, this can come in very handy.

It’s Too Good.

Yep this is a negative!

Magento is to deep and offers too much customisation.

Sometimes its better off to get someone else to do a task for you and unless you’re a web designer or a PHP/MySQL developer, you’re better off giving it to someone else.

Stick with the basic functionality and you can’t go wrong.

Working with Magento

Rather than rubbing up against Magento (or anything else for that matter), working with it is always a easier route and here are some suggested resources to read the white paper includes some really good base optimisations for Apache, MySQL & PHP:

  1. Magento for developers (this is an 8 part series by Magento)
  2. A 60 page Designers guide for Magento (provided by Magento)
  3. A 290 page guide for users (also provided by Magento, need to enter some basic details)
  4. System Requirements
  5. White Paper: Methods and Best Practices for High Performance eCommerce with the Magento Enterprise Edition
  6. Book: Mastering Magento (steep at £30, but was helpful as it was similar to the user guide, but easier to understand)
  7. Update for 2014: And UnderstandingE.com, this site has over 100 video guides in Plain English, written & published by myself.

I don’t want to knock Magento, I really, really like Magento, but at times its has been extremely frustrating working with it.

The forums are not the most active places (they suffer from a lot of spam too) and some bugs I have found (well, some, ok most caused) have been a nightmare to resolve to no one really knows what on earth is going on. If I had not been technically competent with a good understanding of PHP/MySQL and what should be happening, then I would have given up on it ages ago.

In Summary

If you’re looking for a simple shopping cart that looks pretty, works well and supports multiple sites (yes other products can do this besides Magento), you may want to look at a personal favourite of mine, OpenCart, but be fully aware that’s not without it’s limitations, especially around multi-variations and stock keeping and no one platform is “perfect”, they never are.

Magento is a beast and from personally experience two years ago, I naively thought it would be quick to learn, how wrong was I… But chuck the resources it needs at it, along with time and you can do wonderful things with Magento.

47 replies
  1. makeonlineshop
    makeonlineshop says:

    Hello, to make it short, would you say that Magento is the most powerful store CMS but not the easiest to use ?

    And can you compare the price of addons/plugins/extensions/ modules with other CMS ?

    Does Magento comes with all essential addons for a new shop ? What is missing if you do not pay ?

    Thank you so much.

    Reply
    • Matthew Ogborne
      Matthew Ogborne says:

      Howdy Mark,

      I’m biased as we’ve put together over 300 tutorials on Magento over at https://understandinge.com/. Yea it’s weird to get your head around to begin with, but once you get the hang of it, the sheer amount of flexibility available is unparalleled.

      Besides decent web-hosting, the major purchase was a decent theme for Magento at $99.

      Hope that helps :)

      Matt

      Reply
  2. Zoogod
    Zoogod says:

    Having now developed in the realm of 100+ magento sites. It is one of the most straighforward systems for ecommerce to utilise. It is by far and away one of the most flexible and there is nothing which can not be achieved with magento. And like everything once the knowledge is there it is straightforward.

    I agree some people charge ridiculous amounts in their quotes for a magento core system but it all depends on the quality of service the client wants.

    Opencart has some massive security issues, as do other high profile cart options.

    As there has been continured investment and growth in magento and its solutions it is becoming stronger and quicker and version 1.9x is far less resource hungry and bloated than previous versions.

    At the end of the day it is personal preference but I can’t as an independent recommend less secure solutions to my clients.

    Reply
  3. Oasisfleeting
    Oasisfleeting says:

    I don’t think open cart is even close to a fair comparison. If you look at the major drawbacks of opencart, which can be found in Google Groups and github issues the lead dev is not only closed to sensible suggestions like using encryption on passwords instead of just md5, he’s also a complete dick about it. He will literally cuss people out for suggesting extremely reasonable and standard practices to improve his cart.

    I don’t really have anything against opencart except the few very apparent security vulnerabilities, also the vqmod option is beautiful, but only works because of the light footprint opencart has. There is no way vqmod could be adapted to any real decent cms with a cart extension. (WordPress is not a cms)

    Thanks for all your great work on educatingE and the magmi ui.

    P.S. I think this article’s title should be changed to “why you should not use magento if you’re not a Web developer”

    Reply
  4. Brian
    Brian says:

    Matt

    I’m currently on the journey with you on UnderstandingE.

    This came up on page two of a google search on VAT for Magento.

    Might be an idea to update this and drive people to UE.

    BTW I’m loving the journey.

    Brian

    Reply
  5. FidelGonzales
    FidelGonzales says:

    Magento has its benefits. BUT. . . Magento is like an elephant attempting to tap dance in glass slippers. Whatever move the beast makes, it’s way too big to move easily and definitely not to be moved without the likelihood of breaking something.

    Reply
  6. jack
    jack says:

    Despite the negatives, Magento if all you need is a run of the mill e-commerce system.

    However, customizing Magento code is a different issue altogether. For example, I needed to make an marketplace system, which is on a different level than a shopping cart for a single store. There are Magento plugins out there you can purchase to give it marketplace functionality, but if you need to customize anything to your business requirements, you need to be ready for the nightmare that could very likely ensue.

    And this lesson isn’t just for Magento. Just because you can use an open-source solution doesn’t mean you should. Just because you don’t have to re-invent the wheel doesn’t mean that ‘re-inventing’ it or parts thereof isn’t the better decision.

    It depends on the business and amount to customizability required.

    Reply
  7. david
    david says:

    yes my friend, you seems right magento is free and open source but it is too hard to customize, but it also have many advance features, that cannot be used or set to work instantly, we to spend time or hire some talent for that.

    Reply
  8. Steve Walsh
    Steve Walsh says:

    Matt,

    once again you are answering the questions I am asking in my head! I’ve got a large Magento site coming online in the next few days and will be grappling with all of these issues. I guess that like everything Magento is just one that has to be figured out then runs smoothly, we’ll see though.

    With your mention of OpenCart here you are right on the money, it’s a great free solution that is feature packed and as long as it keeps updating will be viable e-commerce solutions for many years.

    Steve

    Reply
  9. Matthew Ogborne
    Matthew Ogborne says:

    Hi Theo,

    Thanks for the comment. This was posted in October, so not quite a year ;-)

    I’ve just scanned over the points, they are are still valid even now. Sorry I have no more updates/articles on Magento planned due to another project.

    Matt

    Reply
  10. Vincent
    Vincent says:

    Anyone know why Magento was not developed with many of it’s features separated into ‘Add-on modules’?
    I honestly don’t think every online shop needs all the features it provides.

    Reply
  11. dx3webs solutions
    dx3webs solutions says:

    It is a complete myth that Magento can’t be run on a shared system or needs a large VPS or dedicated. It just needs to be configured correctly from top to bottom ie from the OS, web servers, php to the store. Once everything is in place magento should take no more resources than any other cart. If you don’t believe me check out our Magneto demo store http://dx3webs.com/magento This runs along side many of our clients. There is nothing slow about any of the stores we host oh and free tech support specifically for magento.

    Reply
  12. Joseph Jerenstein
    Joseph Jerenstein says:

    i agree with your post, but to some people, there is no other option. magento is very buggy, and i made the mistake of altering core files when i first messed around with it when building a website for my boss. im too scared to upgrade and i am finding out more and more bugs and its getting to be really frustrating, not to mention, all of magento’s vast features sure are a memory hog. Im glad i used magento though, because now, i feel confident to tackle any CMS without being too intimidated after jumping through hoops when using magento.

    I will try to build open cart site as my next project to see if i can make the transition, thanks!

    Reply
    • Matthew Ogborne
      Matthew Ogborne says:

      Hi Joseph,

      Yes, I did the same too. Once you work out the structure, extending functions is really quite easy to do.

      I’d argue on the “buggy” part, its become a lot better in recent versions, I believe the general idea was “bung a lot of neat ideas & features together and sort the mess out later”, its now later and the unexpected features are being ironed out.

      Definitely not a tool to be dismissed lightly, that’s for sure.

      Matt

      Reply
  13. Will
    Will says:

    Nice post! All index actions can also be run using the indexer.php located in the shell folder, for reindexing the urls you do “php indexer.php –reindex catalog_url”

    Reply
    • Matthew Ogborne
      Matthew Ogborne says:

      Hi Will,

      Many thanks for that, wish I knew of that previously, although yours is far cleaner and saves using wget to call the update scripts.

      Matthew

      Reply
  14. Peter
    Peter says:

    Very interesting post. Just couple notes to your points:
    – import/export – try the unirgy.com uRapidFlow extension. There is also cart2cart service for Migration.
    For everyday import you can try eg running Jitterbit with core API to avoid programming your custom import script.
    – bulk update – there is mass update of attributes in core Magento and it is very useful – just select products and use Update Attributes action from the dropdown
    – server requirements – while shared hosting is usually not enough, many installations run nicely on virtual instances or Amazon EC2.
    – indexing – this was improved a lot in recent versions. For very big sites a Solr indexing might be a better solution – this is available in Enterprise Edition.

    Reply
    • Matthew Ogborne
      Matthew Ogborne says:

      Hi Peter,

      Many thanks for your comments.

      I checked the uRapidFlow extension, it starts at $610! *Getting back on my chair* It does look quite comprehensive and the dry-run import looks a great feature (anyone else going to own up to crucifying data before?), but my point is that a comprehensive import/export option is missing from Magento.

      The suggestion of Cart2Cart is a brilliant one, I have this on my research list. I’ll create a separate post once I am more knowledge this service offering (note here this is a 3rd party service, similar to the uRapidFlow extension). Having moved clients data several times now this could be a fab ‘cheat’.

      My experience is of Magento 1.4.X community edition, the only the reasons I could see for choosing a paid-for-version were either the offer of PCI, ‘support’ (which is extremely compelling in its own right) or better performance (including indexing).

      Matthew

      Reply
      • Abbas
        Abbas says:

        Hi Mat…

        Just stumbled upon this great article after a year almost… Thought I d share some info…

        I completely agree how shocking it is to believe that a software system of this magnitude doesnt have any basic import/export feature… However, we have been using this “magmi” tool for over a year and it is as powerful as it gets, allowing you to do ANY operation that you can do from the admin backend!
        Best part is, it comes free.

        Also… would love to get a review on magento GO from you sometime…

      • Matthew Ogborne
        Matthew Ogborne says:

        Howdy Abbas,

        Magmi is really good, once you work out how to get it to work with complex inventory :)

        Hmm… Magento go… much tidier backend, but doesn’t make it less complicated for users to learn and last time I looked the cache/indexing was hidden?

        Matt

      • Abbas
        Abbas says:

        yeah… magento go has auto-indexing and caching.. thats the reason you do not find that as an option to manually build the index/cache…

    • Damu
      Damu says:

      just purchased uRapidFlow extension as the client has $3M worth of sales and need to upgrade from community to enterprise. Hopefully it will go smooth after paying so much for 1 extension.

      Reply

Trackbacks & Pingbacks

  1. @pam_rave says:

    RT @MagentoDevs: Why you should use Magento: http://t.co/h3jRd57cA6 Why you shouldn’t use Mage: http://t.co/FnDaF0TtGN Mix of fair/unfair points via/ @GoMag…

  2. @pam_rave says:

    RT @MagentoDevs: Why you should use Magento: http://t.co/h3jRd57cA6 Why you shouldn’t use Mage: http://t.co/FnDaF0TtGN Mix of fair/unfair points via/ @GoMag…

  3. @pam_rave says:

    RT @MagentoDevs: Why you should use Magento: http://t.co/h3jRd57cA6 Why you shouldn’t use Mage: http://t.co/FnDaF0TtGN Mix of fair/unfair points via/ @GoMag…

  4. @pam_rave says:

    RT @MagentoDevs: Why you should use Magento: http://t.co/h3jRd57cA6 Why you shouldn’t use Mage: http://t.co/FnDaF0TtGN Mix of fair/unfair points via/ @GoMag…

  5. @pam_rave says:

    RT @MagentoDevs: Why you should use Magento: http://t.co/h3jRd57cA6 Why you shouldn’t use Mage: http://t.co/FnDaF0TtGN Mix of fair/unfair points via/ @GoMag…

  6. @pam_rave says:

    RT @MagentoDevs: Why you should use Magento: http://t.co/h3jRd57cA6 Why you shouldn’t use Mage: http://t.co/FnDaF0TtGN Mix of fair/unfair points via/ @GoMag…

  7. @MagentoDevs says:

    Why you should use Magento: http://t.co/h3jRd57cA6 Why you shouldn’t use Mage: http://t.co/FnDaF0TtGN Mix of fair/unfair points via/ @GoMag…

  8. […] I covered both Why You Should Not Use Magento and also Why You Should Use Magento and I can sum these up into one line, if you give it the […]

  9. @wvrknight says:

    Why You Should Not Use Magento http://t.co/lYJ5zBCrKm Interesting article by @matthewogborne

  10. @day2dayebay says:

    Why You Should Not Use Magento: This is part 2 of a two part series on Magento, in this first par… http://t.co/xIpGWyQsFx @lastdropofink

  11. @mnc404 says:

    RT @chill_creations: Interesting thoughts: Why To Stick to Virtuemart, HikaShop etc And Why You Should Not Use Magento http://t.co/0wtCQ6GV

  12. Interesting thoughts: Why To Stick to Virtuemart, HikaShop etc And Why You Should Not Use Magento http://t.co/0wtCQ6GV

  13. @bobbloom says:

    RT @PolishedGeek: Been told Magento is better than #Joomla carts? Read this: RT @lastdropofink: Why You Should Not Use #Magento – http://t.co/iUSMYBsa

  14. Been told Magento is better than #Joomla carts? Read this: RT @lastdropofink: Why You Should Not Use #Magento – http://t.co/iUSMYBsa

  15. @kkbrough says:

    RT @lastdropofink: Why You Should Not Use #Magento – http://t.co/QanVoppD

Leave a Reply

Want to join the discussion?
Feel free to contribute!

Leave a Reply

Your email address will not be published. Required fields are marked *