Eliminating barriers to Drupal Commerce growth

At the end of 2018, Dries Buytaert, creator of Drupal, asked folks involved with the project to share their thoughts on what's "holding Drupal back." His prompt came on the heels of two great blog posts related to his company Acquia's growth strategy and lessons he's learned and applied from Amazon's growth strategy. I didn’t beat his third post on overcoming Drupal’s obstacles to the punch, but the series did prompt me to think long and hard about the barriers we face as maintainers and leaders of the Commerce project within the Drupal ecosystem.

For the entirety of our existence, Commerce Guys has focused on building and promoting Drupal as an eCommerce platform, first through Ubercart and then Drupal Commerce. While eCommerce is a huge industry, our reach within the community has only averaged around 5% of all Drupal sites. Given the diverse and varied types of users Drupal serves, I consider this relatively low number unsurprising. (A certain percentage will also choose to integrate third party shopping cart systems, but historically that’s always been a fraction of the number of Drupal sites using our native solutions.)

It’s tempting to be fatalistic about Drupal Commerce’s growth and accept that our growth rate will be pegged to Drupal’s own growth rate so long as our relative percentage holds. It actually is an important baseline to acknowledge - our success is tied to Drupal’s success, and so we prioritize contributing to initiatives that help improve Drupal’s core APIs, make it easier to maintain and upgrade, and attract new audiences through API-first / JavaScript initiatives. However, I think we can and should do better than just waiting for growth to happen upon us.

Why should I think we can do better?

After Dries’s posts last year I compared our usage statistics for Commerce 2.x (on Drupal 8) to our usage statistics for Commerce 1.x (on Drupal 7) at the same point in its life-cycle. What I saw convinced me we have plenty of room to grow:

  • In 2013, Drupal Commerce 1.x grew from 23,224 to 33,989 sites.
  • These numbers represent growing from 4.02% to 4.50% of all Drupal 7 sites.
  • Our average growth rate that year was 3.89% month over month; Drupal’s own growth rate was 2.72%.
  • In 2018, Drupal Commerce 2.x grew from 3,097 to 6,980 sites.
  • These numbers represent growing from 1.41% to 2.85% of all Drupal 8 sites.
  • Our average growth rate last year was 8.65% month over month; Drupal’s own growth rate was 1.23%.

Just based on those numbers, even though Commerce 2.x grew over twice as fast last year as Commerce 1.x did in a similar timeframe in its life-cycle, we still represent only half of the relative number of Drupal sites we did back then. We can double our user base on Drupal 8 without challenging our historical average representation at all. That’s good news!

Our growth rate right now is fantastic, especially compared to Drupal's own. There are likely a variety of factors at play here, but I think it boils down to some combination of recognized maturity, excellent word of mouth from a steady stream of case studies, and our contributed module ecosystem stabilizing to a point that Drupal 7 / Commerce 1.x sites are finally porting to Drupal 8 / Commerce 2.x. As our 2.x project lead recently observed, we’re now up to over 250 contributed modules on drupal.org and maintain a community support Slack channel with over 1,000 participants.

Eliminating barriers to growth in 2019

In order for us to keep up and even accelerate our rate of growth, Commerce Guys has been working hard to identify our barriers to growth and develop solutions to them. As a small team playing in a large market (against very well-funded competitors), we can only do so much … but every bit of progress on any of the following fronts will help.

1. Features and integrations

The biggest barrier to growth has historically been our under-developed contributed module and integration ecosystem. Ecosystem development is incredibly important - agencies don’t often have the expertise or confidence to develop new features or integrations themselves. Our major competitors (Magento, Shopify, et al) all have massive ecosystems that third-party software vendors take the initiative to join while our own ecosystem remains dependent on our own team or the core of our development community to expand.

2. Developer support and education

It’s tempting to point to performance and scalability as another barrier to growth, but we see poorly performing Drupal Commerce sites as a symptom of another issue - lack of exposure by the average Drupal developer to best practices for scaling sites with a large amount of authenticated (or otherwise cache-breaking) traffic. We know that we can scale Drupal Commerce to support 10,000+ transactions per hour and thousands of concurrent users, but we also know that otherwise capable Drupal teams struggle at a fraction of that scale. In other words, it’s not a capabilities gap, it’s a knowledge gap, and we’re to blame for not sharing what we've learned with our userbase.

3. Reaching our core audience

Finally, we’re hardly communicating to the market at all about why they should be choosing Drupal Commerce. Our websites are aging, and organizations who do decide upon Drupal are often confused about what sort of support, if any, we might offer them if they choose to adopt our software. We understand how our solution differs from other major players in the market and where it should be seriously evaluated (e.g. cross-border commerce, digital product sales, subscription billing), but we aren’t doing enough to demonstrate our capabilities or provide a vision for why merchants will be better off using Drupal Commerce than a competing application.

We certainly have our work cut out for us in 2019, but we’re encouraged by last year’s growth and the support of our friends and champions within the Drupal community. We believe we can work to eliminate these barriers to growth while building a sustainable business that allows us to grow without compromising our values. In reverse order, the basic roadmap we’re targeting to address those known-blockers above will be:

  1. Relaunch our company and project websites to more clearly communicate who we are, what our software can do, and how we support eCommerce teams to build with confidence on Drupal.
  2. Standardize our consulting efforts and support retainers into concrete, documented offerings that anyone can understand.
  3. Coordinate our development roadmap with more agency and technology partners to ensure essential contributed modules receive the attention they deserve and our integration roster continues to grow.

We'll be encoding our expertise into productized solutions that allow us to grow a team focused on ensuring eCommerce sites built with Drupal are optimized for stability, security, and scalability. We've always valued the impact we have on the Drupal community even as a small team, and we believe addressing these issues will afford us the opportunity to grow, broaden our impact, and grow Drupal itself as a result.

President / CEO
Posted February 5, 2019

Comments

Submitted by S M Azmat Shah (not verified) on

Well written article Ryan and much needed too

I personally think that Drupal Commerce deserves more mentioning and involvement by the general Drupal Community than it gets currently. The kind of effort put into achieving whatever your small team has achieved basing Drupal is exemplary. I must congratulate you, Matt and Bojan for all the great work you guys have been doing. The way Bojan and other guys answer almost every question on your Slack channel guiding those who need guidelines and help is for sure a great thing you guys should be proud of.
Commerce is an elementary part of any Digital system and Drupal Commerce as the name suggests depicts the "Commerce" aspect of Drupal. If we love Drupal Community and the software, I think we as a community should strive together pumping the push of Drupal Commerce. Even I am feeling I am the first one commenting on this much needed Blogpost of yours even after some hours of it has been out, plus just a small number of retweets show that probably more is needed by Community helping Drupal Commerce grow. Even I at times feel awkward while seeing blogposts by Drupal Agencies promoting Drupal as a great platform otherwise, mentioning Integration of other Commerce platforms with Drupal rather than focussing on joining hands with you to move Drupal Commerce forward being so native to Drupal and thus acknowledging efforts of your team having spent days and nights creating it.
Ryan we met in Drupal Camp London and Drupal Con Nashville too and told you about our plans for Drupal Commerce. I have a small Drupal firm in Pakistan named Drupak, where we also provide internships and trainings to University grads. We have plans of commingling with you moving forward with Drupal Commerce. At any given time, we have internees in numbers like 10 to 15 who stay with us for an year or two. We are ready to train our guys in Drupal Commerce development and thus contributing to Drupal Commerce big time. I will request you and Bojan to guide us further so that our effort is more targeted and we may contribute as a team more efficiently under your supervision. Whatever else is required from us, we will love to help Drupal Commerce grow.

Thanks
S M Azmat Shah
CEO Drupak
www.drupak.com

Submitted by Ryan on

Thanks much for your kind words, Azmat! I certainly remember meeting and we are continually encouraged by your support - happy to help in return. : )

Submitted by Thomas (not verified) on

Looking forward to the announced changes!
For me, it's also the Lack of Kickstart for D8, which forces me to configure a Lot before i can start sell. And before that, it is Hard to learn how to do the set-up, and even hard to find out in detail what can be done and limitations.
I did both by going through blogs and Videos (rfay etc.) and then started experimenting with Kickstart and later commerce 1.x from scratch.
Looking AT What is there under D8, it feels like less from all What i used back then.
It starts with D8 itself being more complicated to Set up, think ftp and shared hosting. It went the more professional, corporate route and commerce followed, becoming less appealing to the Masses of part time admins, which bring little revenue maybe, but make for a big user base.
So also my own drupal 7 site (with commerce) is on platform.sh, mostly managed by an agency, which has it's pros and cons, but i regret the distance i have to it.
I also run a site with an osCommerce fork, which is super feature rich out of the box and aiming at ftp/shared hosting users. It has it's negatives too, but i like how easily i can get my hands diry and bring some of my drupal learnings, eg. Git, to it. Until i will be able to consolidate all on drupal.

Submitted by Ryan on

Thanks for sharing some of your pain points, Thomas. We definitely want to make it easier for folks to get started working with Commerce 2.x, but to date that's meant focusing on improving Composer support for Drupal 8 in general and maintaining our own demo via Composer. I understand that means a bit of a toolset change for most Drupal developers vs. Drupal 7 and earlier, but we believe the pay-off is worth it (specifically thinking about stability / security management per my post).

The best place to learn right now will be from Lisa Streeter's work in our documentation, https://docs.drupalcommerce.org. It's totally fair to open tasks in the Commerce issue tracker on drupal.org requesting fixes or improvements to the docs! Eventually we'd love to be able to offer turnkey cloud demos / hosting for Commerce 2.x, but that's currently in the "3-6 months out" priority box while we focus on some essential contribs. Cheers!

Submitted by Jon (not verified) on

Long-time fan, I once attended an Ubercart workshop with you Ryan all the back in 2010! Got me started with drupal and ecommerce and that has been a boost in my web dev career. Thanks to you and the whole team, looking forward to what you do in 2019.

Submitted by drugan (not verified) on

https://en.wikipedia.org/wiki/The_Cathedral_and_the_Bazaar

Reading from the above someone may say that Drupal and Drupal Commerce are implementing "The Bazaar model, in which the code is developed over the Internet in view of the public" but as for my personal opinion it is a Cathedral. I like all the points from 19 "lessons" list in the article but the number 10 is what that can be useful to stop the Drupal decline. Yes, Drupal leads are great talented developers but for me it seems some kind of a "Leads & Friends" private club. IMHO.

It was not that way before because I remember my D7 Drupal Commerce times when I came to issue queue with quite naive suggestions and Szrama patiently keeped with me long discussions like with a real developer.

Thank you, Ryan. You'd given me "Yes, I can!" feeling. Good luck to you and to the Drupal Commerce!