Methodology

A calculator you cannot audit is an opinion with an input box. This page documents the exact arithmetic behind every ShelfOwl calculator — the same formulas that run in your browser, covered by automated test fixtures in our codebase so the published formula and the shipped code cannot drift apart. Where a method involves a judgment call (like sizing safety stock), we say which method we chose and why.

Fee rates that appear as defaults are documented separately on the sources page with links and verification dates; changes are tracked in the rate update log.

True COGS

true COGS = unit cost + inbound freight + (platform fee % × price) + (payment % × price + fixed fee) + ad spend per unit + (return rate % × price) + packaging

The return-rate term is an allowance: expected refund cost spread across all units sold. Accounting COGS excludes fees and marketing; this figure exists for pricing and reorder decisions, not for your tax return. Try it →

Reorder point

reorder point = (average daily sales × lead time days) + safety stock

The classic ROP formula. Days until you hit it = (current stock − ROP) ÷ daily sales, floored at zero. Try it →

Safety stock

safety stock = (max daily sales × max lead time) − (average daily sales × average lead time)

The max-minus-average method: buffer sized to survive your worst observed demand coinciding with your worst observed supplier delay. Simpler than z-score service-level methods and computable from data every seller already has. Negative results clamp to zero. Try it →

Latest order date

latest order date = today + (current stock − safety stock) ÷ daily sales − lead time

ShelfOwl’s signature output: order any later and you dip below safety stock before replenishment lands. Projected stockout date = today + current stock ÷ daily sales. Try it →

Marketplace profit (Etsy / Shopify / TikTok Shop / supplement)

net profit = price − product cost − shipping − Σ(percentage fees × price) − Σ(fixed fees) [− amortized monthly costs, where applicable]

Each platform calculator instantiates this with that platform’s published fee lines (see Sources). The Shopify variant amortizes plan + app cost per order (monthly cost ÷ orders per month); the supplement variant adds ad CAC and a repeat-order view without it. Try it →

Amazon FBA profit

net profit = price − product cost − inbound per unit − storage per unit − (referral % × price) − FBA fulfillment fee; break-even price = (product + inbound + storage + FBA fee) ÷ (1 − referral %)

The FBA fulfillment fee is an input, not a constant — Amazon prices it by size tier and weight, so pull yours from the Revenue Calculator in Seller Central. Try it →

Break-even

break-even units = fixed costs ÷ (price − variable cost per order); break-even revenue = break-even units × price

Contribution-margin form. If price ≤ variable cost, contribution is zero or negative and no volume reaches break-even — the calculator reports that honestly instead of a huge number. Try it →

ROAS & break-even ROAS

ROAS = ad revenue ÷ ad spend; break-even ROAS = 1 ÷ gross margin fraction; profit on ad sales = ad revenue × margin − ad spend

Break-even ROAS is the number most ROAS calculators skip: a 2.8 ROAS loses money at a 30% margin (break-even 3.33) and prints at 55% (break-even 1.82). Feed the margin from the True COGS calculator. Try it →

Inventory turnover

turnover ratio = annual COGS ÷ average inventory value (at cost); days on hand = 365 ÷ ratio

Both COGS and inventory must be at cost — mixing retail-valued inventory with cost-valued COGS is the most common way this ratio gets silently corrupted. Try it →

Known limits

  • Daily-sales inputs assume a stable recent baseline; a viral spike or a stockout gap in your history will skew any velocity figure. Use a 30–90 day window and exclude out-of-stock days where you can.
  • The max-minus-average safety stock method reacts to observed extremes, not statistical service levels. It is deliberately conservative for small catalogs; enterprise planners with thousands of SKUs use z-score methods instead.
  • Marketplace fee structures change and vary by country, category and seller tier. Defaults are documented and dated, and every rate field is editable — when in doubt, your own fee report beats our default.