Guide · Free calculator

A size curve that sold-out sizes don’t skew

Your sales by size only show what was left to buy. When a size sells out, it stops selling, and a plain size curve reads that as low demand. Count sales only on the days each size was in stock, and the curve shows what customers wanted.

Use the calculatorHow it works

Published October 5, 2026 · By Sizo

Size curve calculator

Enter one product’s units sold by size over a period, and how many days each size was in stock. Nothing you type leaves your browser.

SizeUnits soldDays in stockRemove

Your size curve

From sales aloneCorrected for sold-out days

    SizeSplit by salesCorrected split
    Total

    This removes one bias: days a size was sold out. Sizo also weighs returns, the season ahead, each shop and online, and your supplier’s lead time and minimums.

    What a size curve is

    A size curve is the share of a product’s demand that falls on each size: for example S 20%, M 33%, L 33% and XL 13%. You use it to split an order. On that curve, 240 units of a sweater are S 48, M 80, L 80 and XL 32.

    Why sales alone get it wrong

    Sales are the demand you could serve. A size that is out of stock sells nothing, however many customers ask for it. So the sizes that sell out fastest, usually your best ones, look weaker in the sales report than they are.

    Build the next order on that curve and you buy too few of them again, and they sell out again. Forecasters call this censored demand: sales stop at what was on the shelf.

    The fix: sales per in-stock day

    1. For each size, take the units sold in the period. Use units kept, after returns, if you can.
    2. Count the days that size was in stock in the same period.
    3. Divide units by in-stock days. That is how fast the size sells when customers can buy it.
    4. Each size’s share of the total speed is its corrected curve.

    A worked example

    One sweater from an example store over 90 days. The numbers are illustrative.

    SizeSoldDays in stockPer day in stockFrom salesCorrected
    S54900.626%20%
    M54541.026%33%
    L63631.030%33%
    XL36900.417%13%

    On sales alone, M looks just like S. But M was out of stock for 36 of the 90 days. Per day in stock, it sold two-thirds more than S.

    Split a 240-unit order on the sales curve and you get S 63, M 62, L 73 and XL 42. On the corrected curve it is S 48, M 80, L 80 and XL 32: 18 more of M, the size that kept selling out, and 15 fewer of S.

    Where the simple fix stops

    • Very few in-stock days. A size that sold out on day three gives you a speed from three days. Treat anything under two weeks with caution.
    • Seasons. A speed from the peak weeks overstates the quiet ones. Compare like with like, or the same season last year.
    • Several shops. Each shop, and the online store, can have its own curve. A shop that sells more L shouldn’t get the online curve.
    • Returns. Count units kept, not units sent. A size that comes back often looks better in sales than it is.
    • New products. No history means no curve. Start from similar products you already sold.

    Getting the numbers from Shopify

    Units sold by size are in Shopify’s sales reports, broken down by product variant. Days in stock are harder: Shopify records every inventory change for each variant, but no standard report counts the days a size sat at zero, so you would rebuild them from that history by hand.

    Sizo does both for you, for every product, size and shop, and keeps them up to date. It connects to Shopify read-only.

    Read next

    Questions

    What is a size curve?

    The share of a product’s demand that falls on each size, for example S 20%, M 33%, L 33%, XL 13%. You use it to split an order between sizes.

    Why does my best size look average in sales reports?

    Because it sold out. A size that is out of stock sells nothing, so a size that often sells out looks weaker than it is. Divide its sales by the days it was in stock to see how fast it really sells.

    How much data do I need?

    Enough in-stock days per size for the speed to settle. Two weeks is a sensible minimum and a full season is better. With fewer days, lean on similar products you already sold.

    Should every shop use the same size curve?

    Only if they sell alike. Shops often differ from each other, and the online store usually differs from the shops. Sizo learns how each shop and the online store sells, and splits each order between them.

    Does Sizo do this for me?

    Yes. Sizo counts only in-stock days for every product and size, and also weighs returns, the season ahead, each shop and online, and your supplier’s lead time and minimums. It connects to Shopify read-only. Start with the free audit of what wrong orders cost you over the last 12 months.

    Want this for every product?

    Sizo builds the curve for every product, size and shop from your Shopify data, read-only. Start with a free audit of what wrong orders cost you over the last 12 months.

    Get a free auditConnect your shop