# Days Sales Outstanding (DSO) Calculator for Contractors

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.

## 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.

> **Estimate, not financial advice**
>
> DSO is a snapshot that moves with seasonality and billing timing. Use the same period each month so the trend is comparable, and talk to your bookkeeper or CPA before changing credit terms or borrowing against receivables.

## 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.

**Formula**

```
DSO = (Accounts receivable ÷ Invoiced sales) × Days in period
```

Where:
- 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.

> **Worked example**
>
> A commercial HVAC contractor has $92,000 in open invoices at the end of a quarter in which it billed $180,000 on terms. DSO = ($92,000 ÷ $180,000) × 90 = **46 days**.
>
> The company bills about $2,000 a day. At its 30-day terms it would carry $60,000 of receivables, so the extra 16 days tie up **$32,000**.
>
> If that cash sits on a 10% line of credit, slow payers cost about $3,200 a year in interest alone.

## 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.

**Cash tied up at different targets ($92,000 A/R, $180,000 billed per quarter)**

| 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 |

_Computed with the calculator above. The interest rate is your own cost of money, not a benchmark._

## DSO vs. accounts receivable aging

DSO is one number for the whole book; an [accounts receivable](https://www.brix.so/learn/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

1. **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.
2. **Take deposits and progress payments.** Money collected up front never becomes a receivable. See [progress billing](https://www.brix.so/learn/progress-billing).
3. **Make paying easy.** Card and ACH links on the invoice get paid faster than mailed checks.
4. **Send reminders automatically.** A reminder before the due date, on it, and a week after keeps most invoices from aging.
5. **Charge late fees and enforce terms.** See [how to collect unpaid invoices](https://www.brix.so/learn/how-to-collect-unpaid-invoices).
6. **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.

BRIX sends invoices when the job closes, follows up on unpaid ones automatically, and syncs payments to QuickBooks so your receivables aging is always current.

- [Invoicing and payments](https://www.brix.so/features/invoicing-payments): Turns finished jobs into invoices and politely chases unpaid ones until the money is in your account.
- [QuickBooks sync](https://www.brix.so/integrations/quickbooks): Syncs customers, invoices and payments with QuickBooks so the books match the jobs.

## 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)?](https://www.brix.so/learn/days-sales-outstanding)
- [What Is Accounts Receivable?](https://www.brix.so/learn/accounts-receivable)
- [How to Get Paid Faster as a Contractor](https://www.brix.so/learn/how-to-get-paid-faster-as-a-contractor)
- [How to Collect Unpaid Invoices (A Contractor's Escalation Plan)](https://www.brix.so/learn/how-to-collect-unpaid-invoices)
- [Cash Flow for Contractors: Why Profitable Shops Run Out of Money](https://www.brix.so/learn/cash-flow-for-contractors)
- [Cash Flow Runway Calculator for Trades Businesses](https://www.brix.so/tools/cash-flow-runway-calculator)
- [What Is Progress Billing?](https://www.brix.so/learn/progress-billing)
- [Contractor invoicing software that sends the invoice and chases the money](https://www.brix.so/features/invoicing-payments)
- [Bookkeeping for contractors that keeps your books tax-ready all year](https://www.brix.so/features/bookkeeping-taxes)
- [QuickBooks for contractors: the right version, real job costing and a sync that keeps the books matched to the jobs](https://www.brix.so/integrations/quickbooks)

## Sources

- [U.S. Small Business Administration, Manage your finances](https://www.sba.gov/business-guide/manage-your-business/manage-your-finances) (checked 2026-10-12)

---
Written by BRIX Editorial Team. Last updated 2026-10-12. General information, not tax, legal or financial advice.
Canonical: https://www.brix.so/tools/dso-calculator
