Choosing a Billable Metric

What is a Billable Metric?

A billable metric is a measurement or unit of usage that determines the cost or pricing structure of an API service. It serves as the basis for calculating charges or fees associated with API consumption. The following are examples of common billable metrics used when charging for API usage:

Billable Metric Description
API Calls Number of requests made to the API
Per User/Session Number of unique users or sessions using the API
Data Transfer Volume of data transferred between the API server and the client
Compute Resources Complexity or computational resources required to process requests
Transactions/Events Number of transactions or events processed
Feature-based Usage Usage of specific features or functionality

These examples represent some of the commonly used billable metrics across various industries. However, it’s important to note that billable metrics can vary depending on the specific API and the goals of the API provider. To get a bit more specific, below are some common billing metrics based on industry:

Industry Common Billing Metrics
Finance API Calls, Transactions, Data Transfer, Compute Resources
Communications API Calls, SMS Messages, Voice Minutes, Data Transfer
Data Infrastructure Data Transfer, Storage Usage, Compute Resources, API Calls
E-commerce API Calls, Transactions, Data Transfer, Compute Resources
Healthcare API Calls, Data Transfer, Patient Records Accessed, Compute Resources
Social Media API Calls, Data Transfer, User Engagement Metrics, Compute Resources
Travel API Calls, Transactions, Data Transfer, Compute Resources
IoT API Calls, Data Transfer, Device Connections, Compute Resources

How to Determine Your Billable Metric

Once you are aware of the billing metrics available, you’ll need to decide on which billing metric(s) to apply to your API(s). To decide on a billable metric, companies can employ the following tactics to determine which are most suitable:

  1. Business Objectives: Align the billable metric with your business objectives. For example, if the goal is to drive adoption, an API call-based metric might be suitable.

  2. Resource Consumption: Analyze the resources consumed by API clients and determine the most relevant metric based on usage patterns. This could be API calls, data transfer, or compute resources.

  3. Industry Standards: Research common billable metrics within your industry or similar API services to understand established practices and pricing models.

  4. Customer Feedback: Engage with API users to gather feedback on their requirements and preferences. This can help identify the metrics that align with customer needs.

  5. Experimentation: Consider running pilot programs or A/B testing different billable metrics to assess their impact on adoption, revenue, and user satisfaction.

Ultimately, the chosen billable metric should be fair, transparent, aligned with business goals, and provide value to both the API provider and users. You may even use more than one billable metric across your API(s) or experiment/change your pricing model as you go.

How to Specify Your Chosen Billable Metric in Moesif

When creating a Billing Meter in Moesif, the billable metric is set by using the Metrics dropdown and selecting a value. The values you can select include:

Metric Description
Event Count Number of requests made to the API
Unique Users/Keys Number of unique users or sessions using the API
Average Latency Charge based on the APIs average latency
Request Body Count Number of elements in the request body of the API call
Response Body Count Number of elements in the response body of the API call
Custom Metric If a default metric is not suitable, create/calculate a metric based on available data within your requests/responses

Once the Metric is set, the usage will be calculated based on it. This is how you can select and apply a billable metric via a Moesif Billing Meter.

Metering Unique Values

For metering unique values, such as “Unique Users”, the billing meter configuration must work in unison with the corresponding plan and price in the billing provider.

In the billing provider, you’ll want to make sure that the MAX or most recently reported value is what is used towards the billable metric. For instance, if you choose to bill monthly based on “Unique Users” in your Moesif Billing Meter and are using Stripe, you will need to make sure that the price’s Measure Usage as attribute is set to “Max of” unit(s) used every “Month”, in “$USD”.

Here is an example of what this might look like in Moesif’s Product Catalog.

Example of price in Moesif for uniques

For the Billing Meters themselves, below are two examples. The first one shows what a meter would look like for users aiming to charge based on “Unique Users” for the API. You’ll notice that for Metrics, “Unique Users” is selected as the metric to bill on.

Example of a billing meter using unique users metric

Alternatively, you may also choose to charge based on a custom unique value. Below is an example of a custom metric that will be aggregated by distinct value. In this example, for each patient extracted from the URI parameter, the meter will tally the number of unique/distinct patients being used on the system and charge the user for that amount.

Example of a custom metric being used as a 'unique' criteria