Usage-Based Pricing

Usage-based pricing charges customers based on what they actually consume during a billing period.

When should I read this?

Read this if you want to implement metered billing, pay-as-you-go pricing, or consumption-based charges.

How it works

  1. Define a usage metric (API calls, storage, events, etc.)
  2. Track usage throughout the billing period
  3. Calculate charges at billing time
  4. Generate invoice with usage totals

Usage metrics

A usage metric defines what you're measuring:

Field Description
Name What you're tracking (e.g., "API Requests")
Unit How it's measured (e.g., "requests")
Aggregation How usage is calculated (sum, max, last)

Reporting usage

Usage is reported via:

  • API — send usage events in real-time
  • Batch upload — import usage at end of period
  • Automatic metering — for integrated services

Pricing structures

Usage-based pricing can use different rate structures:

Structure Description
Per-unit Fixed rate per unit (e.g., $0.01/request)
Tiered Different rates for different usage levels
Volume Single rate based on total usage

Billing timing

Usage is typically finalized at period end:

Period starts → Usage accumulates → Period ends → Usage finalized → Invoice generated

Best practices

  • Set usage alerts — notify customers before they hit cost thresholds
  • Provide estimates — show projected costs during the period
  • Include minimums — base fee ensures predictable revenue

Common patterns

Pattern Example
Pure usage $0.001 per API call
Included usage 10,000 calls free, then $0.001
Committed usage Pre-pay for 100K calls at discount

Next steps