Tiered, usage-based, or hybrid — priced the way your business actually sells.
Custom billing layer on Stripe with tiers, usage metering, proration, mid-cycle changes, and a self-serve portal. Monthly subscription delivery.
Who this is for
SaaS founder moving from flat pricing to tiered, per-seat, or usage-based billing where the custom logic is impossible to express in the Stripe dashboard alone.
The pain today
- Flat pricing leaving money on the table; tiered too complex to DIY
- Usage-based metering broken — events fire but Stripe records nothing
- Mid-cycle seat additions not prorating, customers complaining
- Customer portal missing features (credit display, cancellation flow)
- Sales-assisted quotes requiring custom invoices Stripe dashboard can't generate
The outcome you get
- Stripe Billing configured with tiered, per-seat, or usage-based models
- Usage metering wired from product events into Stripe Usage Records
- Self-serve customer portal — plan changes, payment methods, invoices
- Sales-assisted quote + custom invoice flow for enterprise
- Dunning and payment failure recovery automated
Subscription models by business type
Different businesses sell differently, and Stripe handles each with a different configuration. Flat subscription (one product, one monthly price): simplest, good for content subscriptions, single-tier SaaS. Per-seat tiered (Starter, Pro, Enterprise with seat counts): most B2B SaaS, prorated when seats change. Metered usage (API calls, storage, minutes): usage records posted to Stripe, invoice at period end, optional caps to prevent bill shock. Hybrid (base fee + usage overages): most product-led SaaS at scale. Sales-assisted (custom prices per enterprise deal): Stripe Invoices with manual amount, tied to subscription for recurring. I pick the model with you based on how your buyers actually decide, then configure Stripe to match.
Usage-based metering patterns
Three ways to meter usage, chosen by frequency and cost. Real-time Usage Records (posted on every event): most accurate, more API calls, right for high-value events like AI API calls. Batched Usage Records (aggregated hourly or daily): cheaper Stripe API usage, acceptable latency for most usage models. Calculated at invoice time (your app holds the counter, writes once per period): simplest, only works for models where usage is additive and your system of record is authoritative. I recommend based on your event volume and your appetite for Stripe API cost. For most SaaS, batched hourly is the sweet spot.
Customer portal and self-serve
Stripe-hosted Customer Portal covers 80% of self-serve needs: view invoices, update payment methods, change plan (to pre-configured options), cancel subscription, update billing email. For the 20% Stripe doesn't cover — custom cancellation flow with retention offers, credit balance display, usage visibility, invoice download in specific formats — I build a custom UI on top of Stripe APIs. Both embed in your app. The decision is how much billing UX control you need vs time-to-ship. Most teams start with hosted portal and upgrade to custom when churn data shows cancellation flow is a retention lever.
Case study: bolttech payments
At bolttech, the billing system sat across 15+ international markets with subscription-like patterns for B2B insurance partners plus one-off transaction billing for consumer flows. 40+ payment providers feeding a unified billing and reconciliation layer. The discipline that made it work at unicorn scale — event idempotency, double-entry ledger, daily reconciliation — applies identically to SaaS billing on Stripe. Scale changes dollar values, not architectural discipline. The patterns I apply on a seed-stage SaaS billing integration are the same ones that kept bolttech's Payment Service at 99.9% uptime with 0 post-launch critical bugs.
Pricing
Stripe Billing work fits the Applications Standard tier at $3,499/mo for most subscription setups. Complex usage-based metering across multi-tenant workspaces, or enterprise billing with custom invoicing and marketplace payout splits, moves to Pro at $4,500/mo. First-version timeline: 2–3 weeks for tiered subscriptions, 4–6 weeks for usage-based or hybrid. Subscription continues through refinement — dunning tuning, portal customization, new tier rollouts. 14-day money-back, cancel anytime, Work Made for Hire. Test coverage for every billing state transition is part of the delivery.
When Stripe Billing isn't enough
Stripe Billing covers about 90% of SaaS use cases. Where it gets strained: extremely high invoice volume (>100k invoices/month — move to custom invoicing), complex revenue recognition (RevRec separate from billing — integrate with NetSuite or custom), marketplace split payments with complex splits (Stripe Connect, sometimes augmented with custom logic). For most teams the answer is 'Stripe Billing does it, we just haven't configured it yet.' I'll tell you honestly when you've outgrown Stripe Billing vs when you're under-using it. Rebuilding billing is costly; un-used Stripe features cost nothing.
Recent proof
A comparable engagement, delivered and documented.
Unified payment orchestration across Asia and Europe
Delivered the payment orchestration platform at bolttech, a $1B+ unicorn, with 40+ integrations across multiple regions.
Frequently asked questions
The questions prospects ask before they book.
- Can I support multiple pricing models at once?
- Yes. Many SaaS companies run flat plans for SMB plus usage-based for power users plus custom-quoted enterprise. Stripe handles all three through separate Products and Prices, with customers subscribed to the combination that matches their deal. The billing UI shows one unified view per customer.
- How do mid-cycle plan changes work?
- Stripe automatically prorates. Upgrade mid-cycle: immediate credit for unused portion of old plan, immediate charge for prorated new plan. Downgrade mid-cycle: schedule change at period end (most common) or immediate downgrade with credit. The behavior is configurable per plan-change type; I set sensible defaults in the first version.
- What about annual prepay with monthly billing?
- Stripe's Subscription Schedules handle this. Customer commits to a 12-month term but pays monthly; cancellation honors the commitment period. Or one-time annual charge with monthly Subscription Items for tracking — depends on how your sales team structures deals. Both patterns supported.
- Does this support sales-assisted enterprise billing?
- Yes. For deals closed by sales with custom terms, Stripe Invoices (one-off or scheduled) work alongside Subscriptions. Custom amounts, NET-30 payment terms, purchase orders, and multi-line-item invoices all covered. The admin UI lets AEs generate and send custom invoices without engineering involvement.
- How do I handle failed payments?
- Stripe Smart Retries + custom dunning email sequence. Failed payment triggers 3 retries over 1–3 weeks with Stripe's ML-optimized timing. Customers receive branded emails at each failure. After final retry, subscription moves to past_due, then canceled. Grace period and email content are configurable per plan tier.
Ready to start?
Tell me what you need in 60 seconds. Tailored proposal in your inbox within 6 hours.