We are going to discuss some of the differences between the major players and in doing so highlight the primary requirements for any e-commerce platform.
What do e-commerce websites need to do?
The main requirements you have are:
- Add Products
- Organise products in to categories
- Add product specifications/attributes e.g. Colour or Size
- Be able to create variable products e.g. a t-shirt and for a customer to be able to select its Size and Colour
- Cart functionality so customers can add products to a cart and checkout
- Options for Payment gateways
- Options for shipping
- Customer accounts management
- Customer orders management
All e-commerce platforms offer these basic suite of functions. The main difference between them is how they handle them, what additional functions they have built in, the ease with which you can manage them and the associated costs of running the websites. We can help with e-commerce website design and offer guidance on setting up an e-commerce business but ultimately the correct platform for you will be the one that aligns with your business goals the most.
The main platforms we are going to integrate into this discussion are Woocommerce, Magento, Opencart, Prestashop and Shopify.
Product Managment
The platform that is best suited to your business will depend on you products, how customers usually expect them to be present and the size of your catalogue. All the platforms will handle them but some may have advantages over others. If you have a simple type of product like a book it is generally available in one form, you may sell hardback or softcover versions and that is about it. But some products are more complex, they may vary in a number of different aspects like colour and size.
How they handle variable products
The more variations a product has the harder it can be for the platform to manage.If you have 10 sizes and 10 colours that is 100 different variations if it is 10 colours, 10 sizes and 10 styles that is 1000 variations. So the number of variations can impact how easy it is to manage your product catalogue.
| Platform | How Variable products are created | Must combinations become individual variants? |
|---|---|---|
| WooCommerce | Attributes → variations | Yes, where that combination is to be sold/managed as a variation |
| Magento | Configurable product → associated simple products | Yes; variants are separate simple products |
| PrestaShop | Attributes → combinations | Yes, combinations are generated/managed |
| OpenCart | Independent product options | No – key distinction |
| Shopify | Options → variants | Yes – options define the variants |
The different platforms vary in the way they handle variable products. The simplest is Opencarts model which does not create individual variants so the overheads are less. This makes it more suitable to products with 10,000s of variations. The down side is that using individual SKUs and prices for the different options is not manageable. The other end of the spectrum is Magento that has explicit individual simple products for each variation that are then linked to a configurable product. This allows for very good management of individual products but it can be burdensome to manage them if you have many variations although they can inherit content from their parent configurable product. where in the middle is the Woocommerce/Prestashop/Shopify model that creates variations linked to a Variable product that can be managed from that one product page. They also allow for variant SKU, price and stock etc.. Of the three Shopify is limited to only 2048 variants though, it has a hard limit and is not as flexible as Woocommerce and Prestashop
Catalogue Size
Generally speaking they will all handle large catalogues of 50-100k products. For truly large catalogues Magento and shopify will perform better. Magento as a more advanced indexing system and shopify as a proprietary hosted solution automatically scales resources. Shopify does start to limit the number of variants that can be created in a day though once you get past 500k variants. So if you have a very large catalogue the Magento and shopify are best. Also the size of your product variations will impact this except for opencart that manages variations differently.
Editing and managing products
So all of them make adding and editing product quite easy. There are considerations around variations, as discussed earlier, but apart from that there are considerations around bulk editing, adding content to the page and product importation.
In terms of the user interface to add product description content Magneto has the only official block structure whereby content can be added easily with a drag and drop structure. Woocommerce can use WordPress’s block structure although this is not officially supported yet but can be turned on. But both Woocommerce and Shopify support a template structure that can use drag and drop blocks for adding different sections to the product page e.g. reordering content. Of the two Woocommerce’s is much more advanced. Both Prestashop and Opencart use WYSIWYG text editors. The display on the front end is determined by the themes template files which need to be edited with a text editor. The WYSIWYG editors allow for some page content formatting but it is limited. Opencart is the most limited of all. There are generally 3rd party page builders available for all of them but for Woocommerce and Magento and Shopify this is redundant to a large extent and there is a danger that you are just adding extra bloat.
Bulk Editing
Bulk editing products is very handy. say you want to change the price on 10 products at the same time without going to each individual product. This can be achieved in two ways. Either by bulk selecting a number of products and then changing a value or by product importation.
All the platforms support bulk selection of products apart from opencart. The rest have the ability to filter/search from products and selection of multiple products. You can then alter/edit certain values of the selected group. When it comes to variations things do change. Whilst bulk edit features for variations exist in all of them (apart from Opencart) at the level of the parent product only Magento and Shopify support bulk edit of variations at the level above this on the admin interface although there is a plugin for woocommerce for this.
The other important function is you will want to be able to bulk import products, with a csv file. All platforms offer this natively apart from opencart although there are extensions that can be used or an extension can be developed for this. Shopify is also a bit limited when it comes to product exports as it cannot handle product meta data very well and importation can have limits if the number of variants existing already is 500k or above.
Prestashop and Woocommerce have the most versatile importation structure and support field mapping whereas Magento and Shopify require you follow the field headings and structure explicitly.
Order Management
All e-commerce platforms need to provide the basic tools for managing orders once they have been placed. You need to be able to find an order, see what has been purchased, view the customer’s details and payment information, process the order and ultimately dispatch it.
For a straightforward online shop there is relatively little difference between the platforms. The differences start to become important when customers regularly change orders, orders are shipped in several stages, you process large numbers of orders at once or your website needs to communicate with warehouse, accounting or other business systems.
Editing Orders
Customers will occasionally want to change an order after placing it. They may have entered the wrong delivery address, want to change a quantity or decide to add another product.
All five platforms allow basic order information to be edited, but they generally become more restrictive once payment has been taken or products have been dispatched. This is sensible because changing an established transaction can cause problems with payments, stock and accounting records.
PrestaShop and Shopify are more flexible where modifying existing orders is a regular requirement, particularly when changes result in additional payments or refunds. WooCommerce and Magento are more restrictive once an order has progressed beyond its initial stages, although this provides greater protection for the original transaction.
For most stores this difference will be relatively minor. It becomes important for businesses where customers regularly telephone to add products or otherwise alter an order after payment.
Manual and Telephone Orders
All five platforms allow orders to be created without the customer placing the order through the website. This is useful for telephone sales, trade customers and orders received by email.
WooCommerce, Magento, PrestaShop and Shopify all provide good facilities for creating these orders, selecting an existing customer and adding products, shipping and payment information. Shopify calls these Draft Orders, while Magento provides a more extensive assisted-order process.
OpenCart’s functionality is more basic, but is adequate where manually creating orders is only an occasional requirement.
There is therefore little practical difference for businesses that only occasionally take telephone orders. Magento and Shopify have an advantage where staff regularly create and manage orders on behalf of customers.
Order Statuses and Workflow
All five platforms allow an order to move through different statuses as it is processed. For many stores this might simply be:
Pending → Processing → Dispatched → Complete
If this is all that is required, there is relatively little reason to choose one platform over another.
The difference appears where a business has a more complicated workflow, perhaps requiring:
Awaiting Payment → Approved → Picking → Awaiting Stock → Part Shipped → Dispatched → Complete
Magento, PrestaShop and OpenCart provide more flexibility for creating or managing additional order statuses in their standard installations. PrestaShop can also associate actions with a status, such as generating an invoice or sending an email.
WooCommerce and Shopify provide order workflows designed around the normal requirements of online retail and are very easy to use within those workflows. More specialised business processes may require plugins, apps or automation.
Consequently, custom order statuses are unlikely to matter to a conventional retailer but can be important for manufacturers, trade suppliers and businesses where an order passes through several internal departments before being completed.
Invoices, Shipping and Order Documents
All five platforms provide the functionality needed to process and dispatch normal orders. The differences become more apparent where orders are regularly split into several deliveries or require more extensive documentation.
Magento, PrestaShop and Shopify provide comprehensive functionality for handling invoices, fulfilment and orders that are processed in stages. This makes them particularly suitable where products may be dispatched separately or an order involves more than one delivery.
WooCommerce and OpenCart provide the functionality required for straightforward order processing, but extensions are more commonly used for features such as PDF invoices, packing slips, shipment tracking and more sophisticated partial-shipment management.
If most orders are paid, packed and dispatched together, this distinction is unlikely to be important. Businesses regularly part-shipping orders or requiring more extensive order documentation should pay greater attention to the functionality included as standard.
Refunds and Returns
All five platforms can deal with full and partial refunds. The payment gateway being used will determine whether the refund can be sent automatically to the customer or needs to be processed separately.
The more significant difference is returns management.
PrestaShop, OpenCart and Shopify include dedicated functionality for managing returned products rather than simply recording a refund. This is particularly useful where returns need to progress through a process such as requested, authorised, received and refunded.
WooCommerce and Magento Open Source can handle the financial side of refunds but require additional functionality for a more comprehensive RMA or returns-management process.
For businesses where returns are unusual this difference is unlikely to be significant. For clothing, footwear and other sectors where returns and exchanges form a substantial part of daily order processing, having the functionality built into the platform can be a considerable advantage.
Bulk Order Management
The number of orders being processed each day can have more impact on administration than the total number of orders stored by the website.
All of the platforms provide searching and filtering so that staff can find orders and process them. They also provide varying levels of bulk actions so that common tasks do not have to be performed individually against every order.
WooCommerce, PrestaShop, Magento and Shopify all provide useful bulk order-management facilities. Magento and Shopify have an advantage where large numbers of orders are being processed, with more extensive tools for batch processing, documentation and fulfilment.
OpenCart’s native bulk functionality is more limited. This is unlikely to matter for a store processing a relatively small number of orders but becomes more significant as daily order volumes increase.
At sufficiently high volumes, however, businesses commonly stop processing every order manually through the e-commerce administration interface and instead transfer them to dedicated warehouse or order-management software.
Order Import, Export and Integration
Most businesses will eventually need order information outside the e-commerce website. This might simply mean exporting orders for a spreadsheet or accounting package, but larger businesses may need orders automatically transferred to warehouse, accounting, shipping or ERP systems.
For simple exports there is relatively little practical difference once extensions and apps are taken into account. The more important distinction is how easily the platform can be integrated with other systems.
Magento, WooCommerce and Shopify have the strongest API and integration ecosystems of the five and are generally the better choices where extensive automated integration is required. They have mature APIs and large numbers of existing integrations with common business applications.
PrestaShop also provides API access and can be integrated with external systems, but its API environment is less mature and is currently moving from its older Webservice system towards its newer Admin API.
OpenCart has the weakest core external API functionality, meaning more complicated integrations are more likely to depend on extensions or custom development.
This difference may be irrelevant to a smaller business that manages orders entirely through the website. It becomes increasingly important when the e-commerce website is only one part of a larger system involving stock control, warehouses, couriers, accounting software or an ERP.
Order Volume
All five platforms can handle substantial numbers of orders, so there is little value in assigning an arbitrary maximum order count to each platform. With the self-hosted platforms, hosting resources, database performance, extensions and integrations will usually determine the practical limit.
WooCommerce, Magento, PrestaShop and OpenCart all use database structures capable of maintaining large order histories. WooCommerce has also significantly improved this area through High-Performance Order Storage, which moves orders into dedicated WooCommerce tables.
Magento generally has an advantage at the upper end because it has been designed around larger and more complicated e-commerce operations, although achieving that scale also requires considerably greater server resources and technical administration.
Shopify takes a different approach because the infrastructure is provided as part of the service. The merchant therefore does not need to scale the database, web servers or caching infrastructure as order volumes increase.
For very high order volumes the more important question is often not how many orders the platform can store, but how efficiently they can be processed. A business processing thousands of orders may transfer them automatically into warehouse and ERP systems rather than manage them individually through the website. At that point the platform’s API, bulk-processing and integration capabilities become more important than its theoretical order capacity.
Customer Management
All of the platforms allow customers to create accounts where they can manage their contact and delivery details, view previous orders and access information relating to their purchases. Administrators can also search for customers, view their order history and edit their account information.
For a conventional retail store there is therefore relatively little difference between the platforms. More significant differences appear where customers need to be divided into different groups, offered different prices or managed as trade or business customers.
Customer Groups and Pricing
Being able to group customers is useful where different types of customer need to be treated differently. You may, for example, have retail, trade and wholesale customers who receive different prices, discounts or purchasing terms.
Magento, PrestaShop and OpenCart include customer groups as a normal part of their customer management. These can be used to separate different types of customer and, to varying degrees, influence pricing, discounts and other store behaviour.
WooCommerce has a simpler customer model in core. WordPress user roles provide some grouping, but more sophisticated wholesale pricing, trade accounts and customer-specific pricing normally require a plugin.
Shopify also provides customer segmentation and tagging, which is very useful for organising and targeting groups of customers. More advanced wholesale and B2B functionality, however, is more dependent on apps or Shopify’s higher-level services.
For a conventional B2C store these differences may have little impact. For a business selling to both retail and trade customers, built-in customer grouping and pricing functionality can become much more important.
Managing Customer Accounts
The normal customer-management requirements are handled well by all five platforms. Administrators can find customers, view their contact details and order history and make changes to their accounts.
Customers can similarly manage their own addresses, account details and previous orders through the website. Password management and account recovery are also standard functionality.
Magento provides the most extensive customer record and account-management functionality as standard, reflecting its suitability for larger and more complex stores. For most smaller and medium-sized retailers, however, the additional functionality is unlikely to make a significant difference to day-to-day customer management.
The more important consideration is often what additional information your business needs to store against a customer. If you need account numbers, VAT information, credit limits, sales representatives, approval status or other business-specific information, all of the platforms can be extended, but the amount of additional development or software required will vary.
Trade and B2B Customers
The largest differences appear when customer accounts are being used for B2B rather than conventional retail sales.
Requirements might include trade-only prices, quantity discounts, purchase orders, credit accounts, customer approval or different product catalogues for different customers.
Magento Open Source provides a strong foundation for developing this type of functionality, but it is important not to confuse it with Adobe Commerce, which includes additional B2B features that are not part of Magento Open Source.
PrestaShop and OpenCart already include useful customer-group functionality that can provide a good starting point for trade pricing and different types of customer.
WooCommerce has a very large selection of wholesale and B2B plugins, so this functionality is readily available but is not generally part of WooCommerce itself.
Shopify can also support trade and wholesale selling through apps, while its more extensive native B2B functionality is associated with Shopify Plus.
For most normal online retailers customer management is therefore unlikely to determine which platform you choose. It becomes a much more important consideration where different customers need different prices, products, payment terms or purchasing rules, particularly for B2B and wholesale websites.
Shipping, Taxes & Payment Gateways
Every e-commerce platform needs to calculate shipping and taxes and provide a way for customers to pay for their orders. All five platforms provide the basic functionality required for a conventional online store, including multiple shipping methods, tax rates and payment gateways. The differences become more important when a business has complicated shipping rules, sells internationally or requires a less common payment provider.
Shipping
All five platforms allow different shipping methods and charges to be configured, with rules generally based around the customer’s location and the products being purchased. Common requirements such as free shipping, flat-rate shipping and different charges for different geographical areas can therefore be accommodated by all of them.
The differences become more apparent with complicated shipping requirements. A business might need to calculate shipping according to weight and order value, exclude particular products or locations, use different couriers for different products or obtain live prices directly from a courier.
Magento and PrestaShop provide relatively comprehensive shipping configuration as standard and can accommodate more complicated rules without immediately requiring additional software. WooCommerce, OpenCart and Shopify provide the functionality required for conventional shipping, but more complex rules commonly require plugins, extensions or apps.
This is not necessarily a disadvantage because all five platforms have integrations available for major couriers and shipping services. The important consideration is whether your particular shipping rules and courier integrations are available and what additional costs are involved.
Taxes
All five platforms can calculate taxes according to the customer’s location and the products being purchased, including situations where different products are subject to different tax rates.
For a UK business selling primarily within the UK, VAT requirements can therefore be handled by any of the platforms without the tax system being a major factor in choosing between them.
The differences become more significant for international selling. Tax rules can become considerably more complicated when selling into different countries and jurisdictions, particularly where the seller becomes responsible for collecting local sales taxes.
Magento, WooCommerce and PrestaShop provide flexible tax configuration, while Shopify can automate more of the process through its hosted tax services. External tax services and extensions are also available for all of the major platforms where the business has more complicated international requirements.
For most smaller UK retailers, however, the important requirement is simply that VAT rates, zero-rated products, prices including or excluding VAT and the customer’s location can be handled correctly, which all five platforms support.
Payment Gateways
The choice of payment gateway determines how customers can actually pay for their orders. Common options include debit and credit cards, PayPal, digital wallets, bank transfer and increasingly services such as Klarna and other buy-now-pay-later providers.
All five platforms support the major payment providers, either directly or through plugins, modules, extensions or apps. WooCommerce, Magento and Shopify have particularly large payment ecosystems, but PrestaShop and OpenCart also support the payment providers normally required by UK businesses.
The difference is therefore more likely to arise when a business needs a particular specialist payment provider. Before choosing a platform it is worth checking whether an actively maintained integration exists and whether there is an additional licence or transaction cost.
Shopify requires particular consideration because it operates its own Shopify Payments service. Using Shopify Payments provides the simplest integration and avoids Shopify’s additional third-party transaction fees. If another payment provider is used, additional Shopify transaction charges can apply depending on the plan. This is different from the self-hosted platforms, where WooCommerce, Magento, PrestaShop and OpenCart do not normally charge an additional percentage simply because a particular external payment gateway is being used.
For most businesses all five platforms will therefore provide the shipping, tax and payment functionality they require. The differences become important where shipping rules are unusually complicated, the business sells into multiple tax jurisdictions or a specific payment provider must be used. These requirements should be identified before choosing a platform because they can affect both the amount of additional software required and the ongoing cost of operating the store.
Plugins, Extensions & Apps
No e-commerce platform will provide every feature a business might require. Additional functionality can be added using plugins in WooCommerce, extensions or modules in Magento, PrestaShop and OpenCart, and apps in Shopify.
All five platforms have established add-on ecosystems covering functionality such as payment gateways, shipping, accounting integrations, subscriptions, product feeds, marketing and more specialised product or order-management requirements. The main differences are the number and quality of add-ons available, how easily they can be installed and the ongoing cost of using them.
Availability and Installation
WooCommerce and Shopify have the largest ecosystems and it is generally easy to find an existing solution for common requirements. PrestaShop and Magento also have extensive marketplaces, while OpenCart has a large selection of extensions despite its smaller overall market.
Installation is generally simplest with WooCommerce, PrestaShop, OpenCart and Shopify, where add-ons can normally be installed and configured through the administration interface. Magento extensions are also readily available, but installation and upgrades are more technically involved and will commonly be carried out by a developer using Composer and the command line.
The size of the ecosystem can be important. A widely used accounting package, courier or marketing service is more likely to provide and maintain an official integration for one of the larger platforms. With more specialised or regional services it is therefore worth checking that the integrations your business requires actually exist before choosing the platform.
Costs and Licensing
The cost of additional functionality can vary considerably and should be included when comparing the overall cost of running each platform.
WooCommerce has a mixture of free and commercial plugins. Commercial plugins are commonly purchased on an annual licence which provides updates and support. If the licence is not renewed the plugin will often continue to function, although access to updates and support may be lost. The large WordPress ecosystem also means there are often several competing plugins for the same requirement, including free alternatives.
Magento, PrestaShop and OpenCart similarly have a mixture of free and commercial extensions. Many are available for a one-off purchase, although support, updates or newer subscription-based licensing may carry additional costs. Magento extensions also tend to have a higher overall implementation cost because installation, testing and upgrades are more likely to require developer involvement.
Shopify’s model is noticeably different. Although free apps are available, many commercial Shopify apps are charged as a monthly subscription for as long as the functionality is required. Some apps also vary their charges according to order volume, usage or the Shopify plan being used. Adding several relatively inexpensive apps can therefore create a significant recurring annual cost.
This means that the purchase price of an add-on should not be considered in isolation. A £100 extension that can be used for several years is a very different cost proposition from a £20-per-month app that will cost £720 over three years.
Reliance on Add-ons
The number of additional plugins or apps required is also important. Adding functionality through an extension is perfectly normal, but every additional component introduces another piece of software that needs to be maintained and may potentially conflict with other extensions or platform updates.
This is particularly relevant to WooCommerce, where almost any requirement can be met with a plugin but it can be tempting to install too many. Magento and PrestaShop include more e-commerce functionality in their core installations, which can reduce the number of extensions required for more complicated stores.
Shopify avoids many of the traditional software compatibility problems because the underlying platform is controlled by Shopify, but relying on a large number of apps introduces a different dependency. The store is dependent on those external services continuing to operate, remain compatible and maintain acceptable subscription pricing.
OpenCart has a large and relatively inexpensive extension ecosystem, but more functionality needs to be added through extensions than with some of the other platforms, so the quality and continued maintenance of those extensions should be considered.
All five platforms can therefore be extended considerably beyond their standard functionality. The important comparison is not simply how many plugins, extensions or apps are available, but how many your particular store will require, how well they are maintained and what they will cost over the lifetime of the website.
Development, Customisations & Integrations
Sooner or later most established e-commerce websites require something that is specific to the business. This might be a connection to an accounting or stock-control system, a bespoke product configurator, specialist pricing rules or simply a change to the way part of the checkout operates.
All five platforms can be customised and integrated with external systems, but there is an important distinction between the self-hosted platforms and Shopify.
Custom Development
WooCommerce, Magento, PrestaShop and OpenCart are open-source platforms where the website owner has access to the application code and database. Developers can create plugins, modules or extensions, alter templates and integrate directly with the underlying system.
This provides considerable freedom. If a business has an unusual requirement, it can generally be developed even where no existing extension is available.
WooCommerce is probably the easiest of the four to develop for and has a particularly large pool of WordPress and WooCommerce developers. Its extensive system of hooks and filters means functionality can often be changed without modifying the core software.
PrestaShop and OpenCart are also relatively accessible PHP platforms and can be extensively customised through modules and extensions. Their smaller developer communities, however, can make it more difficult to find developers with specific platform experience.
Magento provides the most extensive development framework of the self-hosted platforms but is also considerably more complicated. Its module architecture is designed to support substantial customisation without modifying the core application, but development normally requires more specialist knowledge. iDigLocal has many years of Magento website development work. Consequently, equivalent bespoke development will often cost more on Magento than on WooCommerce, PrestaShop or OpenCart.
Shopify and Custom Development
Shopify can also be extensively customised, but the developer is working within a platform controlled and hosted by Shopify rather than having access to the complete underlying application.
Themes can be developed using Shopify’s Liquid templating system and additional functionality can be created through apps, extensions and APIs. This provides considerable scope for custom development and is sufficient for the vast majority of normal e-commerce requirements.
The limitation appears when a business needs to change something that Shopify does not expose through its themes, APIs or extension framework. With an open-source platform a developer can potentially change the underlying application; with Shopify the development has to work within the functionality Shopify makes available. If you need custom shopify development and theme design we can help.
This makes Shopify less flexible for highly unusual requirements.
Integrations
Connecting an e-commerce website to other systems can be just as important as changing the website itself. Common integrations include accounting software, ERP systems, warehouse management, couriers, CRM systems, marketplaces and product suppliers.
WooCommerce, Magento and Shopify have particularly mature APIs and integration ecosystems, making them strong choices where the store needs to exchange information automatically with other systems. PrestaShop also provides API functionality and is developing its newer Admin API, while OpenCart’s standard API is more limited and complicated integrations are more likely to require custom development.
Magento is particularly suited to large or complicated integrations and provides facilities designed for substantial automated data exchange. WooCommerce provides a very flexible REST API and webhook system that is relatively straightforward to develop against, while Shopify has extensive APIs and webhooks but integrations must operate within Shopify’s API limits and platform rules.
For common services the difference may be irrelevant because an existing integration will normally already be available. The quality of the development environment becomes much more important where the business uses bespoke ERP, stock, manufacturing or other internal systems.
Customisation and Long-Term Maintenance
The ability to customise a platform does not necessarily mean that every possible customisation is a good idea. The more bespoke code a website contains, the more code has to be maintained, tested and kept compatible with future platform updates.
This applies to all of the self-hosted platforms, but is particularly significant with Magento because of its complexity. WooCommerce, PrestaShop and OpenCart are generally less expensive to develop and maintain, although heavily customised installations can still become difficult to upgrade.
Shopify reduces this maintenance burden because Shopify maintains and updates the underlying platform. Custom themes, apps and integrations still require maintenance, but the merchant is not responsible for upgrading the core e-commerce application or server environment.
The trade-off is therefore between control and responsibility. WooCommerce, Magento, PrestaShop and OpenCart provide access to the complete application and allow almost unrestricted customisation, but the website owner is also responsible for maintaining those customisations. Shopify places more restrictions on what can be changed, but removes much of the responsibility for maintaining the underlying platform.
For businesses with conventional e-commerce requirements this difference may not be particularly important. For a business whose website needs to integrate deeply with existing systems or implement unusual business processes, the flexibility and long-term development costs of the platform should be considered before making a decision.
Hosting and Server Requirements
Hosting is one of the clearer differences between the platforms. WooCommerce, Magento, PrestaShop and OpenCart are self-hosted, meaning you choose where the website is hosted, while Shopify includes hosting as part of its service.
Being self-hosted does not mean that you have to manage your own server. Hosting can range from inexpensive shared hosting through to managed VPS, cloud and dedicated servers. With managed hosting, the hosting company can take responsibility for much of the underlying server administration, updates, monitoring and backups.
Hosting the Self-Hosted Platforms
WooCommerce, PrestaShop and OpenCart can all run on conventional shared hosting, making them relatively inexpensive to host when starting out. As the catalogue, traffic and number of orders increase, they can be moved to more powerful hosting.
A growing store might therefore progress from:
Shared Hosting → Managed VPS/Cloud Server → Managed Dedicated Server
Magento is different because it has significantly greater server requirements and also depends on additional services that are not normally provided with basic shared hosting.
A Magento server requires the normal web server, PHP and database environment but also uses additional services such as OpenSearch for catalogue search and indexing. A production installation will also commonly use services such as Redis for caching and sessions, while larger installations may use message queues and other supporting services.
This makes the Magento hosting environment more complicated than WooCommerce, PrestaShop or OpenCart. It generally requires a VPS, cloud or dedicated server where these services can be installed and configured, rather than conventional shared hosting.
This does not mean that the business needs to administer the server itself. Specialist Magento hosting and managed servers are available where the hosting provider maintains the underlying server and supporting services. The difference is primarily that the server specification and hosting cost will normally be higher.
Shopify Hosting
Shopify takes a different approach because hosting is included within the service. There is no separate web hosting package to purchase and Shopify manages the servers, database infrastructure and other services required to operate the platform.
This removes the need to decide whether the store requires shared hosting, a VPS or a dedicated server. Shopify also manages the infrastructure required as traffic and order volumes increase.
Shopify’s subscription plans, however, do not simply provide different levels of hosting. Some functionality is restricted according to the plan. Basic, for example, does not provide additional administrator accounts, while Advanced provides additional international and shipping functionality and Plus provides substantially greater checkout customisation, API capacity and multi-store functionality. Transaction charges also reduce on the higher plans.
A business should therefore check which Shopify plan provides the functionality it requires rather than choosing a plan purely according to turnover or assuming that upgrading simply provides greater hosting resources.
The other trade-off is that there is no choice of hosting provider or server configuration. The store operates entirely on Shopify’s infrastructure and cannot simply be moved to another hosting company while continuing to use the same platform.
Hosting Costs and Scaling
For smaller stores, WooCommerce, PrestaShop and OpenCart can have relatively low hosting costs because they can operate on good-quality shared hosting. More server resources can then be added as the store grows. We have Woocommerce and opencart stores running on shared hosting plans for as little as £143.28 per year (incl VAT)
Magento generally starts further up this scale. The additional processing requirements and services such as OpenSearch mean that suitable Magento hosting will normally cost more from the outset. As the store becomes larger, additional memory, processing power, database performance, caching and search resources may also be required.
Shopify incorporates these infrastructure costs into its subscription rather than charging separately for a server. This makes the hosting side simpler and more predictable, although the overall cost of running Shopify still needs to include the required subscription level, apps and any applicable transaction or service charges.
The main difference is therefore not simply self-hosted versus hosted, but the level of infrastructure and service each platform requires. WooCommerce, PrestaShop and OpenCart can start on relatively simple shared hosting and scale upwards. Magento requires a more substantial and more complex server environment, while Shopify removes the server infrastructure decision but ties both the hosting and some platform functionality to its subscription service.
The Relative Costs
The headline price of an e-commerce platform can be misleading. WooCommerce, Magento Open Source, PrestaShop and OpenCart are all free to download, while Shopify charges a monthly subscription. However, the software licence is only one part of the cost of running an e-commerce website.
Hosting, extensions, apps, development, maintenance and payment charges all need to be considered. The following gives an indication of the relative costs. Hosting and extension figures are estimates because they will depend considerably on the size and requirements of the store.
| Cost | WooCommerce | Magento Open Source | PrestaShop | OpenCart | Shopify |
|---|---|---|---|---|---|
| Platform licence | Free | Free | Free | Free | £19–£259/month; Plus from £1,800/month |
| Typical hosting | From £5–£30/month shared; VPS/dedicated as required | Usually £50–£200+/month VPS/dedicated | From £5–£30/month shared; VPS/dedicated as required | From £5–£30/month shared; VPS/dedicated as required | Included |
| Server requirements | Low–moderate | High | Low–moderate | Low | Included/managed by Shopify |
| Commercial add-ons | Free + commonly annual licences | Free + commercial extensions; generally more expensive | Free + commercial modules | Free + generally inexpensive extensions | Mainly monthly subscription apps |
| Development cost | Low–moderate | High | Moderate | Low–moderate | Moderate-High |
| Ongoing maintenance | Moderate | High | Moderate | Low–moderate | Low for core platform |
| Platform transaction fee | None | None | None | None | None with Shopify Payments; additional fee can apply with third-party gateways |
| Cost as store grows | Hosting, development and extensions | Hosting, infrastructure and development | Hosting, development and modules | Hosting, development and extensions | Higher plans, apps and transaction costs |
| Overall relative cost | £–££ | £££–££££ | £–££ | £–££ | ££–££££ |
Which E-commerce Platform Should You Choose?
There is no single best e-commerce platform. All five platforms can provide the fundamental functionality required to operate an online store, and for many businesses more than one of them would be perfectly suitable. The choice comes down to the type of products you sell, the complexity and size of your catalogue, the functionality you require, your budget and how much control you want over the website.

Woocommerce
WooCommerce is a good all-round choice for small through to relatively large businesses, particularly where the website needs substantial content alongside e-commerce. Its integration with WordPress, large extension ecosystem and availability of developers make it highly flexible without requiring particularly expensive hosting.
- Product Import / Export
- Product Categories
- Product Attributes & Variations
- Digital / Downloadable Products
- Product Reviews & Ratings
- Related / Upsell Products
- Discounts & Coupons
- Multi-Language – plugin required
- Multi-Currency – plugin required
- Multiple Tax Rates
- Shipping & Weight-Based Shipping
- Customer & Order Management
- Stock / Inventory Management
- Sales Reports & Analytics
- API & Integration Support

Magento
Magento Open Source is better suited to larger or more complex e-commerce operations where advanced catalogue management, integrations and extensive customisation justify the additional development and hosting costs. For a straightforward small store, its additional complexity is unlikely to provide sufficient benefit.
- Product Import / Export
- Product Categories
- Product Attributes & Variations
- Digital / Downloadable Products
- Product Reviews & Ratings
- Related / Upsell Products
- Discounts & Coupons
- Multi-Language
- Multi-Currency
- Multiple Tax Rates
- Shipping & Weight-Based Shipping
- Customer & Order Management
- Stock / Inventory Management
- Sales Reports & Analytics
- API & Integration Support

Prestashop
PrestaShop sits somewhere between these two. It provides a comprehensive dedicated e-commerce system with good product and order management without Magento’s infrastructure requirements. It is particularly worth considering where you want a self-hosted platform focused primarily on e-commerce rather than the wider content-management capabilities of WordPress.
- Product Import / Export
- Product Categories
- Product Attributes & Variations
- Digital / Downloadable Products
- Product Reviews & Ratings – module required
- Related / Accessory Products
- Discounts & Coupons
- Multi-Language
- Multi-Currency
- Multiple Tax Rates
- Shipping & Weight-Based Shipping
- Customer & Order Management
- Stock / Inventory Management
- Sales Reports & Analytics
- API & Integration Support

Opencart
OpenCart is a relatively lightweight and straightforward option that can be inexpensive to host and maintain. Its unusual approach to product options can also be particularly useful for products with very large numbers of possible combinations where each combination does not need its own SKU and stock record. Its core administration and wider ecosystem are less sophisticated in some areas, so additional development or extensions may be required.
- Product Import / Export – extension normally required
- Product Categories
- Product Attributes & Product Options
- Digital / Downloadable Products
- Product Reviews & Ratings
- Related Products
- Discounts & Coupons
- Multi-Language
- Multi-Currency
- Multiple Tax Rates
- Shipping & Weight-Based Shipping
- Customer & Order Management
- Stock / Inventory Management
- Sales Reports & Analytics
- API & Integration Support – core API is more limited

Shopify
Shopify is the obvious alternative when reducing responsibility for hosting, infrastructure and core platform maintenance is more important than having complete control over the underlying system. It is straightforward to start and can scale to very large stores, but businesses need to consider the ongoing cost of subscription plans and apps, the restrictions imposed by different plans and the greater dependency on Shopify’s platform.
- Product Import / Export
- Product Categories / Collections
- Product Options & Variants
- Digital / Downloadable Products – app required
- Product Reviews & Ratings – app required
- Related / Recommended Products
- Discounts & Coupons
- Multi-Language
- Multi-Currency
- Multiple Tax Rates
- Shipping & Weight-Based Shipping – advanced functionality can be plan/app dependent
- Customer & Order Management
- Stock / Inventory Management
- Sales Reports & Analytics
- API & Integration Support
Ultimately, choosing an e-commerce platform should start with the requirements of the business rather than the popularity or headline price of the software. We can help provide guidance on setting up a e-commerce business. Look at how your products need to be managed, how orders will be processed, what integrations you require and how the business is likely to develop over the next few years. A platform that fits those requirements will usually prove considerably cheaper and easier to manage than choosing one now and having to migrate the entire store later.

