Days Sales Outstanding (DSO) Calculator for Contractors
By BRIX Editorial Team · Updated
Days sales outstanding (DSO) is the average number of days it takes customers to pay after you invoice them. Divide accounts receivable by invoiced sales for the period, then multiply by the days in the period. A contractor with $92,000 outstanding on $180,000 of quarterly invoices has a DSO of 46 days.
- Invoiced sales per day
- $2,000
- Receivables you'd carry at 30 days
- $60,000
- Cash tied up above target
- $32,000
- Yearly cost of carrying it
- $3,200
Your customers take about 46 days to pay. Getting to 30 days would put $32,000 back in the bank, cash you're effectively lending customers for free. At 10% on a credit line, that's $3,200 a year.
Key takeaways
- DSO = (accounts receivable ÷ invoiced sales) × days in the period.
- Only invoiced (credit) sales count. Jobs paid on the spot pull the number down and hide slow payers.
- Compare DSO with your payment terms. Net 30 and a 46-day DSO means customers are two weeks late on average.
- Every day of DSO above target is cash you're lending customers interest-free.
How do you calculate days sales outstanding?
Take your accounts receivable balance at the end of the period, divide it by the sales you invoiced during that period, and multiply by the number of days in the period. The result is the average number of days an invoice sits unpaid. Use a quarter or a trailing 12 months to smooth out a lumpy month.
DSO = (Accounts receivable ÷ Invoiced sales) × Days in period
- Accounts receivable
- unpaid customer invoices at the end of the period
- Invoiced sales
- sales billed on terms during the period, not cash collected
- Days in period
- 30 for a month, 90 for a quarter, 365 for a year
- 1
Pull your A/R balance.
Run an accounts receivable aging report in QuickBooks or your invoicing tool as of the last day of the period.
- 2
Total invoiced sales for the period.
Use the sales you billed on terms. Leave out jobs collected at the door; they never enter receivables.
- 3
Divide and multiply.
A/R ÷ invoiced sales × days in the period gives your DSO.
- 4
Compare with your terms.
Net 30 terms with a 46-day DSO means the average customer pays 16 days late. Set the target in the calculator to see the cash that frees up.
What is a good DSO for a contractor?
A good DSO is close to your payment terms. If you bill net 30, anything in the low 30s means customers are paying on time; a DSO that drifts up month after month means your collections are slipping, even if sales look fine. Residential work paid at the door should run close to zero. Commercial and general-contractor work with retainage and pay-when-paid clauses usually runs much longer, so compare against your own terms and your own history rather than a single industry number.
| Target DSO | Receivables at target | Cash freed by getting there | Yearly cost at 10% |
|---|---|---|---|
| 30 days | $60,000 | $32,000 | $3,200 |
| 45 days | $90,000 | $2,000 | $200 |
| 60 days | $120,000 | $0 | $0 |
DSO vs. accounts receivable aging
DSO is one number for the whole book; an accounts receivable aging report breaks it into buckets (current, 1–30, 31–60, 61–90, over 90). Use DSO to track the trend and the aging report to decide who to call today. A DSO of 46 can hide three invoices at 120 days that are becoming bad debt.
How to lower your DSO
- Invoice the day the job closes. Every day between finishing work and sending the bill is a day added to DSO before the customer even sees it.
- Take deposits and progress payments. Money collected up front never becomes a receivable. See progress billing.
- Make paying easy. Card and ACH links on the invoice get paid faster than mailed checks.
- Send reminders automatically. A reminder before the due date, on it, and a week after keeps most invoices from aging.
- Charge late fees and enforce terms. See how to collect unpaid invoices.
- Check credit on big commercial jobs. A slow-paying GC can wreck your DSO single-handedly.
Common mistakes
- Mixing cash sales into the denominator. Jobs paid at the door make DSO look better than it is.
- Using one month. One big invoice at month end swings a 30-day DSO wildly. Use a quarter or trailing 12 months.
- Ignoring retainage. Retainage sits in receivables for months by design; track it separately so it doesn't mask ordinary slow payers.
- Watching DSO but not calling. The number only improves when someone follows up.
Frequently asked questions
What does DSO measure?
Days sales outstanding measures the average number of days between invoicing a customer and getting paid. It's a quick read on how well you collect and how much working capital is sitting in unpaid invoices.
How do I calculate DSO in QuickBooks?
Run the A/R Aging Summary for the end of the period to get receivables, and a Sales report filtered to invoices (not sales receipts) for the same period. Divide receivables by invoiced sales and multiply by the days in the period.
Is a high DSO bad?
Usually. A DSO well above your payment terms means cash you've earned is still in customers' bank accounts, and the longer an invoice ages the less likely it is to be paid in full. The exception is work where long terms or retainage are built into the contract.
What's the difference between DSO and accounts receivable turnover?
They're two views of the same thing. A/R turnover is invoiced sales divided by average receivables (times per year). DSO is 365 divided by turnover, expressed in days. Most owners find days easier to act on.
Should DSO include retainage?
Include it in the overall number, but track it on its own too. Retainage is held by contract, often until project completion, so it lengthens DSO without saying anything about your collections effort.
How often should I check DSO?
Monthly, using a trailing quarter or 12 months so one big invoice doesn't distort it. A rising trend over two or three months is the signal to tighten follow-up.
Related
- What Is Days Sales Outstanding (DSO)?What days sales outstanding means for contractors, the DSO formula with worked examples, how retainage skews it, by-trade patterns and how to lower it.
- What Is Accounts Receivable?Accounts receivable explained for contractors: how A/R works, the aging report, turnover formula, worked examples by trade, and how to collect faster.
- How to Get Paid Faster as a Contractor12 ways contractors get paid faster: deposits, same-day invoicing, card and ACH on site, progress billing, reminder schedules, and what each is worth.
- How to Collect Unpaid Invoices (A Contractor's Escalation Plan)A day-by-day plan for collecting unpaid invoices: reminder scripts, the 30/60/90-day escalation, late fees, lien rights, small claims and write-offs.
- Cash Flow for Contractors: Why Profitable Shops Run Out of MoneyWhy profitable contractors run out of cash, how to forecast 13 weeks ahead, runway math with worked examples, seasonal patterns by trade, and fixes.
- Cash Flow Runway Calculator for Trades BusinessesFree cash runway calculator: see how many months your business can cover payroll and bills at the current burn rate, and what it takes to break even.
- What Is Progress Billing?Progress billing explained: milestone, percent-complete and schedule-of-values methods, worked examples, QuickBooks progress invoicing steps and pitfalls.
- Contractor invoicing software that sends the invoice and chases the moneyTurn finished jobs into invoices the same day, send polite automatic reminders on unpaid ones, and sync invoices and payments to QuickBooks.
- Bookkeeping for contractors that keeps your books tax-ready all yearContractor bookkeeping that stays current: categorized expenses, 1099 subcontractor tracking, sales tax and quarterly tax reminders, synced to QuickBooks.
- QuickBooks for contractors: the right version, real job costing and a sync that keeps the books matched to the jobsQuickBooks for contractors: Online vs Desktop, job costing with projects and classes, sync pitfalls, and how BRIX keeps QuickBooks matched to your jobs.
Sources
- U.S. Small Business Administration, Manage your finances (checked October 12, 2026)