Days Sales Outstanding (DSO)
Concept
Days Sales Outstanding measures how long it takes a company to collect payment after a sale on credit. It converts the receivables balance into a number of days, which is the unit finance and billing teams actually plan around: cash timing, dunning cadence, and collections staffing.
Formula: DSO = (accounts receivable / credit sales) x days in period.
A 30-day period is the common quick read; a 90-day window smooths seasonality.
Either way, the period in the formula must match the period the credit-sales
figure covers, or the result is meaningless.
Worked example
A fictional B2B software company, Northwind Billing Co., invoices customers on NET 30 terms. For the 30 days ending September 30:
- Accounts receivable at period end: $412,000
- Credit sales (invoices issued) during the period: $287,000
- Period length: 30 days
DSO = (412,000 / 287,000) x 30 = 1.4355 x 30 = about 43 days.
Reading it: on these inputs the DSO ratio comes out near 43 days against NET 30 terms - a gap worth investigating. Two cautions before acting on it: DSO is an aggregate ratio of period-end receivables to one period's credit sales, not a measured average of actual payment times, so it cannot say how late any individual invoice was paid; and a single DSO figure cannot distinguish a few large late invoices from an even, process-wide lag. The next questions a billing operator asks: is the gap concentrated or spread? Did it move versus last period? DSO starts the investigation; it does not finish it.
Calculator
Enter period-end receivables, credit sales for the SAME period, and the period length. The formula segments are shown so you can see which input moves the result.
Where Billing Toolkit fits
DSO is a symptom metric: the levers that move it live in billing operations - invoice finalization timing, payment method coverage, dunning schedules, and how price changes are rolled out to existing subscribers. As Billing Toolkit's capabilities ship and are verified, this page can show where those levers are managed. Until then this section stays informational.