Billing cycle and prorations explained
Your billing cycle anchors on the day you subscribed. Upgrades and added seats are prorated; price downgrades are deferred to period end and seat removals are not credited.
Written By Salvatore Sinigaglia
Last updated About 5 hours ago
Your billing cycle anchors on the day you subscribed. Upgrades and added seats are prorated; price downgrades are deferred to period end and seat removals are not credited.
Billing cycle and prorations explained
Your billing cycle repeats every month (or year) starting on the day you subscribed β that's the anchor date. A mid-cycle upgrade or added extra seat triggers a proration: Stripe charges the new setup prorated for the remaining days. A price downgrade is instead deferred to period end (Stripe Subscription Schedule) and is not prorated, and removing extra seats is not credited (
proration_behavior: 'none').
Who is this for
Owners, admins, and finance who want to understand why an invoice has multiple line items, or who need to predict the cost of a mid-cycle change.
The billing cycle
When you start a subscription on, say, the 15th of March:
- Anchor date: 15th
- Monthly plan: every 15th of the month, Stripe charges the full plan fee
- Annual plan: every March 15th, Stripe charges the annual fee
The anchor date stays constant even if you change plans mid-cycle β only the amount charged changes.
If the anchor day doesn't exist in a given month (e.g. 31st in February), Stripe shifts to the last day of that month.
What triggers a proration
During the trial, all changes use Stripe's proration_behavior: 'none' β no prorations apply, trial credits are preserved.
The proration math
Stripe uses this formula:
proration = (new_unit_price - old_unit_price) Γ days_remaining / cycle_lengthExample 1: Mid-cycle upgrade
- You're on Starter at $X/month, subscribed on the 1st
- On the 15th (day 15 of 30), you upgrade to Pro at $3X/month
- Stripe credits the unused 15 days of Starter: $X Γ 15/30 = $0.5X
- Stripe charges 15 days of Pro: $3X Γ 15/30 = $1.5X
- Net immediate charge: $1.5X β $0.5X = $X
- Next anchor date: full Pro fee = $3X
Example 2: Adding 2 extra seats mid-cycle
- You're on day 20 of a 30-day cycle (10 days left)
- Extra seat price: $19/seat/month
- Charge: 2 seats Γ $19 Γ 10/30 = ~$12.67 today
- Next anchor: full plan + (2 Γ $19) = monthly fee + $38 extra
Example 3: Annual plan upgrade mid-year
- You're on annual Starter, anchor date Jan 1, today is July 1 (~183 days remaining of 365)
- Upgrade to annual Pro
- Credit Starter unused: starter_annual Γ 183/365
- Charge Pro prorated: pro_annual Γ 183/365
- Net charge today = difference (positive)
- Anchor stays Jan 1
How prorations show on the invoice
Stripe generates an immediate invoice for mid-cycle changes (sometimes called a "true-up" invoice). It contains multiple line items:
Plan: Starter (unused β 15 days) β$X.50Plan: Pro (new, 15 days) +$X.50 ββββββTotal +$X.00The total is what you're actually charged (or credited if negative). Read top-to-bottom for the proration story.
Reading your next invoice
At the next anchor date, Stripe generates a regular invoice with:
- The full plan fee for the cycle
- Any add-ons (extra seats Γ number Γ price)
- Taxes / VAT per billing address
- Less any account credit balance from previous over-credits
Account credit balance
If a prorated change produces a credit larger than the charge, the difference becomes an account credit balance on Stripe. Future invoices automatically apply it first before charging your card. You can see your balance in the Stripe Customer Portal under Account credit.
Cycle reset events
These do NOT reset your billing cycle:
- Plan changes
- Add/remove seats
- Update payment method or billing address
- Pause/resume (Wevion doesn't currently expose pause; cancellation is the only "stop")
These DO create a new cycle:
- Resubscribing after a full cancel + read-only window (new anchor = resubscribe date)
- Switching from monthly to annual or vice versa (next anchor = first cycle of new interval)
Common questions
- Why did I get charged $X today, the invoice says $Y for the cycle? Mid-cycle change. The cycle fee shows the "from now on" amount; you were charged the prorated delta today.
- Why is the proration credit smaller than expected? Stripe rounds at the cent level. For small mid-cycle changes the rounding can feel disproportionate. Math holds in aggregate.
- Can I move my anchor date? Not directly. To shift, cancel and resubscribe on the desired day (you'll lose prepaid days from current cycle).
- Annual changes mid-year prorate over 365 days? Upgrades and added seats do β same formula, cycle_length = 365. Price downgrades are deferred to period end and not prorated.
- Do prorations apply to extra-seat removals? No β removing extra seats uses
proration_behavior: 'none', so there's no credit for the remaining days; the lower cost simply applies from the next cycle.
FAQ
When does my Wevion billing cycle renew?
Your billing cycle renews on the anchor date β the day you first subscribed. On a monthly plan Stripe charges the full plan fee on that day each month; on an annual plan it charges once a year on that date. The anchor date stays constant even when you change plans mid-cycle; only the amount changes.
What triggers a proration on my invoice?
A mid-cycle upgrade or an added extra seat triggers a proration: Stripe charges the new setup prorated for the remaining days (an upgrade also credits the unused portion of the old plan). A price downgrade is deferred to period end and is not prorated, and removing extra seats is not credited. Switching monthly to annual, updating payment method, and cancelling also do not prorate.
Why was I charged extra today when the invoice shows a different cycle amount?
That happens after a mid-cycle change. The cycle fee shows the "from now on" recurring amount, while today's charge is the prorated delta β the new setup for the remaining days minus a credit for the unused old setup. Stripe issues an immediate "true-up" invoice with these line items so you can read the proration story.
What is the account credit balance?
If a prorated change produces a credit larger than the charge, the difference becomes an account credit balance on Stripe. Future invoices automatically apply it first before charging your card. You can view your balance in the Stripe Customer Portal under Account credit.
Can I change my anchor date?
No, not directly. To shift your billing cycle you would need to cancel and resubscribe on the desired day, which means losing the prepaid days remaining in your current cycle. Resubscribing after a full cancel sets a new anchor equal to the resubscribe date.