Popularity is one of the first factors a small business should use to evaluate or decide on an ecommerce system. However, many other factors are also important. If you have a small business, hopefully the following information will help you find a good ecommerce system.
The chart above shows the popularity for five ecommerce solutions as measured by the number of Google searches associated with them. Since a large decrease in the popularity of osCommerce, these carts have taken over the bulk of the ecommerce space. Magento is largely the most popular, presumably due to its mammoth feature set and the extent to which it can be customized.
PrestaCart is the next popular, followed by OpenCart and WooCommerce, and last is VirtueMart.
The trends for VirtueMart and WooCommerce could be due to the popularity of their underlying content management system (CMS). While the other three carts are not built on top of some other CMS, VirtueMart is a plugin for the “Joomla!” CMS, and WooCommerce is a plugin for WordPress. WooCommerce is rising sharply in popularity, most likely due to the fact that WordPress has dominant popularity in the “build your own website with a CMS” market. VirtueMart popularity seems to be following the waning popularity of Joomla.
From a technology standpoint, WooCommerce seems like a good fit for a small business with little to no IT staff who needs to sell a few thousand items.
Magento is the most popular, presumably due to its mammoth feature set and amoeba-like flexibility. However, the flexibility and huge feature set come at a subtle price. First, changes takes longer. From creating the cart, to adding products, to making changes to the user interface, the sheer size of Magento requires hefty prior experience to wade through it all and make changes. For instance, the non-standard XML-based layout structure make for much more PHP code than is easily followable by an experienced developer who is new to Magento. Second, Magento requires a large amount of server resources. Magento is built with the Entity Attribute Value (EAV) database design pattern. This makes getting information from the database (which is normally a slow operation) take a painfully large amount of time. This is one of the reasons that Magento is generally used in a multi-server architecture. Magento is a good fit for a large, established business which needs more fine-grained control of their shopping cart in order to grow and which has enough money for developers who mainly develop in Magento.
While PrestaShop is the second most popular, it uses the SMARTY templating system. This templating system only makes sense for developers who don’t know or follow the well accepted and simple model-view-controller (MVC) application structure. Since all five of the subject carts are built on top of the PHP language (the most widely used, server-side language on the web), which itself is a templating language, it doesn’t make sense to use a second templating language on top of a pre-existing templating language, unless you are using SMARTY for the way it separates template files from the rest of the application. However, since the MVC application structure uses the view files in the same way that the SMARTY templating system uses its template files, there is no reason to make development time longer and more comlplex by using SMARTY, regardless of the size of the business.
OpenCart uses the MVC application structure, which could decrease up-front development and maintenance costs. While it doesn’t have the mammoth feature set or flexibility of Magento (possibly a good thing), it does have a large library of plugins and themes, enough to start to rival that of Magento. It continues to grow steadily in popularity. OpenCart seems like it could be the optimal pick for a small business.