Your country

Tools that support it use your country for local currency, number formats, units and paper size. Your choice is saved only in this browser.

Type a name or a two-letter code. Use the up and down arrow keys to move through the countries, Enter to choose one and Escape to close.

Proration Calculator for Subscriptions (Upgrades & Downgrades)

What a mid-period upgrade, downgrade, seat change or cancellation should bill.

Free preview, no sign-upIncluded in your pass Pro tool Pro pass: ₹179 / $5.99 for 30 days On this device; its files download once
+2 +1 more details No upload Business

Free preview: the net amount due now in full, with the first step of the working; the line amounts, policy comparison, batch mode and exports are locked. Locked until you unlock it: download and copy.

Pro pass ₹179 for 30 days or ₹79 for 1 week, one‑time. Pro pass $5.99 for 30 days or $2.99 for 1 week, one‑time. How to unlock

Try before you buy.

  • Free preview: the net amount due now in full, with the first step of the working; the line amounts, policy comparison, batch mode and exports are locked.
  • Locked until you unlock it: download and copy.
  • Unlock: Pro pass, ₹179 for 30 days or ₹79 for 1 week, a one-time payment that never renews. Unlock: Pro pass, $5.99 for 30 days or $2.99 for 1 week, a one-time payment that never renews.

Ways to unlock shows how to get the full result.

See passes (opens in a new tab)

Printing this result is locked in the free preview.

The change

Billing period
The date of the last bill.
Empty: one billing period after the start.
When the plan changes
Hours, minutes and seconds.
Measure the time left
The time of day of the last bill and of the next one.
Old plan
USD
New plan
USD
Tax optional
%
Net amount due now —

—Credit for unused time
—Charge for the time left
—Tax on the net
—Share of the period left

The invoice lines

LineAmount

Prorate now, later or not at all

PolicyCharged nowNext invoiceThis period in allNew plan fromYour revenue vs prorating

Amounts include tax when you entered a tax rate. The old plan is taken as paid in advance for the current period.

Draft wording for your terms

    A starting point, not legal advice: consumer law in your customers’ countries may require refunds or notice that this wording does not give.

    How this was calculated

    Batch mode a CSV of plan changes, one customer a row

    The rows use the billing period, the way of measuring and the time zone chosen above; each row brings its own prices, dates and tax rate. Nothing is uploaded.

    Next steps Done. What next?

    Start over

    A Pro pass unlocks the full result. See passes

    All business tools

    Results are estimates for general information and planning, not financial advice. Banks and institutions may calculate differently (rounding, fees, rate changes). Confirm figures with your lender or a qualified adviser before deciding.

    How this tool is checked

    Based on
    the method set out under ‘How the proration is worked out’.
    Sources

    This guide lists one source under ‘Sources’:

    Tests
    32 automated tests check its results.
    Found an error?
    Report a problem or write to support@mysmartcopilot.com, with what you entered and the result you expected.

    How we check our tools

    About the Proration Calculator for Subscriptions (Upgrades & Downgrades)

    When a customer changes a subscription in the middle of a billing period, the bill has to say what the change is worth for the time that is left. Enter the old and the new plan (price for one period and quantity of seats or units), the billing period and the moment of the change, and the calculator gives the credit for the unused time on the old plan, the charge for the rest of the period on the new plan and the net amount due now, with tax on the net — added to the prices or included in them.

    The share of the period that is left is measured three ways: the exact time left, to the second (what Stripe does by default), whole days, or 30-day months (every month counts as 30 days). The same engine prices a mid-period start (the first, partial bill up to the billing date) and a cancellation (the credit for the unused time), and seat changes are just a new quantity.

    With a Pro pass you also get the line-by-line invoice, a comparison of prorating now, on the next invoice, not at all or at the renewal with draft wording for your terms, batch mode for a CSV of many customers, and CSV and PDF exports. Without a pass the free preview shows the net amount due now for one change in full, with the first step of the working. Everything is worked out in your browser.

    How to use it

    1. Choose what happened: a plan or seat change, a start in the middle of a period or a cancellation, and the currency.
    2. Enter the billing period: how often it bills (monthly, every 3 or 6 months, yearly or a number of days) and the day the current period started; the next billing date follows, or type your own.
    3. Enter the date and time of the change and choose how to measure the time left: to the second, by whole days or by 30-day months. For a proration to the second, choose whether the times are in your time zone or in UTC, as billing systems record them.
    4. Enter the old and the new plan: the price for one billing period and the quantity. Add a tax rate if you charge tax.
    5. Read the net amount due now (a negative amount is a credit to the customer) and the working under How this was calculated.
    6. With a Pro pass, read the invoice lines and the policy comparison, or open Batch mode to work out a CSV of plan changes; Copy summary, Download CSV and Download PDF unlock with the pass too.

    Examples

    Stripe’s own example: £10 a month upgraded to £20 halfway through
    Input
    A 30-day period, the change after 15 days · old £10 · new £20
    Result
    Unused time on the £10 plan: −£5.00
    Remaining time on the £20 plan: +£10.00
    Due now: £5.00

    The same figures as the example on Stripe’s prorations page.

    To the second: Silver (10.00) to Gold (32.52) with 5 days 3 h 45 min 40 s of 31 days left
    Input
    Period 6 Aug 21:28:08 to 6 Sep 21:28:08 (UTC) · change 1 Sep 17:42:28
    Result
    Share left = 445,540 ÷ 2,678,400 s = 0.166346
    Unused time on Silver: −1.66 · Remaining time on Gold: +5.41 · Due now 3.75

    The two lines of Stripe’s preview-invoice example. Added to the next full month at 32.52, that invoice comes to 36.27.

    Three seats added halfway through April
    Input
    5 → 8 seats at 12 a month · 15 of 30 days left · by days
    Result
    Credit −30.00 · charge +48.00 · due now 18.00

    Only the three new seats cost anything for the rest of the month: 3 × 12 × 0.5 = 18.

    A start on 16 March, billed on the 1st
    Input
    30 a month · period 1 March to 1 April · by days
    Result
    First bill: 30 × 16 ÷ 31 = 15.48, then 30.00 on 1 April

    Common uses

    • Checking the proration line on a billing platform’s invoice before a customer asks about it.
    • Quoting an upgrade or a seat increase to a customer before they decide.
    • Choosing an upgrade, downgrade and cancellation policy and writing it into your terms.
    • Working out credits for a list of customers moved to a new price.

    How the proration is worked out

    • Share left = the time left in the period after the change ÷ the length of the period.
    • Credit = the old price × the old quantity × the share left (the time the customer paid for and will not use).
    • Charge = the new price × the new quantity × the share left.
    • Net = charge − credit; due now = the net plus tax at your rate, or the net when the prices include tax (the tax in it is net − net ÷ (1 + rate)).

    Each line is rounded to the smallest unit of the currency (cents, or none for the yen), half away from zero, and the net is the sum of the rounded lines, as on an invoice. A negative amount due is a credit to the customer.

    To the second, by days or by 30-day months

    • To the second: the time left and the length of the period in seconds, from the date and time of the change. Stripe calculates prorations down to the second by default, so this matches what it bills, and two previews a few minutes apart differ slightly. Choose UTC to work from the times a billing system shows in UTC.
    • By days: whole calendar days from the change to the next billing date ÷ the days in the period. A change on 16 March leaves 16 of March’s 31 days.
    • By 30-day months: every month counts as 30 days (the 30/360 basis, with a month’s last day counted as its 30th), so the 16th of any month leaves 15 days of 30, and a year counts 360 days. Some invoicing and payroll systems price a day this way.

    Prorate now, on the next invoice, not at all, or at the renewal

    • Prorate now: the customer pays (or is credited) the difference at once; the next invoice is the new plan’s full price.
    • Prorate on the next invoice: the same difference, added to the next renewal invoice instead (Stripe’s default behaviour adds proration lines to the next invoice).
    • No proration: the new plan starts at once and nothing is charged or credited for this period; the new price starts at the renewal. An upgrade then gives away the rest of the period, a downgrade keeps the higher price for it.
    • Change at the renewal: the old plan runs to the end of the period it was paid for. The usual choice for downgrades and cancellations.

    The comparison shows what each policy charges now, what the next invoice will be and what the current period costs the customer in all, and it writes draft wording for your terms from your choices.

    Batch mode: a CSV of plan changes

    One change per row, with a heading row: customer, old_price, old_quantity, new_price, new_quantity, period_start, period_end (optional: the next billing date), change_at and tax_percent (optional). Dates are ISO dates (YYYY-MM-DD), with an optional time and zone (YYYY-MM-DDThh:mm:ssZ, YYYY-MM-DD hh:mm, +05:30); a time without a zone is read in the time zone you choose on the page. A row with only a new plan is a start, a row with only an old plan a cancellation. Download the template to start from it; with a Pro pass the results show on the page and download as CSV and PDF.

    Sources

    • Stripe: Prorations — prorating to the second, the credit and charge lines, proration behaviour and the preview-invoice example

    Limitations

    • Subscriptions billed in advance: the old plan is taken as paid for the whole current period. Usage-based charges billed in arrears are not prorated.
    • One change per period. For several changes in one period, work them out one after the other, each from its own date with the plan then in force.
    • Enter discounted prices if a discount applies: Stripe, for example, prorates at the discounted price. Platform-specific rules — such as which earlier price a credit is based on, trials, minimums or rounding of a cent differently — are not modelled.
    • One tax rate on the net. Whether a credit reduces the tax you owe, and how a credit note must be issued, depends on your tax rules.
    • In your time zone, a period that crosses a change of clock (daylight saving time) is an hour shorter or longer to the second; in UTC it is not.

    Privacy

    On this device; its files download once

    Everything happens in your browser. What you enter or open here is not uploaded or stored by MySmartCoPilot. Loads the CSV reader and the PDF engine from this site the first time they are needed. Your prices, dates and files never leave this browser.

    Frequently asked questions

    What do I get without a pass?

    Without a pass, Proration Calculator for Subscriptions (Upgrades & Downgrades) shows the net amount due now in full, with the first step of the working; the line amounts, policy comparison, batch mode and exports are locked. Until you unlock it, the result can’t be downloaded or copied. A Pro, Premium or Ultimate pass, a one-time payment that never renews, unlocks the full result. The pricing page lists the passes and their prices.

    How do I calculate a prorated amount for an upgrade?

    Work out the share of the billing period left after the upgrade (the time left ÷ the length of the period), credit the old plan’s price × that share and charge the new plan’s price × that share. The difference is due now. A £10 plan upgraded to £20 halfway through: −£5 + £10 = £5.

    Does Stripe prorate to the second?

    Yes, by default: its documentation says it calculates prorations down to the second (it can be changed to days, hours, weeks or months with its proration customisations). Choose To the second and the times in UTC to match it. See Stripe: Prorations.

    What is the difference between prorating by days and by 30-day months?

    By days counts the real calendar: in a 31-day month a day is 1/31 of the price, in February 1/28. On 30-day months every month has 30 days, so a day is always 1/30 of the monthly price and the 16th of any month leaves exactly half of it.

    Should a downgrade be refunded straight away?

    That is a policy choice. Many services let a downgrade take effect at the renewal, so the customer keeps what they paid for; others credit the difference to the account. The policy comparison shows both, and what each costs you this period.

    How is a customer who joins in the middle of the month billed?

    With a billing date fixed for everyone (the 1st, say), the first bill covers only the days to that date: the price × the share of the period left. Choose Start mid-period, the billing period the customer joins in and the start date.

    Do I need a pass?

    To see the invoice lines, the policy comparison and batch mode, and to export, yes: a Pro pass unlocks every Pro tool. Without a pass you see a free preview: the net amount due now for one change in full, with the first step of the working.

    Quick answers and tool search

    Type to search tools or to get a quick answer, for example 18% of 2500. Use the up and down arrow keys to move through the results, Enter to choose, and Escape to close.