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:
-
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.
-
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.
-
Industry Standards: Research common billable metrics within your industry or similar API services to understand established practices and pricing models.
-
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.
-
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.
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.
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.