There are a lot of different content management systems that will help you run an online store. Two of the most popular choices are Magento and OpenCart. Both of these systems can run your store, take payments, and alert you when you need to ship those items. Everything you'd need from a store! Well, not exactly. There are many different aspects of each of these platforms that you're going to have to consider. Deployment speed, hosting cost, learning curve, ease of customization, features, and – most importantly – SEO are all important facets to consider.

Deployment – All of my products are ready to sell, how quickly can I make money?

You'd like to start selling your products yesterday, so which option will allow you to get everything set up and ready to go quickly and easily?

OpenCart is relatively simple to set up. Out of the box, it provides you with a default theme and a back end that provides you with an easy way to customize and organize your products into categories. The most difficult part of working with OpenCart is figuring out how to create a page. In OpenCart, they are not called pages, but information. You can create one by going to the back end and navigating to Catalog → Information in the admin menu.

Magento is a little different. Its learning curve is more difficult and requires you to make mistakes beforehand. Without making these mistakes, you may find yourself completely redoing your entire product base. Magento is ready to go, out of the box, but getting your products listed and even setting up pages is a bit difficult.

Creating a Theme – Your brand is most important

Let's face it, your brand is the most important thing that your company has. It's your identity, after all! So, your theme has to reflect your brand. Which one of these systems is easiest to theme in order to match your brand?

OpenCart has a relatively easy theme system. You can find the entire default theme in the catalog/view/theme directory. Once there you'll see a folder named 'default,' this is your default theme. You can copy this folder and rename it in order to begin making your custom theme. All of the top level portions of your theme are in the 'common' directory. This holds the header, footer, sidebars, etc. You will also find your stylesheets and images here.

Magento is a bit more difficult when starting from scratch. First off, you can't just download Magento Community Edition, you have to sign up and create an account in order to receive that privilege. Once you have the files downloaded and installed, you'll be met with a series of directories. All of the files building your layout are in app/design/frontend. You will want to start looking in the 'base' directory here, as the default doesn't actually contain much. The reason for this is so the system can grab a file that it needs from 'base' if it does not exist in the current theme's directory.

Once you're in the base directory, open up the default folder. Here, you'll see three unassuming directories. You will only need to worry about 'layout' and 'template' to begin with. As alluded to before, the template directory contains all of the files that you'll need to build your site's structure. The layout directory contains XML files that tell the system exactly how to use these structure files and where to put them. These XML files can get convoluted quickly, especially if you're just trying to accomplish something as easy as placing a slideshow above the content and below the header of your site.

That's great, there's a bunch of files here that I can copy and paste into a new directory to play with. But how exactly do I style them? You'll find all of the image and stylesheet files in skin/frontend/base/default. Remember to adjust the title of directories to the name of your theme where applicable.

As you can see, Magento is exceedingly more difficult to begin theming than OpenCart. However, Magento does allow you more control, and it does give you better options. You can even be sure that you're handling your microdata well, which is important when it comes to SEO.

Search Engine Optimizations – I need people to find my product!

Both systems have regular search engine enhancement capabilities, what it ultimately comes down to is your ability to optimize your own content. On pages and product descriptions, you have to know where to put your semantic tags, your headers, and which content to emphasize in a search engine's eyes. What usually helps with this is search engine friendly URLs. Unfortunately, OpenCart does not provide these where Magento does.

That's about the only advantage to SEO that Magento has over OpenCart. Everything else comes down to the way that you've styled your theme and your content is laid out. Hopefully, you have the money and the opportunity to employ a professional for that part.

Microdata is an extremely important part optimizing your site. Have you ever searched for a product in Google and instead of finding websites, across the top you find products being sold from different sites? The way that this is accomplished is through Schema or Microdata. I won't give you the full run-down of it here, as it deserves its own article, but I will link you to a few pages that will help.

To view the 'Product' microdata information on Schema.org - http://schema.org/Product
This website creates the microdata for you based on what you input - http://schema-creator.org/product.php

No matter what you decide, and how you use it, I encourage adding a WordPress install in a subdirectory. WordPress is the most friendly to search engines and it ensures an easy way for you to write articles about your products. Keeping an active blog ensures that the engines will crawl your site more frequently, as they want to keep their data updated.

Features – Can't I add one of those widgets I've seen on Amazon?

Many businesses and clients want to have every cool feature they've seen on every great website out there. Your ability to make this happen falls squarely on the capabilities of the system you're using.

Magento comes with a variety of great features already installed. Its search functionality is far superior to OpenCart's, and a host of cool extensions are developed for the system. Magento is one of – if not THE – most popular ecommerce solutions available. Because of this, developers consistently create new features for Magento, and it has a host of answers to any possible question online. One of the most impressive Magento features is that you can incorporate eBay, PayPal, Mil, Where, RedLaser, GSI Commerce, and Magento together.

OpenCart is making significant headway in functionality. It regularly creates new features and deploys them for its users. The search function does leave much to be desired, but it gives you results nonetheless. OpenCart does have extensions and plugins available from their devout community, and you'll find that many of them will serve a great purpose to you.

Resources – Just how much is free going to cost me?

No matter what you choose, you're going to have to host your ecommerce website. So which option is going to be the most cost-effective?

OpenCart is a lightweight system that requires very little in the way of resources. You'll need exactly the same resources for a WordPress install. Because of this, OpenCart is relatively easy to install, deploy, and have your products selling quickly. The problem is, OpenCart can't handle many products, and skimping on bandwidth will limit the amount of users that can visit your site.

Magento is extremely resource-intensive and it costs a lot to host this system. At an average of $50/month, hosting a Magento site can set you back a great deal. However, Magento employs some impressive security, PCI compliance, and can handle nearly any amount of products that you put into it. It's a secure platform, but it takes a lot in order to work correctly.

You will find a lot of complaints online regarding Magento's speed. Most complaints come from users who haven't hosted their Magento install correctly. Some of them, however, are legitimate complaints due to the way that Magento stores old URLs. If you have an error in the filepath of an image on your Magento site, the entire site will slow to a crawl. The reason for this is because Magento keeps track of all of the old URLs and will search them several different ways. Only after returning no results in seceral searches will Magento return a 404 error.

There are ways to clean up your Magento database in order to speed up your site, but properly scripting it can be even more useful.

Final Verdict

Essentially, you're going to want to go with what you need here, not what you're hoping to have. If you're just starting out, I would highly suggest OpenCart. The cost is effective, it can handle a fair amount of products, and it's customizable to your needs. If you're looking for more hits from search engines, just keep up a blog and start a social media campaign. Just employing Magento won't help you achieve the top result in every search query.

If you're a medium to big business looking for another means of income, and if you can afford to have someone employ a theme, Magento is definitely the route to go. Magento can store a large array of products and it is sure to provide the features you need to keep secure and keep making money.

Either way, both of these ecommerce solutions are very good and will help you build your online store. Your decision needs to come down to the needs of your business or client.