Revenue recognized but not collected does not pay salaries. For SaaS companies with annual invoices and enterprise customers, accounts receivable can hold months of cash. A clear process from invoice to collection is one of the fastest ways to extend runway without changing the business.
Invoice on time, correctly
Most collection problems start before the invoice is late:
- Invoices go out on the contract's billing date, not when someone remembers.
- The invoice carries the purchase order number, the right billing contact and the remit-to details the customer's accounts payable team needs.
- New customers are set up in their vendor portal (Coupa, Ariba and similar) before the first invoice.
- Card and ACH customers are on automatic payment where the contract allows.
A collections cadence
| Day relative to due date | Action |
|---|---|
| −7 | Courtesy reminder with the invoice attached |
| 0 | Due-date notice |
| +7 | Follow-up to billing contact, copy the account owner |
| +21 | Call or message from the account owner to their champion |
| +45 | Escalation from finance leadership; service terms reviewed |
| +60 or later | Decision on suspension, payment plan or write-off |
Dunning tools in Stripe, Chargebee and similar platforms handle the card retries; enterprise invoices need a person.
Days sales outstanding
DSO = accounts receivable ÷ revenue for the period × days in the period
Example for a quarter: AR of $1,800,000, quarterly revenue of $3,000,000, 91 days.
$1,800,000 ÷ $3,000,000 × 91 = about 55 days.
Two adjustments keep DSO honest for SaaS:
- Annual invoices issued just before quarter end inflate AR and DSO without anything being wrong. Look at the aging, not only the ratio.
- Use billings rather than revenue in the denominator if most invoices are annual in advance; it reflects what was actually invoiced.
The aging report
Review AR by bucket each month: current, 1–30, 31–60, 61–90, over 90 days. Every balance over 60 days gets a named owner and a next step. Credits and unapplied cash get cleaned up so the aging reflects what is truly owed.
Allowance for credit losses
Under ASC 326, companies record an allowance for expected credit losses on receivables rather than waiting for a loss to occur. A practical approach for a SaaS company:
| Aging bucket | Balance | Loss rate | Allowance |
|---|---|---|---|
| Current | $1,200,000 | 0.5% | $6,000 |
| 1–60 days | $450,000 | 3% | $13,500 |
| 61–90 days | $100,000 | 15% | $15,000 |
| Over 90 days | $50,000 | 50% | $25,000 |
| Total | $1,800,000 | $59,500 |
Loss rates come from your own history, adjusted for current conditions. For tax purposes, business bad debts are generally deducted when they become worthless, not when the allowance is booked, so the allowance creates a book-tax difference.
We run invoicing and the collections cadence with your team, report DSO and aging monthly, and set the allowance at each close.
Sources
- FASB Accounting Standards Codification, Topic 326, Financial Instruments: Credit Losses
- IRS, Topic no. 453, Bad debt deduction
Questions founders ask
What is a normal DSO for a SaaS company?
It depends on billing terms and customer mix. Companies selling to enterprises on net 30 to net 60 terms run higher than self-serve companies charging cards. Track the trend and compare to your own terms.
When should an invoice be written off?
When collection is no longer expected after the collections process has run its course. The allowance for credit losses should already reflect expected losses before the write-off happens.



