.jpg)
Consumption Pricing: How It Works + Implementation Guide
Learn how consumption pricing works, the infrastructure it requires, and how engineering teams implement usage-based pricing.
Prorated billing for AI products fails when the billing event and the entitlement update run in separate systems. Here's what to build and in what order.
.png)
Every engineering team solves prorated billing twice.
The first time you wire up the webhook, calculate the daily rate, and charge the difference. It works. The second time, a customer upgrades mid-cycle and immediately hits a credit limit that no longer applies.
That's when the entitlement layer enters the picture, and the first solution turns out to have covered only half the problem.
Prorated billing charges customers only for the portion of a billing period they actually use, rather than the full cycle.
When a plan change happens mid-cycle, neither a full charge nor no charge accurately reflects what the customer received. Proration calculates the exact amount based on the time remaining in the billing period.
The core formula is:
(Days used ÷ Days in billing cycle) × Full period price = Prorated charge
Every plan change has two sides:
Depending on the product's billing policy, these adjustments can be applied immediately or deferred to the next invoice.
Here's a simple example. A customer upgrades from a $120/month plan to a $240/month plan on day 10 of a 30-day billing cycle.
In this example, the customer receives an $80 credit for the unused portion of the old plan and a $160 charge for the remaining time on the new plan. The difference is an $80 upgrade charge, and the next billing cycle begins at the full $240/month rate.
Proration is not always applied immediately. Some products defer plan changes until the next billing cycle. While that simplifies billing, it can create friction when feature access or credit allocations change with the plan.
In AI products, customers often expect new limits, credits, or model access to become available as soon as they upgrade.
Proration applies any time a billing period and a service delivery period don't perfectly overlap. These are the scenarios where it comes up most often in subscription and AI products.
Daily vs. monthly proration is a policy decision that affects precision.
The difference becomes meaningful when plan prices are high, and changes happen frequently.
Traditional subscription proration is a billing calculation. A customer changes plans, the system calculates prorated charges and credits, and the invoice reflects the result.
AI products add a second requirement: entitlement updates. When a plan changes, billing and access have to update together.
For example, if a customer upgrades from a 50,000-credit plan to a 200,000-credit plan, two things need to happen at the same time:
These systems often operate independently. Without coordination, customers can pay for a new plan before they can actually use it.
When a customer upgrades mid-cycle, the product needs a clear policy for handling existing credits.
No single approach is correct for every product. The right choice depends on the credit model and customer expectations. What matters is having a clear policy and enforcing it immediately when the plan change occurs.
Usage limits need to update before the next request.
If the new plan includes:
Those entitlements need to become available immediately. A billing system can calculate the correct charge, but delayed entitlement updates create a poor customer experience because customers have already paid for capabilities they still cannot access.
Enterprise plans often distribute budgets across teams, departments, and agents.
When those allocations change mid-cycle, the system has to process:
Each step needs to settle before the next request executes. Otherwise, different parts of the organization can see different credit states at the same time, creating inconsistent enforcement and unpredictable usage behavior.
The formula stays the same across scenarios. The complexity comes from what is being prorated: the subscription charge, the credit allocation, or both.
A customer is on a $99/month plan that includes 50,000 credits. They upgrade to a $299/month plan with 200,000 credits on day 12 of a 30-day billing cycle.
The customer pays $120.00 and receives 120,000 additional credits for the rest of the billing cycle. At renewal, they move to the full $299/month plan with the full 200,000-credit allocation.
A team with 10 seats at $50 per seat per month adds 3 seats on day 20 of a 30-day billing cycle.
The billing adjustment is straightforward, but the entitlement change matters too. The three new users need access immediately when the seats are added.
A customer on a $200/month plan with 100,000 included tokens upgrades to a $400/month plan with 300,000 included tokens on day 15 of a 30-day billing cycle.
A hybrid model introduces an extra consideration:
This is where billing and entitlement systems have to stay synchronized. The invoice adjustment and the new usage limits need to take effect together.
Every plan change triggers two separate events:
Billing platforms are built for the first. They calculate prorated amounts, generate invoice line items, and collect payment. The second event requires a separate system responsible for keeping access, credits, and limits in sync with the customer's plan.
A plan change can affect multiple pieces of runtime state at once:
These updates need to reach the enforcement layer before the next request executes, not before the next invoice is generated.
Plan changes also create an edge case, where a request may already be running when the upgrade occurs.
The enforcement layer needs a defined policy for:
Without a clear policy, plan changes can produce inconsistent behavior for customers.
The billing record and entitlement record need to stay synchronized.
For prepaid credits, that means:
Any mismatch creates reconciliation work later.
Without a shared source of truth connecting billing and entitlements, every pricing change starts leaking into application code. New plans, limits, and credit models often require engineering work before they can go live.
Some teams avoid that by moving plan definitions into a product catalog and entitlement system. Webflow works with Stigg to manage packaging updates through a centralized product catalog, and plan changes take effect without modifying application code.
Implementing prorated billing for AI products requires clear policies for credits, entitlements, and revenue recognition so billing and access stay synchronized when plans change.
The first decisions are:
Undocumented proration rules create inconsistencies that become difficult to trace later, especially when different billing paths exist for self-serve and enterprise customers.
Choose a credit wallet approach and design the data model around it. An incremental allocation model, a balance reset model, and a full-grant model all require different handling of credit state and reconciliation.
Billing and entitlement updates share the same trigger, but they should operate independently.
A billing failure should not leave entitlements partially updated, and an entitlement failure should not block invoice processing. Each workflow needs its own error handling and recovery path.
Credit allocations, token limits, and feature access should update before the customer's next request reaches the application.
Delayed provisioning creates a poor experience because customers can pay for an upgraded plan while still operating under the previous plan's limits.
Prorated invoices should clearly show:
Clear invoice line items reduce customer confusion and make reconciliation easier for finance teams.
AI credit plans introduce deferred revenue requirements. When customers receive credits, that revenue is typically recognized as credits are consumed.
The entitlement system should keep an immutable credit ledger so each deduction can be traced back to a specific transaction. This keeps consumed credits, recognized revenue, and accounting records aligned at the transaction level.
Prorated billing looks like a finance problem on the surface. For AI products, the bigger challenge is keeping credits, entitlements, and access controls synchronized when plans change.
The billing calculation is usually the easy part. The difficulty comes from everything that has to happen alongside it:
These are infrastructure concerns rather than billing calculations. The systems that process charges and the systems that govern access need to stay aligned in real time.
Getting the policy right before implementation, and treating billing events and entitlement events as separate workflows, is often what determines whether plan changes work smoothly in production or turn into ongoing support issues.
Mid-cycle plan changes create a synchronization requirement that standard billing tools weren't designed for.
The billing event settles the financial side. The entitlement update applies the new credit allocation and usage limits. At production volume, both events need to resolve in the same operation.
Stigg is the usage runtime for AI products. Entitlements, credits, usage limits, and spend governance are enforced synchronously in the request path, including at the moment a prorated plan change takes effect.
Stigg handles the entitlement side of prorated billing, including:
Stigg works alongside your existing billing stack and handles the entitlement layer that billing tools weren't designed for. See how Stigg’s entitlement layer handles prorated plan changes without replacing the billing stack.
Most companies should use prorated billing when customers upgrade, downgrade, or add seats mid-cycle. Prorated billing checks that customers pay only for the portion of the service they actually use and prevents overcharging or undercharging.
Credit balances can be adjusted in several ways depending on the product's policy. A system may add a prorated allocation, reset the balance to a prorated amount, or grant the full new allocation immediately. The entitlement layer should apply the chosen policy as soon as the plan change occurs.
The main difference between prorated billing and deferred billing is when the plan change takes effect. Prorated billing applies the change immediately and adjusts charges based on the remaining days in the cycle. Deferred billing delays the change until the next billing period begins.
Prorated billing for AI products requires both a billing update and an entitlement update. The billing system adjusts the charge, while the entitlement system updates credits, limits, and access before the customer's next request runs.
Prorated billing can change the deferred revenue balance associated with prepaid credits. Under ASC 606, revenue is generally recognized as credits are consumed, which requires a transaction-level record of credit grants and usage.