The Battle of Ecommerce Platforms, Part 1: Drupal Commerce vs Magento
Drupal Commerce and Magento are arch-rivals for ecommerce business implementations. Find out which offers the best features and performance for your money.
Drupal Commerce and Magento, two of the leading PHP-based ecommerce solutions on the market, are often perceived as direct rivals on a level playing field. Yet the choice between the two of them depends not only on the availability and cost of individual features, but also on the core concepts and user experiences that you want to implement in your ecommerce project.
In this article, we'll look at the respective offerings from Drupal Commerce vs Magento from the standpoint of development and maintenance costs, technical capabilities, interoperability, scalability, and several other factors.
We'll also examine which solution might be more appropriate for particular categories of inventory, and help narrow down the choice for those seeking to deploy an ecommerce system or commission ecommerce development for their business.
Blogging Meets Shopping
With a 56% annual increase in spending recorded for B2B content marketing in North America in 2019, it seems that the value of entertaining, educating, and engaging with existing and potential customers is becoming a priority for the business sector. Reflecting this, over the last ten years the term has also risen notably in search queries.
According to the 2019 statistics from the Content Marketing Institute, 81% of B2C marketers report creating content that builds loyalty with existing customers, with 57% actively measuring ROI on content marketing strategies.
This shift from platform-driven ad spending to content-driven conversion funnels has encouraged businesses to set up shop on blogging platforms that were not designed to be commercial thoroughfares.
The origin stories of content management systems such as WordPress (a personal photo sharing project), Joomla (a declining commercial website development tool released to open source), and Drupal (an open-source message board) seem incompatible with enterprise-level content networks. All these projects are now far too mature and committed to FOSS ideals to re-engineer from scratch with a commercial remit.
Nonetheless, the public trust that these popular blogging networks have built up over the last two decades makes them an essential venue from which to develop content aimed at promoting brand awareness, generating leads, and converting potential customers.
For the most part, these popular content management systems lack native marketing and ecommerce tools. That shortfall has been addressed by commercial and open-source providers in the form of plugins, extensions, and entire parallel frameworks.
Drupal Commerce and Magento are two of the most prominent platforms that retrofit open-source blogging with B2B/B2C ecommerce facilities. Either through native features or third-party add-ons, both can help provide end users with:
- a full-featured CMS with an intuitive UX and control panels
- support for social sharing
- support for user-contributed product reviews
- a responsive and useful community of developers
- native integration of inventory-driven advertising material, ideally without leaving the domain (i.e. via a dedicated sub-domain)
- purchase paths and shopping carts that function without leaving the host domain (where possible)
- capable native and third-party analytics solutions
- invoicing, quoting, and customer communications solutions
However, Drupal Commerce and Magento take different approaches to the problem, and neither is a 'plug and play' solution.
Origins and Available Payment Gateways
First released in 2011 by French ecommerce company Commerce Guys, Drupal Commerce provides an open-source secure application framework that allows merchants to develop inventory, track orders, and manage and facilitate payments via 114 payment services providers (at the time of writing), though additional payment gateways can be created as necessary.
Various authorization modules are also available, such as Authorize.net, BrainTree, and PayPal.
In the years following its initial development and release by US-based private company Varien (2007-8), the ownership of Magento passed through eBay (2011) and eventually to its current owner, Adobe (2016-18), which has since incorporated the software into its Commerce Cloud.
Due to its former close association with one-time PayPal owner eBay, the open-source PHP-based ecommerce suite comes with a high level of integration for PayPal's gateway payment protocols. Magento directly supports 12 other payment gateways around the world, and also offers fraud protection services, easier onboarding, and Cash Flow Management via Magento Payments.
Out-of-the-box authorizations are handled via PayPal, Braintree, and Authorize.Net. Developers can add additional gateways with the Payment Provider Gateway schema.
Interoperability with the Host CMS
Drupal Commerce is a dedicated framework intended to add ecommerce capabilities to the Drupal content management system. Its association with a major CMS makes integrating a domain's publicity and payment streams into content channels easier and cheaper, since most of the potential pitfalls of integration have been mapped and solved in advance.
A robust inventory framework is available for Drupal 7 (the native version equivalent for Drupal Commerce), with maturing support for Drupal 8. Drupal Commerce is better able to accommodate 'abstract' or non-standard inventory items than Magento, whose evolving model is still oriented toward physical and digital products.
Drupal Commerce offers a huge amount of configurability and flexibility in the way that ecommerce content appears within traffic-driven content on a Drupal site—a challenge that can mean significant development costs in other 'satellite' ecommerce platforms, such as Magento.
On the negative side, Drupal itself (rather than Drupal Commerce specifically) retains a deserved reputation, along with Laravel, as ‘a developer's CMS'—a set of tools with which experts can build flexible CMS solutions, rather than a 'plug and play' CMS such as WordPress or Joomla.
Although customizing WordPress and Joomla generally requires third-party extensions and a moderate understanding of PHP, customizing Drupal Commerce and Drupal into a viable ecommerce solution will require actual developers. To boot, developer talent for Drupal and Drupal Commerce is often quite scarce relative to other mainstream open-source PHP-based frameworks.
Output from Drupal Commerce can adopt the theme and styling of a Drupal site with less development time and micro-management in comparison to 'external' ecommerce frameworks. Even so, some extra work is usually required.
Drupal Commerce offers 14 starter themes (coincidentally exactly the same number as Magento) as a point of departure for your own designs. In truth, theme design is likely to constitute a commercial investment with either Drupal Commerce or Magento.
It's a very short journey from the free open-source functionality of a base install to the need to budget for both developers and theme designers. In this sense, one could view Drupal's 'free' ecommerce framework as a loss-leader or enticement into fairly significant development costs—a model that is at least equally applicable to Magento.
Magento operates entirely as a third-party ecommerce system. It is intended to be wired into any usable CMS that has a content template suitable for displaying inventory. It can also be deployed as a sole installation, and recently has begun to offer various native and third-party options to develop SEO-optimized content streams without the use of a secondary CMS.
Magento's lack of a 'native' host CMS brings both advantages and disadvantages. On the positive side, Magento presents a flexible and simply-modeled inventory framework that is easy to understand and manage.
Negatively, its output is fairly rigid and row-based, in line with more 'traditional' ecommerce paradigms. Magento's granular listing style can make it more difficult, in comparison to Drupal Commerce, to integrate a variety of products that share a common brand element (such as a DVD, a t-shirt featuring the DVD movie branding, and a related subscription or special offer) into a single purchase opportunity.
Since Magento is expecting to accommodate itself to a variety of possible host environments, it offers a much higher degree of GUI-driven customizability than Drupal Commerce. It also offers more out-of-the-box functionality than is available with Drupal Commerce.
Magento Commerce now has a dedicated CMS module, offering drag-and-drop functionality and block-based post building, similar to the current version of WordPress. Although it's a slightly restricted offering in comparison to a full-fledged content management solution, it does remove an entire tier of update and security management requirements from a content-driven ecommerce site.
The original developers have been placing emphasis over the last few years on the headless version of Drupal Commerce, a new initiative that offers a 'decoupled', API-driven implementation that makes ecommerce functionality available across a wider variety of potential host environments and pushes the model toward a more SaaS-oriented, platform-agnostic solution.
Magento is equally committed to headless ecommerce. In addition to building the more UX-friendly and faster-running Magento 2 toward this paradigm, Adobe offers significant support to PWA developers, as well as releasing its suite of PWA development tools, known as PWA Studio, to open source.
Headless Ecommerce Levels the Playing Field?
Both Drupal Commerce and Magento are framing headless as the future of ecommerce—a new era of inventory-as-a-service. If this is a convincing argument, it might actually cause us to question the distinguishable merits of Drupal Commerce vs Magento as they will be rather reduced under this model.
Drupal, with or without Drupal Commerce, is a developer-oriented proposition where the technical cost of entry is free (open-source), but the cost of developing and maintaining a performant and secure ecommerce server can run into the tens of thousands of dollars or more, depending on scope and scale.
This aspect is mirrored to a great extent in Magento, where you may additionally need to pay significant licensing costs.
Your Drupal Commerce project costs will rise in proportion to your need for specific functional architecture, custom theme styling, high-concept customer experience flows, inter-module data integration, easy-to-use custom control panel interfaces, analytics systems, and other benefits for the backend user.
In terms of ongoing maintenance, the project will need certified partners or developers capable of staying on top of updates and other critical developments, either in the framework's open-source roadmap or in your specific ecommerce implementation. They'll ensure that your system stays secure as well as overseeing essential updates that could threaten the functionality or integrity of core code or third-party modules.
The current average annual salary for a Drupal developer is $86K and more, according to GlassDoor.
After a decade of acquisitions and re-imaginings, Magento is a fairly fragmented brand in many ways. It's available in several tiers:
- Magento Open Source (formerly known as Magento Community Edition)
- Magento Commerce
- As a facet in Adobe Commerce Cloud (aka Magento Commerce Cloud, formerly Enterprise Cloud Edition).
Feature Comparison between Magento Editions (2019)
Adobe is far from transparent about the various costs of licensing Magento in any non-free use case. However, it’s worth considering that $2,000 p/m represents the entry-level pricing for Magento Commerce, and that extensions can run into thousands of dollars, sometimes on a subscription basis rather than outright purchase.
Anecdotally, upgrading from Magento Open Source to Magento Commerce can be problematic, although documentation is provided.
The current average annual salary for a Magento developer is $79K and more, according to GlassDoor.
With a smaller installation footprint than Magento, Drupal Commerce (via Drupal itself) is intended for self-hosting and is capable of remaining highly performant at scale. Although it does not offer an out-of-the-box database sharding solution (which is available in the most expensive tier of Magento), this can be implemented and rationalized on a third-party basis.
The web server requirements for Drupal Commerce are more modest than Magento, and are included in the general range of specifications for a Drupal server. The minimum required RAM for PHP is 64 MB, although the official documentation notes that production systems typically use 128 MB or 256 MB.
One showcase for a high-scale Drupal Commerce-based implementation splits a complete ecommerce experience across three related Drupal domains to eliminate bottlenecks, scale better, and separate the content and purchasing experiences at both a semantic and practical level.
In addition to dedicated modules, it's possible to add CDN support from providers such as Amazon CloudFront and CloudFlare. For security reasons, there are extra considerations regarding CDN usage for payment-related pages in an ecommerce solution.
Magento's adoption into the Adobe cloud, though not the framework's first encounter with high-volume, proprietary, high-scale networks, means that cloud hosting will solve a large number of scalability issues—if you can bear the price tag.
If you're self-hosting the Open Source or Commerce versions of Magento, you're going to need a well-specced server. Hosting databases on a physically separate server is recommended, as is springing for SSD storage.
You're likely to need around 25 GB of SSD space in order to prevent delays caused by the server's automated storage management procedures. If your inventory volume is high, with corresponding content files, you may need more than 25 GB.
The official minimum server RAM requirement of 2 GB is unlikely to scale well. If RAM is a problem, distributed networks, caching, and CDNs may need to be deployed with great care to maintain services under heavy load. Depending on the configuration of the system, server requirements could increase if a Magento domain has more than 3,000-4,000 live products in inventory.
Many server re-sellers offer (or even specialize in) Magento-optimized packages.
For those not subscribed to cloud hosting, the release of Magento 2 came with the recommendation to run a Magento domain on PHP 7 with the Varnish cache system, since a lower version of PHP and the absence of Varnish might degrade performance.
Learning Curve and Online Resources
Online help for Drupal Commerce comes in the form of questions to the dedicated Drupal Stack Exchange community, as well as a Slack support channel, and a forum. It also has a queued ticketing system and provides advice on how to get the best out of it.
Since Drupal Commerce crosses over so intimately with Drupal, there are currently only 206 questions with that tag on Stack Overflow, in comparison to nearly 20,000 questions for Drupal.
In terms of complexity and learning curve, Magento is the more demanding ecommerce framework, requiring advanced PHP skills. Yet, since either framework will certainly require hiring developers, and since the cost of developers for each system is fairly similar, this might be a moot point. No one is likely to be coding a project of this scale in spare hours after work.
Magento’s official support is limited to problems with the core code, deferring build-specific issues to certified solution specialists. Magento has a dedicated and lively Stack Exchange community, as well as a Help domain and a thriving network of third-party commercial consultants. At the time of writing, there are over 37,000 questions on Magento at Stack Overflow.
Drupal Commerce's deep integration with a popular and powerful CMS enables it to integrate inventory into content with an almost unrivaled level of ease. Unconventional associations can be made between different types of product offering, enabling brand package entities that are more difficult to create in Magento. If your project needs this elastic approach to an ecommerce funnel, Drupal Commerce might be the shortest road to that objective.
However, Drupal Commerce is paired with Drupal, not WordPress or Joomla; all that missing out-of-the-box productivity will have to be recreated via development time and integration of third-party extensions.
Conceptually, Magento is still playing catch-up on the era of content-driven sales. It was conceived when eBay and Amazon represented the acme of online success: standalone sales portals, practically free of anything we would now define as 'content', with the company's value proposition as a market driver.
Consequently, Magento's roots show in the more rigid category pages and siloed product listings that it produces by default, in comparison to the greater flexibility of a Drupal/Drupal Commerce implementation. Yet, if the product line for your ecommerce project accords with that model, there is little reason to consider this a disadvantage.
Whichever ecommerce solution you choose, many of the supposedly 'free' (i.e. open-source) fixes and innovations that arrive via updates are likely to incur significant cost on a sliding scale relative to how customized and brittle your final implementation turned out. Since many of these will be essential security fixes, they represent unavoidable costs.
Contact our ecommerce development experts for a consultation.
How well do you understand Magento payment gateways? This article goes beyond the basics, to reveal tips that all Magento merchants can benefit from.
Integrating Magento with a CRM helps you to know your customer better driving upselling and cross-selling.
Learn how Magento customization can help you leverage the platform’s robust features and personalization options to deliver great ecommerce customer experience.
Find out about the ecommerce business intelligence tools to keep an eye on in 2020, and learn more about their features.
WANT TO START A PROJECT?