How mid-cycle proration works
When a customer upgrades in the middle of a billing cycle, they have already paid for the whole cycle on the current plan. Proration credits the unused days of the current plan and charges the new plan for the same days.
Example: a monthly plan of CHF 50.00, upgraded to CHF 120.00 from October 18. The October cycle has 31 days, 14 of them are left:
- Credit, current plan: 50.00 × 14/31 = CHF 22.58
- Charge, new plan: 120.00 × 14/31 = CHF 54.19
- Due now: 54.19 − 22.58 = CHF 31.61
Shortcut: (new price − old price) × days left ÷ days in cycle.
Downgrades, cancellations and billing systems
A downgrade works the same way; the credit exceeds the charge and is usually carried to the next invoice. A refund on cancellation, if the terms allow one, is the price × days left ÷ days in the cycle. Some billing platforms prorate to the second, so their figures can differ from a day-based calculation by a few cents. That is fine for invoicing; for the ledger, a day-exact split is the usual basis.
Deferred revenue on annual plans
For the vendor, an annual plan paid up front is earned over the service period (ASC 606, IFRS 15). The part that is not yet earned at the reporting date is deferred revenue, a contract liability. An annual plan of CHF 4,800.00 for September 15, 2026 to September 14, 2027, with a December 31 year-end:
- Revenue 2026: 108 days → (108/365) × 4,800.00 = CHF 1,420.27
- Deferred revenue at Dec 31: 257 days → (257/365) × 4,800.00 = CHF 3,379.73
Sep 15, 2026 (annual plan paid):
Dr Cash 4,800.00
Cr Deferred revenue 4,800.00
Dec 31, 2026 (revenue earned to date):
Dr Deferred revenue 1,420.27
Cr Subscription revenue 1,420.27The customer books the mirror image: prepaid software (an asset) that is expensed over the same period. For a month-by-month schedule and PDF or Excel export, use the full calculator.
Related calculators
- IFRS 15 calculator — time-based revenue allocation.
- Revenue recognition calculator — schedules under IFRS 15 and ASC 606.
- Insurance proration calculator — refunds and prepaid premium.
- Rent proration calculator — partial months on move-in and move-out.
- Software-Abo abgrenzen — the same topic in German, with Swiss bookkeeping.
Frequently asked questions
How do I calculate a prorated upgrade?
Credit the unused part of the current plan and charge the new plan for the rest of the cycle. Upgrading from CHF 50.00 to CHF 120.00 per month on October 18 leaves 14 of 31 days: credit CHF 22.58, charge CHF 54.19, so CHF 31.61 is due now. Shortcut: (new price − old price) × days left ÷ days in cycle.
How are downgrades prorated?
The same way, but the credit for the current plan is larger than the charge for the cheaper plan. The difference is usually kept as a credit balance for the next invoice rather than paid out; the terms of service decide.
Why does my billing system show a slightly different amount?
Some billing platforms prorate to the second or round each line separately, so their figures can differ from a day-based calculation by a few cents. For accounting, a day-exact split is the usual basis and is easy for auditors to follow.
How do I recognize revenue on an annual SaaS plan?
Under ASC 606 and IFRS 15, revenue for a subscription is recognized over the service period. CHF 4,800.00 for Sep 15, 2026 to Sep 14, 2027 gives CHF 1,420.27 of revenue in 2026 (108 days) and CHF 3,379.73 of deferred revenue (a contract liability) at December 31.
Is a prorated credit a refund?
Not necessarily. Most subscriptions apply the credit to the next invoice. A cash refund on cancellation depends on the terms; if they allow it, the refund is the price × days left ÷ days in the cycle.