Why has Quote-to-Cash (Q2C) Become Exceptionally Hard and Why Salesforce and SAP are after it?

The next $10B Opportunity in Enterprise IT

Update (Dec 2020): This article was meant to be my CliffsNotes but it somehow ended up touching a nerve and a lot of you reached out and commented on it. I am now working on a solution to fix this using the first-principles approach as I have laid out here. Stay tuned for more. Thank you!

(I want to sincerely thank all the folks — 100+ people — who spent time with me graciously to share their perspectives on Q2C. What makes it even more unique is that I didn’t know most of them beforehand and still they selflessly chose to spend time with me without expecting anything in return. This is truly heartwarming!)

I was talking to a Product Manager of a SaaS company a few months back and he mentioned that their ‘subscription billing’ was broken. With zero background in subscription billing (at that time), I wondered what could be so complex about a charge that is incurred on a periodic basis.

But then, I talked to several other tech companies (large public, recent IPO, hardware, SaaS) and interestingly all of them mentioned that their “Quote-to-Cash” (Q2C) had huge issues. I was told that one company spent as much as $300M (!!) in fixing their Q2C and that too with less than satisfactory results.

If you are not familiar with Q2C terminology, it covers a set of steps starting from generation of a sales quote to accepting money from the customer and recording the transaction in the ledger (ERP). Some people also call this Opportunity-to-Cash (in Sales CRM, a customer intent to purchase is represented by “opportunity”). A similar term is “Lead-to-Cash”, the only difference is that it captures the process at a much earlier stage — when the customer is still a lead.

Since Q2C is a mission-critical process for any company (it enables the company to earn revenue), I decided to dig deeper as to why has this become a big problem for everyone.

This article presents a summary/analysis and towards the end a proposal to solve the problem based on 100+ conversations with customers/system integrators over a period of 3 months.


First, a little bit from more on Q2C steps:

  1. The customer expresses an intent to purchase a product/service (captured as an “opportunity” in the CRM product).
  2. From there, a salesperson uses a product known as CPQ to first Configure the exact list of products/services/support customer wants, Prices them (could be discounts based on customer geo, customer type, multi-year, etc.), and then finally generate a professional-looking (usually PDF file) Quote.
  3. Once the customer agrees on the Quote, typically the customer issues a Purchase Order which kicks off the second part of the Q2C process workflow.
  4. The order is then processed by a separate Order Management/Fulfillment system (could be part of ERP). It involves provisioning (for SaaS) and/or shipping of hardware products etc.
  5. Finally, the charges, etc. are recorded in the financial ledger (ERP). If subscriptions are involved, they require special handling and that is usually handled by a separate system even though the ERP systems are trying to subsume that functionality as well).

I have not covered contracts etc. that are usually part of enterprise Q2C workflow. If you are interested to know more, check this great blog post on Q2C by Apttus (one of the leading CPQ vendors).

Enterprises across all industry verticals have the following urgent requirements:

  1. Transition to subscriptions,
  2. Ability to offer new sales bundles in hours & not weeks turnaround, and
  3. Enable B2B self-service eCommerce (think Amazon-like buying experience for enterprise products).

Unfortunately, existing products in Q2C workflow have failed to meet any of the above requirements for enterprises (for mid-market, there are some point solutions though).

Here’s a quick summary of what’s broken based on my conversations:

Summary of Problems

  • Outdated and incompatible product catalog across CRM/CPQ/Billing/ERP leading to data duplication and a lot of complicated integration work across the stack
  • Broken APIs
  • Sandbox to Production deployment is a nightmare
  • Complex approval workflows
  • Unfriendly UX across the board whether customer, channel, or employee-facing
  • No mobile-centric experience
  • Inherent lack of scalability in both CPQ and Billing solutions
  • Inflexible and inextensible systems leading to longer implementation times (usually in several months, often a couple of years).
  • Usage-based billing doesn’t work
  • Hardware + subscription on the same quote usually doesn’t work
  • Subscription amendments and later renewals are challenging
  • Analytics/reporting is weak/complex and non-actionable
  • Issues with multi-year contracts
  • Dynamic bundling is not supported
  • Dynamic pricing is not supported
  • No one is providing intelligence around the transaction data (that goes through the Q2C process) to help in future sales
  • No multiple language support … Salesforce requires APEX, Oracle CPQ has BML. Side effect: Lack of availability of inexpensive talent to maintain such products

Why has Q2C become a complex problem & why has no one been able to fix it meaningfully?

The assumption around “SKUs” (one-time sale)

The biggest change in the last few years is around the customer expectation to “subscribe” to products/services instead of right-out purchase. This migration from one-time selling of SKUs to subscriptions is the primary reason why traditional Q2C products are failing.

  • For SKUs, information flow has largely been one-way i.e., from CRM to ERP with some reconciliation happening from ERP to CRM. Subscriptions have caused this flow to turn on its head as now orders are not final; amendments are the new norm i.e., adding/deleting/modifying subscription post-purchase. This requires ERP and CRM to communicate closely and often. However, these systems were not designed for such communication. Even simple data in/out is painful with each much less a well-oiled bi-directional data flow.
  • The underlying data model for the product/pricing catalog was not designed for SKUs and not subscriptions. SKUs fundamentally represent a “fixed” product/service, there is no variability. On the other hand, subscriptions by definition have a term associated (6 months, 12 months, etc.) and pricing/discount will depend on the term. Furthermore, subscriptions are also priced based on # users which the end customer may vary over the lifetime of the subscription. Traditional product catalogs are not designed to handle this flexibility. To address this issue with current systems, enterprises are forced to create additional SKUs to handle every permutation leading to bizarre SKU proliferation (1000s of SKUs) which unnecessarily complicates everyone’s life (salesperson, channel sales, marketing, accounting, and even the customer)

Changing ERP/CRM systems and product catalogs is a fundamental design change and is certainly not an add-on feature.

Assumed traditional / channel selling only

  • CRMs were designed for 1000s of accounts not millions of accounts/data points; consequently even basic scaling/performance requirements are unmet. I was told that Salesforce CPQ cannot handle quotes of more than 200 lines so the quote needs to be divided into multiple quotes (Salesforce experts can recall dreaded “governor” limits. Now, any PaaS system will have checks and balances around resource consumption (e.g., here is Google App Engine’s) but it seems that the way it is done in Salesforce imposes basic restrictions e.g., one can only query 100 SQL records per transaction,.. not 1M, 100K or even 10K… it is 100!). A larger point is that for new-age enterprises like Airbnb, Lyft, Uber, DoorDash, etc. which count their customers/merchants in millions, none of the existing CRMs (and even CPQ/Billing/ERP systems) will work, and from what I have been told each is working on their own version of these systems. In fact, this opens a very interesting startup opportunity to build massively scalable, user-friendly, cloud-based CRM, etc. systems that can be used by next-gen enterprises. Even better, why not build a generic infrastructure enterprise IT layer that can run on top of any public cloud on top of which apps like CRM, CPQ, Billing, ERP, etc. can be run. Now, enterprises don’t need to maintain a separate CRM/ERP or even HR IT stack… all enterprise resources (whether people or assets) are represented in this one single stack which will make the job of IT hugely simplified as no data transformations would be needed). More on this in a later post.
  • Downstream CPQ systems work off of a CRM “opportunity” only. This means if you are offering your products/services to be sold online directly, CPQ won’t work as the website user is not a CRM lead. This forces enterprises to build and manage two parallel Q2C workflows (one for direct-sales and another for self-serve).
  • Guided selling is limited to manual Q&A rather than auto-context-drive (customer, country, vertical) or prior purchase history.
  • Consumer concepts of UX, mobile-centricity were largely ignored.
  • Guts of the existing IT systems were designed for low-volume/high-dollar (direct/channel sales) and not for high-volume/low-dollar transactions (self-serve) which are the new business model for the modern product-led growth enterprises.

Fixing these issues cannot be done using a bolt-on fix-it approach. Instead, it requires a thought-through first-principles based software design from day 1.

Mid-market focus

  • It appears that all CPQ/Subscription Billing vendors took a mid-market approach early on (startups often do that to score early wins). Here’s the disastrous side-effect though — enterprise use-cases are not accounted for in these designs resulting in extremely inflexible systems with poor scalability, dysfunctional APIs, broken reporting, etc. This is one consistent feedback I heard across all vendors — they are not “enterprise-ready”.
  • Existing products were created more than 10 years back (even Zuora is 11 yrs old) and most, if not all, seem to be running on outdated software architecture. Artifacts of old architecture are — lack of scaling/performance, weak APIs, data in/out hard, restriction on programming language support, underlying systems that don’t scale (Salesforce and since practically all CPQ systems run on force.com platform they inherit the same limitations). Several companies mentioned that the cost of a Salesforce sandbox environment is very pricey.

Re-architecting the core-engine is essentially creating a new product.

In my interviews, consistent feedback was that Q2C products need to provide 60–70% expected functionality out-of-the-box while the rest (customization) will be done by customers themselves as long as it can be done easily which seems to be not possible by current tools.

Ok, but still existing vendors must be doing something. What’s that?

Either adding bolt-on products or doing acquisitions — Apttus did CPQ first, Billing later. Zuora did Billing first, CPQ later (in process). SAP acquired Billing first then CPQ (CallidusCloud, $2.4B, Jan 2018). Salesforce acquired CPQ (Steelbrick, $360M, Dec 2015) which in turn had acquired a billing vendor earlier.

All of these approaches seem to fail as the fundamental issue is not putting all products under one price list but in providing a true “integrated” product with enterprise-class design around handling subscriptions. None of the vendors seem to have that.

The multiple-product approach (whether in-house or through acquisition) introduces immense bottlenecks in data flow requiring painful data translations resulting in brittle connections & never-ending maintenance.

How are enterprises dealing with this now?

They are forced to do either of following:

  1. Buy existing products and hire an army of System Integrators to somehow make the products work together by undertaking complex integrations — roughly 10–20% of such implementations simply fail, others that succeed end up creating brittle connections so that change management is a huge pain (both time & $$$) and agility is completely lost. One company spent $300M (!) on CPQ transformation project with less than satisfactory outcome. General average tends to be in 10s of millions of dollars (this includes license cost, implementation cost and ongoing maintenance).
  2. Build own tools — Everyone from the bigwigs to medium enterprises know that it is not a long-term strategy (creating and maintaining systems like CPQ/Billing is a complex undertaking and early benefits quickly overtaken by long-term maintenance costs, lack of product direction, budget cuts etc.). In my conversations I came across 4 companies who have undertaken those efforts and with all of them (except one where it was CTO’s idea) were forced to do it — their point was if they will have to spend huge money on SIs anyway, why not pour that money in internal development and control their own fate. There could be some kingdom building situation but as a matter of fact all of these tools were struggling and IT leaders were looking for a good external alternative (though none is available).

What’s the fix?

After having several of these conversations, some patterns started emerging and here are my thoughts on a product/system that I think can potentially solve the problems:

  • First and foremost, Pricing engine, Product catalog & Subscriptions need to be in ONE SYSTEM. Traditional way of putting Pricing and Catalog in CPQ and Billing in ERP separately worked well for SKU-based ordering or one-time orders. With subscriptions, “order” is not a terminal entity, instead it lives on with amendments. Best way to handle that is by combining subscription handling (quoting, billing, amendments, renewals), product catalog and pricing in one system.
  • Second, think Enterprise-architecture Day 1. That means building a platform vs an application. Make data in/out extremely easy, provide home-grown rock-solid connectors to popular CRM/ERP solutions, focus on UX, easy extensibility, mobile-centric, run on independent cloud instead of force.com (limits scalability, performance, even AI options).
  • Third, cater to self-serve — future of enterprise selling: Provide an Amazon/Atlassian like buying experience to other enterprises whose customers are increasingly smart buyers. This will unlock new and previously untapped revenue opportunities for enterprises and could be a real game changer. According to Forrester, 74% of B2B buyers prefer to buy online vs through channel.
  • Fourth, put data science / ML to good use. Q2C workflow sees financial / customer / machine data — perfect place to apply ML driving up-sells, cross-sells, renewals. e.g., “60% customers like you bought this”. Also, how about tying product usage directly to customer portal to drive auto-upsell notification“You are ready for an upgrade.”
  • Fifth, rethink customer success: How about tying revenue to a successful implementation instead of just initial sale. It may seem like a risky approach, but given that Q2C drives customers’ revenue/profitability, if a lot of value is created for the customer, it will be a huge a win-win proposition and a ton of money can be made to the extent that’s never been seen before in enterprise software.

Enter… Enterprise Monetization Platform


  • No need to buy & manage separate Billing and CPQ products (Do Subscription quoting, billing, renewals, amendments in ONE Platform).
  • Usage-based Billing Support
  • CPQ interface (web + mobile) that sales will LOVE to use. CPQ product primary purpose is to help sales folks close deal as fast as possible but most, if not all, CPQ solutions just automate selling process without making it easier/smarter. (I am reminded of a book “Don’t make me think” by Steve Krug).
  • Provision new sales bundles in matter of hours not weeks
  • Ability to create dynamic bundles (finally no SKU proliferation!)
  • Combine hardware and software on one quote
  • Subscription amendments are so easy that they can be self-served as well!
  • Go-live in < 1 month (post requirements gathering)


Classic ERP and CRM systems that were designed decades ago around concepts of one-time order, rigid catalogs, inflexible pricing, direct/channel sales only (not self-serve) and closed systems are increasingly becoming irrelevant for enterprises that are obsessed about being agile and customer-centric.

In short, existing CRM and ERP systems are failing systems of records, unimpressive systems of engagement & non-existing systems of intelligence.

There is a super massive opportunity around re-imagining & re-building these systems & deliver an experience and not just a tool.


Best independent writing I found on this subject:

The Future of Quote-to-Cash (Q2C) and the Commerce Cloud: Top Ten Strategies for SaaS Companies by Anandan (AJ), 2016. (I even met AJ in person subsequently).

Analyst Reports

  1. Gartner MQ 2018 for CPQ (provide info to download free copy from CloudSense)
  2. Forrester Wave CPQ Q1 2017 (provide info to download free copy from Apttus)


CPQ/ Billing is part of overall $42.14B CERM (Customer Experience & Relationship Management) market. Source: Gartner.

CPQ Market: $1.2B (est. 2018). CAGR 20% through 2020.

Subscription Billing: $2.7B (est. 2018). CAGR 35% through 2022.

I think the market is much bigger since penetration of professional CPQ/Billing solutions is low (vs home grown or point solutions). One proxy for this data is # of customers for CPQ vendors (these are all in Gartner MQ)

Apttus — 300, Oracle BigMachines — 500, FPX — 62, Accenture — 25, Vendavo — 60

If we were to extrapolate the numbers to lets 5x of above, we get 5000 customers. By comparison, Salesforce CRM is deployed in more than 150K organizations. Moreover, enterprise subscription market is very nascent at this stage and both markets will have a healthy double digit growth through next 5 years so that overall market opportunity is close to $10B.

M&A (by date)

  • $1B-$2B estimated, Apttus majority stake by PE firm Thoma Bravo, Sep 2018
  • $2.4B SAP acquired CallidusCloud (CPQ), Jan 2018
  • $303M Salesforce acquired Steelbrick (CPQ), Dec 2015
  • $400M Oracle acquired BigMachines (CPQ), 2013

Engg, Product, Marketing, BD | Creator of Leela Kids — World’s First Kids Podcast App used by 100K+ kids and teachers | Host of Customer Support Podcast

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store