You're staring at your accounts receivable aging report. Because of that, again. Now, three customers haven't paid in 90+ days. One ghosted you entirely. Another promised a check "next week" — that was six weeks ago. Your gut says this money isn't coming. Your books still say it's revenue It's one of those things that adds up..
Here's the uncomfortable truth: if you're not recording bad debt expense properly, your financial statements are lying to you. And they're lying to anyone else reading them — banks, investors, potential buyers Turns out it matters..
Let's fix that That's the part that actually makes a difference..
What Is Bad Debt Expense
Bad debt expense is the accounting recognition that some of your accounts receivable will never turn into cash. It's not a maybe. It's not a "we'll see." It's the formal admission that specific invoices — or a percentage of your overall receivables — are uncollectible Worth keeping that in mind..
Under accrual accounting, you record revenue when you earn it, not when you collect it. Bad debt expense closes that gap. You've booked the sale. Still in your customer's pocket. You've recognized the revenue. But the cash? In practice, that creates a timing problem. It matches the cost of uncollectible accounts to the same period as the revenue they generated.
That matching principle isn't optional. It's GAAP.
The Two Methods You'll Actually Use
There are only two GAAP-approved ways to handle this. Pick one and stay consistent It's one of those things that adds up..
Direct write-off method — you wait until a specific account is proven uncollectible, then you write it off. Simple. Clean. Also not GAAP-compliant for financial reporting if your bad debts are material. The IRS likes it for tax returns. Your auditors won't.
Allowance method — you estimate uncollectible amounts before you know exactly which customers won't pay. You create a contra-asset account called Allowance for Doubtful Accounts. It sits right under Accounts Receivable on the balance sheet. Net realizable value = AR minus Allowance. That's the number people actually care about That alone is useful..
If you're issuing financial statements that anyone outside your company will read, you're using the allowance method. Period.
Why It Matters / Why People Care
Overstated receivables make your company look healthier than it is. That's not just an accounting technicality — it has real consequences Worth keeping that in mind. But it adds up..
Your bank looks at your AR turnover and days sales outstanding when deciding whether to renew your line of credit. If your receivables are inflated by 15% in dead weight, your ratios look better than reality. Here's the thing — the bank eventually figures it out. Usually when they're auditing your collateral.
Investors and buyers run quality-of-earnings analyses. They'll adjust your EBITDA down for inadequate bad debt reserves. So seen it happen. A $2M adjustment on a $10M EBITDA company changes the valuation by millions Turns out it matters..
Tax authorities care too. That means book-tax differences. Schedule M-1 adjustments. Deferred tax assets. Here's the thing — the IRS requires the direct write-off method for tax purposes — you can only deduct specific debts that become worthless during the year. But your book records should follow GAAP. Fun stuff.
And internally? Your sales team needs to know which customers are credit risks. That said, your collection team needs prioritization. In practice, your CFO needs accurate cash flow forecasts. Bad debt expense isn't just a journal entry — it's operational intelligence.
How It Works (or How to Do It)
The allowance method has two main estimation approaches. Both are acceptable. Neither is perfect.
Percentage of Sales Method (Income Statement Approach)
You apply a historical percentage to current period credit sales. That percentage becomes your bad debt expense for the period. The allowance account balance is whatever it ends up being — you don't target a specific ending balance Not complicated — just consistent. No workaround needed..
Say your history shows 1.In real terms, 2% of credit sales go bad. This quarter you had $4.Which means 3M in credit sales. Bad debt expense = $51,600. Debit Bad Debt Expense, credit Allowance for Doubtful Accounts. Done.
Advantage: Perfect matching. Expense ties directly to the revenue that created it.
Disadvantage: The allowance account balance can drift. If you've been too aggressive or too conservative historically, the balance sheet number becomes meaningless. You'll need to true it up eventually.
Percentage of Receivables Method (Balance Sheet Approach)
You analyze your aging schedule and apply different percentages to each bucket. Current: 0.Think about it: 5%. 1-30 days: 2%. 31-60: 8%. Now, 61-90: 25%. Over 90: 50%. Here's the thing — multiply each bucket's balance by its rate. So sum them up. That's your target ending allowance balance Simple, but easy to overlook..
Then you adjust the allowance account to hit that target. The difference between the current allowance balance and your target becomes bad debt expense (or recovery, if you over-reserved previously).
Advantage: Your balance sheet shows a defensible net realizable value. Auditors love this.
Disadvantage: The expense amount is whatever it needs to be to hit the target. Matching gets messy. A big write-off in January might create a negative expense (recovery) in February if the allowance was overfunded Took long enough..
The Aging Schedule — Your Best Friend
If you're using the receivables method (and most companies should), your aging schedule is the workhorse. Run it monthly. Minimum.
| Age Bucket | Balance | Estimated % Uncollectible | Estimated Uncollectible |
|---|---|---|---|
| Current | $1,200,000 | 0.5% | $6,000 |
| 1-30 days | $340,000 | 2% | $6,800 |
| 31-60 days | $180,000 | 8% | $14,400 |
| 61-90 days | $95,000 | 25% | $23,750 |
| Over 90 days | $62,000 | 50% | $31,000 |
| Total | $1,877,000 | $82,000 |
Your target allowance: $82,000. Day to day, if the allowance account currently sits at $58,000, you record $24,000 in bad debt expense. If it's at $95,000, you record a $13,000 recovery (negative expense) Easy to understand, harder to ignore..
Update your percentages annually. Or when something material changes — new customer mix, economic downturn, major customer bankruptcy.
Writing Off Specific Accounts
Estimation is step one. That said, writing off actual dead accounts is step two. They're separate events That alone is useful..
The moment you finally admit Customer X isn't paying their $14,500 invoice:
- Debit Allowance for Doubtful Accounts $14,500
- Credit Accounts Receivable $14,500
Notice what's missing: Bad Debt Expense. The expense was already recorded when you built the allowance. The write-off just removes the dead receivable and reduces the allowance. Net realizable value doesn't change.
If the customer miraculously pays after write-off:
- Reverse the write-off: Debit AR, Credit Allowance
- Record the cash: Debit Cash, Credit AR
Don't skip step one. If
you debit Cash and Credit Allowance directly, you've overstated revenue (or understated expense) and inflated the allowance balance. The two-step reversal keeps the audit trail clean and the allowance mechanics intact.
Recoveries: The Rare Bright Spot
When a written-off account pays up, the accounting is straightforward but the implication is often misunderstood.
The Entry:
- Reverse Write-off: Debit Accounts Receivable / Credit Allowance for Doubtful Accounts
- Collect Cash: Debit Cash / Credit Accounts Receivable
The Result: The Allowance balance increases. Net Accounts Receivable increases. Bad Debt Expense on the income statement is untouched—that ship sailed in a prior period Small thing, real impact..
This creates a timing quirk. Your current period’s bad debt expense reflects current estimates. The recovery inflates the allowance, which lowers next period’s required expense provision (since the target allowance is already partially funded). It’s a self-correcting mechanism, provided you don’t let the allowance balance drift too high. In practice, if recoveries pile up, you’ll eventually book a negative bad debt expense (a recovery gain) to draw the allowance back down to its calculated target. Don’t panic; it’s just the matching principle catching up.
Management Estimates vs. Auditor Reality
The percentages in your aging schedule are estimates. Think about it: estimates imply judgment. Judgment implies bias Not complicated — just consistent..
Optimism Bias: Sales wants lower percentages to keep expense down and commissions up. Collections wants higher percentages to justify headcount. The CFO wants stability It's one of those things that adds up..
The Fix: Document your basis. "We used 50% for Over 90 because our historical recovery rate on that bucket over the last 36 months is 48%, adjusted for the current recessionary indicator." That sentence defends the number. "Industry standard" does not Turns out it matters..
Back-testing: Once a year, compare last year’s estimated uncollectible per bucket against actual write-offs that originated in those buckets.
- Estimated: $82,000.
- Actual write-offs from that population: $76,000.
- Variance: $6,000 (Over-reserved).
If you’re consistently over-reserving by 20%, your percentages are stale. Even so, auditors will test this. Day to day, if you’re under-reserving, your financial statements are aggressive. You should test it first.
The Direct Write-Off Method: Just Say No
For completeness: Some tiny, non-GAAP entities wait until an invoice is proven dead, then debit Bad Debt Expense and credit AR directly. Think about it: no allowance account. No estimation.
Why it fails: It violates the matching principle violently. You recognize revenue in Year 1 and the related expense in Year 3. Your Year 1 profit is overstated; Year 3 takes a hit for a sale that happened eons ago. It also leaves gross AR on the balance sheet at inflated, uncollectible values until the bitter end.
If you’re reading this, you’re past the size where this is acceptable. Use the allowance method Worth keeping that in mind..
Technology: Stop Doing This in Spreadsheets
If your aging schedule lives in Excel, you have a control weakness Worth knowing..
- Version control issues (which
Aging_Final_v3_REAL.On top of that, xlsxis real? ). Now, - Manual percentage updates that don't flow to the GL. - No audit trail on who changed the "Over 90" rate from 50% to 10% the day before close.
Your ERP (NetSuite, Sage Intacct, Dynamics, SAP, Oracle) has a native aging engine and allowance calculation module. Define aging buckets. Worth adding: 3. 1. Configure it. 4. Practically speaking, assign reserve percentages by bucket (or by customer risk class). Schedule the calculation to run on the last day of the month. 2. Auto-generate the adjusting journal entry (JE) for review/approval.
The spreadsheet becomes the backup for the auditor, not the source of truth.
Disclosure Requirements (ASC 310 / IFRS 9)
You can’t just bury the allowance in a contra-asset line. But the notes require:
- Plus, Rollforward: Beginning Allowance + Provision (Expense) - Write-offs + Recoveries = Ending Allowance. In practice, 2. Policy: How you determine the percentages (historical loss rates, current conditions, reasonable & supportable forecasts).
- Still, Credit Quality: Often broken down by risk class (e. Which means g. , Investment Grade vs. Practically speaking, subprime) or geography, not just age. Day to day, 4. Consider this: Significant Changes: Did you change the methodology? Did a major customer file Chapter 11? Disclose the impact.
Under IFRS 9 (CECL in US GAAP), the "incurred loss" model is dead. That said, you book expected lifetime losses on Day 1. The aging schedule percentages must now incorporate forward-looking macroeconomic data (GDP forecasts, unemployment rates), not just trailing history. The mechanics of the aging table stay the same; the inputs got harder That's the whole idea..
People argue about this. Here's where I land on it.
The Controller’s Checklist (Monthly Close)
-
[ ] Run aging report as of period end (cutoff verified).
-
[ ] Review top 10 past-due balances individually. Are specific reserves needed on top of the formulaic bucket rates?
-
[ ] Update reserve percentages if macro triggers
-
[ ] Review top 10 past-due balances individually. Are specific reserves needed on top of the formulaic bucket rates?
-
[ ] Update reserve percentages if macro triggers change (e.g., recession indicators, industry downturn).
-
[ ] Generate and review auto-calculated allowance JE; validate reasonableness against prior periods and known defaults Small thing, real impact..
-
[ ] Approve and post allowance journal entry before financial statement close.
-
[ ] Reconcile allowance account to rollforward schedule; ensure beginning balance matches prior period ending balance.
-
[ ] Update disclosure schedules with rollforward, policy changes, credit quality metrics, and material events Still holds up..
-
[ ] Archive aging schedule and supporting analysis in the ERP or document management system for audit trail The details matter here..
Conclusion
The old ways—writing off bad debt when cash goes missing, tracking receivables in spreadsheets, or skipping allowances altogether—are financial time bombs. They distort earnings, obscure credit risk, and invite audit scrutiny. Modern accounting isn’t just about compliance; it’s about clarity, control, and decision-grade data.
The allowance method, powered by your ERP and grounded in ASC 310 or IFRS 9, isn’t just best practice—it’s table stakes for any company serious about accurate financial reporting and sustainable growth. If you’re still doing otherwise, you’re not just behind. You’re exposing your organization to avoidable risk.
It’s time to upgrade. Configure your system. And calculate your allowance. Close with confidence.