UseaBiLLity - Resolving the BoB Paradox with Data Metering

Billing or Budget? That's the essence of the BoB paradox. Customers want to pay only for what they're using. And they want a fixed monthly fee to fit into a budget plan. What's the best way for a SaaS provider to optimize revenue and customer retention? WIthout detailed information about how the application is being used, it's hopeless.

With UseaBiLLity, SaaS providers can develop a clear analytics based strategy that will make sense to them and their customers.

Next for SaaS: Usage Based Pricing

Subscription based licensing means customers pay for the right to use the software. Just like a gym membership - we pay the same price whether or not we use the service. All features or a few of the features - same price. All the time or part of the time - same price.

What's needed is a SaaS offering priced by the amount of service being used.  Like your utilities bill, only for software. This could include some or all of the following:

  • Startup Fee - Onetime cost of onboarding a customer - Fixed, Generic
  • Maintenance Fee - Periodic (monthly, quarterly, etc.) cost of keeping the account and software current - Fixed, Generic
  • Usage Fee - Cost per use of defined application features, producing defined outputs - Variable, Application Specific

Fixed fees are pretty easy to define - it costs x dollars to onboard a customer, y dollars per month to maintain account information and deliver a bill.  How does a SaaS vendor develop pricing models for variable, application specific usages fees for software?

It's All About the Data

SaaS applications have databases. Application developers or DBA's who know the application's schema can relate database events (create, update, insert, delete) and business logic (stored procedures, begin/end transactions) to application functions.  Those application functions can be easily translated into business metrics - something the end user customer will understand and can intuitively assign a business value.  Here are some examples.

Example 1: Accounting

Accounting office manager creates an invoice. The developer knows that whenever an invoices is generated, specific database events occur - inserts and updates to the CUST table in the AR database, for example. More invoices = more business = more revenue.

Example 2: Real Estate

Realtor adds 5 listings, creates 5 flyers, and emails the flyers to 500 customers on March 15 and another 500 on April 2. 92 emails bounce - half in March and half in April. The developer knows that the LIST and FLYR tables have 5 new records each, and the EMAIL table has been incremented by 500 in March, another 500 in April and the BOUNCE table incremented by 46 each month. The realtor's typical hit rate on an email campaign is 10% (very good realtor), so the result is 4 showings in March, 4 more in April and one contract.

The fundamental idea underlying the resolution of the BoB paradox is that one can meter database events, map them to application functions or business metrics and deliver the results in terms that can be clearly understood by the end user customer.

Data Metering for MySQL Applications

MySQL Audit Plugin

MySQL has a well-defined architecture for adding custom plugins to the database that can implement a variety of functions, the most well known of these being storage engine plugins. Another type of plugin, Audit, provides a pluggable audit interface that enables information about server operations to be reported to interested parties. For more on MySQL plugin architecture go to the MySQL website.

Metering Profile

The UseaBiLLity services uses an audit plugin to track and record creates, reads, updates and deletes in the MySQL database. Once a map of database events to business metrics has been established and the data metering plugin has been deployed, the UseaBiLLity service pushes down instructions, a metering profile, to the plugin directing it to deliver the results for a specific set of database events on a defined schedule (dayliy, monthly, quarterly, etc.) to the UseaBiLLity server.

MySQL Server with UseaBiLLity Plugin

UseaBiLLity Reporting

Subscriber Profiles - Who Gets What

Database event counts aggregated by the plugin are delivered to the UseaBiLLity server where they are translated into business metrics as defined by the application map. How often and to whom (or what) the metrics are delivered is defined by UseaBiLLity subscriber profiles. Profiles vary based on their business objective. For example, data collected for the purpose of billing may involve only a small subset of the the application functions, whereas data collected for predictive analysis purposes (price modeling, feature planning, SaaS infrastructure provisioning) will include usage information on a larger set of features.

UseaBiLLity Statements - Customer Centric Billing Provides Clear Business Value

Statements with a list of business metric line items along with related charges can be delivered to the subscriber (in a drop box) or to a billing application like Zuora or a back-office application like QuickBooks for additional processing and formatting. The beauty of UseaBiLLity is that the end result, the statement, report, bill is something that inherently makes sense to the customer. Just as important, the metrics reported can be directly related to business value.

Clear Billing = Fair Billing

The problem with SaaS billing based on the number of users that had the right to access the software last month is that there's no way to tell how much work happened, how much product got produced or how using the software affected the business - which means there's no way to decide if the invoice is fair or unreasonable. UseaBiLLity enables billing based on business metrics -  invoices created, emails sent or new customers added. The subscriber can relate each of the metrics direclty to revenue and or ongoing business operations and can easily make decisions about SaaS value.

Required for Analytics - Usage Based Data

If the goal is analytics - to determine how the software is being used, to plan for SaaS infrastructure, to develop a support plan, etc. - then user based billing is almost worthless. One data point doesn't provide a lot of depth for analysis. With data metering and usage based reporting, the customer gets a detailed set of data useful for a wide range of predictive analytics. Check out some other uses for UseaBiLLity data.

Paradox Resolved - Data Metering and Usage Based Billing

UseaBiLLity changes BoB to BaB. The data metering plugin allows UseaBiLLity to deliver detailed information about how software is being used and the UseaBiLLity service translates the usage information into bills or reports with business metrics clearly understood by the subscriber. The result is software billing that is clear and fair and detailed data for analytics that allow for precise, predictable and value driven budgeting. Billing and Budgeting. Paradox resolved.