Why Your DSO Is Too High (And the Automation Fix That Changes It)
If your Days Sales Outstanding is creeping up, it's almost never a customer problem. It's a process problem. Here's what's causing it and how to fix it systematically.
RevExOS Team
RevExOS Team
Your customers aren't slow payers. Your process is slow.
That's the uncomfortable truth behind most high DSO numbers. The business blames customers. Finance blames sales for giving loose payment terms. Sales blames finance for sending confusing invoices.
Meanwhile, the real problem - a broken, largely manual AR process - never gets fixed.
What DSO Actually Measures
Days Sales Outstanding (DSO) tells you the average number of days between issuing an invoice and receiving payment.
The formula:
DSO = (Accounts Receivable / Total Credit Sales) x Number of Days
A DSO of 30 means you collect within your terms. A DSO of 60 means customers are carrying your money for twice as long as they should.
For most B2B businesses, the benchmark is 30–45 days. If yours is higher, you're funding your customers' operations with your own cash.
The Real Cost of High DSO
This is where the math gets uncomfortable.
If your business generates $2M in monthly revenue and your DSO is 60 days, that means at any given moment, $4M of your earned revenue is sitting uncollected.
Push DSO to 30 days? You've freed up $2 million in working capital - without winning a single new customer.
That's capital you're currently replacing with credit lines (at interest), investor cash, or by simply not investing in growth. Every DSO day is a cost you're paying silently.
The Five Reasons DSO Creeps Up
1. Invoices Go Out Late
This one is embarrassing because it's so fixable - and so common.
In many professional services and B2B businesses, invoices are still batched at the end of the month. A job completed on the 3rd gets invoiced on the 31st. You've just given the customer a 28-day head start before your payment clock even starts.
Impact: Every day of delay in sending the invoice is a day added to your DSO, guaranteed.
2. No Systematic Dunning
One invoice goes out. If it doesn't get paid, maybe someone sends a follow-up email when they notice it in the AR aging report - usually 2–3 weeks later.
There's no system. No sequenced follow-up. No escalation path. Just reactive emails from whoever notices the problem first.
Impact: Payment timing becomes entirely customer-driven. Customers who would pay faster with a nudge don't get one. Overdue invoices quietly age.
3. Cash Application Takes Days
When payments arrive - especially via bank transfer - they sit unmatched. Your AR team has to manually identify which invoice the payment belongs to, reconcile it, and close it out.
During that time, the invoice still shows as open. Your AR aging report is wrong. Your cash flow picture is wrong. Decisions get made on bad data.
Impact: Apparent DSO looks higher than actual payment behaviour. But more importantly - your team is spending hours each week doing work that should be automated.
4. Disputes Pause Collections Entirely
A customer disputes an invoice. While the dispute is open, the entire balance - including the undisputed portion - is typically withheld.
Resolving the dispute requires someone to pull the original contract, the delivery confirmation, the email thread, and the PO - often from four different systems. Average resolution time: 2–3 weeks.
Impact: Disputed invoices artificially inflate DSO and tie up finance team bandwidth.
5. One-Size-Fits-All Collections Process
Your $15,000 overdue invoice is getting the same attention as your $150 overdue invoice. Or worse - your highest-value accounts are being chased with the same generic reminder email as everyone else.
A poor collections experience at the top end of your customer base damages relationships. And under-prioritisation at the bottom end means small amounts never get collected.
Impact: DSO stays high across all customer segments because there's no intelligent prioritisation.
What Fixes DSO (Systematically)
The answer isn't working harder. It's building the right systems.
Fix 1: Automate Invoice Triggers
Invoices should fire the moment a delivery event occurs - service completed, contract milestone reached, product shipped. Not at month-end. Not when someone remembers.
Connect your CRM or project management tool to your invoicing system. When the deal closes or the milestone updates, the invoice generates and sends automatically.
Expected impact on DSO: 3–7 days reduction from invoice timing alone.
Fix 2: Run a Structured Dunning Sequence
A dunning sequence is a scheduled series of follow-ups that runs automatically based on invoice status. Not reactive. Not manual. It runs whether or not anyone at your company is thinking about it.
A good sequence:
- Reminder 3 days before due date
- Due date notification
- First overdue notice at day +7
- Firm notice at day +14
- Escalation to human at day +30
Layer in segmentation: high-value accounts get a personal call trigger at day +7 instead of an automated email. Long-term customers get softer language. New customers get firmer terms explained clearly.
Expected impact on DSO: 10–20 day reduction for businesses with no current dunning process.
Fix 3: Automate Cash Application
Incoming payments should be matched to open invoices automatically - by amount, customer, date, and reference number. Exceptions surface for human review. Everything clean closes itself.
This requires code-level access to your bank transaction feed and accounting system. It's not a Zapier workflow. But it eliminates the matching backlog entirely and keeps your AR aging data accurate in real time.
Expected impact on DSO: 2–5 days, plus dramatically improved data quality for cash flow forecasting.
Fix 4: Build a Live AR Dashboard
When your CFO can see, in real time, every open invoice - segmented by age, customer risk tier, and amount - the right decisions get made faster.
Which accounts need a call today? Which are at risk of becoming bad debt? Where is the cash actually coming from this week?
This visibility eliminates the slow decision loop where problems are identified in the weekly AR meeting instead of the moment they appear.
Fix 5: Score Customer Credit Risk Continuously
Not all late payers are the same. Some are slow but reliable. Some are approaching financial difficulty. Some are disputing silently.
A customer risk score - built on payment history, invoice aging patterns, and communication behaviour - lets you act before a problem becomes a write-off.
What This Looks Like in Practice
Here's a real example of the DSO impact when these five fixes are deployed:
Before:
- Invoices sent at month-end (avg 15-day delay)
- No dunning sequence - reactive follow-up only
- Cash application done manually (2–3 day lag)
- DSO: 58 days
After:
- Invoices triggered immediately on delivery
- Automated dunning with 5-step sequence
- Cash application matched in under 4 hours
- DSO: 31 days
That's 27 days of DSO recovered. On $1M monthly revenue, that's $900,000 unlocked from AR - with zero new revenue.
The Mistake to Avoid
Adding a point solution - a dunning tool, an AR portal, a payment reminder app - without connecting it to your actual system of record.
When the tool and the accounting system aren't in sync, your team ends up managing both. DSO might improve on paper (the tool thinks invoices are closing) while the underlying AR ledger remains a mess.
Real DSO reduction requires end-to-end integration: your billing logic, your CRM, your accounting system, your bank, and your communication workflows - all talking to each other.
The businesses that win on cash flow aren't the ones with the best customers. They're the ones with the most systematic AR processes.
If your DSO is higher than it should be and you want to understand exactly why, book a call. We'll trace your current AR flow, identify where days are being lost, and define what to automate first.