Pricing is one of the most important tools in the SaaS growth toolkit. As the market tightens and businesses look to integrate product-led growth (PLG) into their strategies, more companies are turning to usage-based pricing (UBP). Market leaders have shown that businesses can move beyond the basic pricing approaches and use innovative usage-based pricing strategies to drive growth, manage margins, and tailor their service model to customer needs.
However, implementing usage-based pricing is not as simple as just exporting usage data and combining it with a price list – we covered the challenges for finance teams in our last article "How usage-based pricing affects billing operations", as well as the drags this can impose on your business.
Here we’ll examine the ingredients for a successful UBP implementation from a data and process point of view so you can choose the right tools for the job.
The first challenge with UBP is data sourcing. Once you move from a simple "good, better, best subscription pricing" and begin to introduce allowances and overages, or offer more customized pricing for contract customers based on usage, tiers, product add-ons, or custom deals, the number of data points required to make an accurate calculation expands rapidly.
What data is required for usage-based pricing?
Implementing UBP requires aggregating data from a range of systems that feed into your billing process.
One source of truth for account, product, and pricing data
For most businesses, this information will sit in a front-end system, often a CRM and CPQ, with details captured during the sales process. There can also be specific information siloed in contracts. For UBP, this information needs to be accessible, reliable and regularly reviewed for accuracy.
Reliable usage data
Usage data needs to be collected, attributed to customers, normalized, transformed, and stored so it’s ready for your billing cycle. This requires a robust system architecture within your product that can attribute data and usage on a user basis, with clear roles and tags for features and tiers. Pipelines for this data often pull from existing repositories such as a data lake, but modern billing infrastructure solutions can function as a primary collection mechanism for this information. Note that this information can also be valuable to end customers when tracking their own usage and planning resources.
The UBP process for finance teams
Creating bills from this information requires combining various data points and formulas in a set process. While some businesses manage this using manual processes and spreadsheets, this can rapidly become untenable as businesses scale and pricing complexities develop. When looking for a solution to manage your UBP billing, consider the operations it must be able to perform:
- Creating billable data - Firstly, usage data needs to be aggregated into figures that can be used during the bill calculation process. This typically involves simple functions such as determining:
But there can be additional complexities, particularly if calculations need to be applied on the fly at ingest (e.g. converting kilobytes into megabytes) or to combine measurements or account for conditionality between them. Compound aggregations allow you to flexibly combine usage meters for the purposes of billing. Common use cases include dynamic product bundles where a price is applied if a customer uses one or more of the elements of the bundle, or where a product, like an API, can be different for each customer.There is also a commercial dimension to how this data should be treated. In the event of exceptions, such as usage spikes, commercial leaders may need to decide if an adjustment needs to be made and how this should affect the account.
- COUNT (how many units of a certain property were there?),
- SUM (what was the aggregate amount of units?),
- MAX (what was the peak of Z?),
- MEAN (what was the average?), or
- UNIQUE (how many unique things were there?)
- Apply pricing logic - Once you have the billable data, you then need to apply the pricing model. Pricing models are not always straightforward. Factors that complicate the equation can include:
All of these elements combine to create the final price due from your customer, and it can quickly become a complicated process if worked manually.
- Elements of traditional recurring subscriptions
- Volume-based discounts
- Allowances and overages
- One-time fees and standing charges
- Product bundling
- Flexible credit systems such as those deployed by Snowflake
- Apply billing and post-rating logic - Once the bill is calculated, there is the task of how to manage that bill and payment. Considerations include:
- Determining when to bill – this could be a set day or linked to the date of subscription
- Billing in advance vs arrears
- Enabling prepayment and drawdown systems
- Managing discounts across parent and child accounts; charging the right entity
- Applying discounts and credits to bills on an ad hoc basis.
- Validation and approval - Given the complex processes up to this point, you need the ability to check, validate, and approve bills before they go to customers. Under-billing loses revenue, while over-billing undermines customer trust. But any delay in the process can also knock confidence. While you will likely have existing quote-to-cash tooling, this process also requires new components that require integration. For a seamless process, these integrations need to be easy to set up and then robust, keeping systems in sync automatically. It’s also a major benefit if non-technical users can manage the integrations, specifically the data object mappings, configuration, and sync processes.
Integrating UBP in broader business processes
The role of billing goes beyond just getting the right invoice to the right customer. A UBP solution must also serve the needs of the rest of the business when it comes to tracking and analyzing revenue at varying levels of detail.
Your tool of choice must account for:
- Revenue recognition: Planning and tracking revenue in a UBP model is complex, given the frequent variation. This means you will likely need an intermediary step between bill calculation and the posting of revenues to your ledger to assess and normalize the figures.
- KPI tracking: Managing long-term trends requires a standardized approach for key KPIs such as MRR and NRR, as well as in-period movements. This also requires a level of detail to track revenue on a per segment or per customer basis and to reconcile revenue movements by period.
- Gross margin analysis: Finance teams often need to track the inter-relationship between revenues, usage, and variable costs to identify under-earning customers and manage long-term profitability.
- Forecasting: Revenues will depend on your future usage, which is uncertain, but the better you can forecast, the better you can plan and communicate with investors. Companies that make conservative rule-of-thumb forecasts in the name of prudence often end up under-investing in their business and missing out on growth opportunities.
- Price optimisation: Assessing private pricing deals can be a challenge due to the effect of different prices and structures on customer incentives. The more structured data you can leverage to forecast outcomes based on similar customers, the more confidently you will set and approve bespoke deals.
Implementing end-to-end UBP
Correctly running a UBP billing process from start to finish involves multiple steps and calculations – the more complex and nuanced your model, the more work required to reach the final calculation. However, the majority of these steps can be automated with the right tools.
Tools such as m3ter can work not only as data pipelines between various elements of your stack, but can also store, calculate, and assign charge items with a high degree of detail, reducing the work, risk and time involved in implementing your UBP process.
Our next article "How m3ter deals with billing complexities for customers" explores how m3ter can resolve these issues in practice to help you build a seamless UBP process that combines efficiency and control for your finance team.