Bad debt write‑offs in QuickBooks: stop hiding them in sales
When "writing off" a customer quietly nukes your revenue
You open a new QBO file and run a year-to-date P&L. Revenue looks oddly low for a growing business. The owner says, "That can't be right, we had our best year ever."
You dig into Sales by Product/Service and see a handful of negative invoices and credit memos sitting in the main revenue items. Memo fields say things like "write off bad debt" or "uncollectible". Instead of flowing through Bad Debt expense, the write-offs are buried as negative sales.
On the surface, A/R looks fine because the invoices are cleared. But the story the financials are telling is wrong: revenue is understated, bad debt expense is missing or tiny, and sales tax exposure might be off.
This is one of those cleanup issues that doesn't scream at you like unreconciled banks, but it quietly distorts performance metrics, lender conversations, and tax planning.
Where this problem hides inside QuickBooks Online
Most of the time, this shows up in how credit memos/credit notes are coded.
The pattern:
- An invoice sits unpaid for 8–12 months.
- Someone finally gives up and creates a credit memo.
- Instead of using a dedicated Bad Debt item mapped to a Bad Debt expense account, they use the same "Services" or "Product" item mapped to Sales.
- The credit memo is applied to the old invoice, clearing A/R but also reversing revenue.
Example:
- Invoice #1001 dated 02/01/2024 for $4,000 using item "Consulting Services" (mapped to Sales).
- By December, it's still unpaid.
- Bookkeeper creates Credit Memo #CN-15 on 12/15/2024, memo: "write off bad debt".
- Line item: "Consulting Services" for -$4,000, posting to Sales.
- CN-15 is applied to Invoice #1001.
Result: A/R is $0 for that customer, but you've reduced current-year Sales by $4,000 instead of recording $4,000 of Bad Debt expense.
Reports and filters that surface it
Places to look:
- Customer Balance Detail filtered for the year, then drill into old invoices that were cleared by credit memos.
- Transaction Detail by Account filtered to:
- Transaction Type = Credit Memo / Credit Note
- Date range = cleanup period
- Sales by Product/Service Detail, filtered for negative amounts and scanned for memos like "bad debt", "write off", "uncollectible".
- A/R Aging Detail for very old invoices that suddenly disappeared via credits.
Key red flags:
- Credit memos with memos/descriptions containing "bad debt", "write off", "uncollectible".
- Credits applied to invoices older than ~180 days.
- Credit memos using normal revenue items instead of a Bad Debt item.
- Credit memos posting to Sales/Revenue instead of a Bad Debt expense account.
- Large negative lines in revenue items with no corresponding Bad Debt expense in the P&L.
Run a Transaction Detail by Account report on your main Sales accounts, filter for Transaction Type = Credit Memo and Amount < 0, then scan the Memo column for "bad" or "write" to quickly spot likely bad-debt write-offs.
What happens if you just live with it
The damage inside your numbers
Mis-coded bad debt write-offs hit three areas at once:
-
Revenue is understated.
- You're effectively reversing sales instead of recording an expense.
- KPIs like gross margin %, revenue growth, and sales per employee are all off.
-
Bad debt expense is understated or missing.
- Management can't see how much of sales is actually uncollectible.
- It hides credit risk and weak collections processes.
-
A/R aging looks clean, but the story is wrong.
- Old invoices vanish via credits, but you can't distinguish legitimate bad debt from discounts, disputes, or pricing errors.
For tax and compliance:
- In some jurisdictions, bad debt has specific tax treatment or documentation requirements.
- If write-offs are buried in sales, you may not have a clean audit trail to support bad debt deductions or sales tax adjustments.
The damage in client conversations
This is where it gets awkward.
You sit down with the owner and say, "Your revenue is $900k and bad debt is only $2k." They respond, "No way. We wrote off at least $40k this year."
You then have to explain that prior bookkeeping reversed revenue instead of recording bad debt, and now you need to reclassify credit memos. It undermines trust in the numbers and in whoever touched the file before you.
If you miss it and present the numbers as-is, lenders, investors, or buyers may make decisions based on artificially low revenue and artificially clean A/R.
Getting bad debt write-offs into the right place
The fix is straightforward once you know where to look. The real work is being systematic.
Here’s a practical cleanup flow:
-
Confirm the client’s bad debt policy.
- When do they consider something uncollectible? 90 days? 180? 365?
- Are there approval thresholds (e.g., owner must approve write-offs over $5k)?
-
Set up (or confirm) a proper Bad Debt item and account.
- Create a service item "Bad Debt" mapped to a "Bad Debt Expense" account.
- For multi-entity clients, confirm if they want separate bad debt accounts by division/location.
-
Identify likely bad-debt credit memos.
- Pull all Credit Memos/Credit Notes in the cleanup period.
- Flag:
- Memos/descriptions containing "bad debt", "write off", "uncollectible".
- Credits applied to invoices older than your chosen threshold (e.g., 180 days).
-
Check how each flagged credit is coded.
- Are the lines using the Bad Debt item?
- If not, what account are they posting to? Sales? Generic expense?
-
Reclassify mis-coded write-offs.
- Option A: Edit the existing credit memo lines to use the Bad Debt item (keeping amounts and tax codes consistent with policy).
- Option B: Void the bad credit memo and reissue a new one using the Bad Debt item, then reapply it to the invoice.
-
Document what you changed.
- Keep a short workpaper listing: credit memo number, date, customer, original account, corrected account, and reason.
-
Spot-check the P&L and A/R after changes.
- P&L: Bad Debt expense should now show a realistic number.
- Revenue: Large negative write-offs should disappear from Sales.
- A/R: Old invoices should still be cleared, but now with a clear bad-debt trail.
For closed tax years or periods already reported to lenders, be cautious. You may decide to leave historical misclassifications as-is and start clean from a specific date, documenting the known limitation in your workpapers and any management letter.
Building this into your standard workflow
This shouldn’t be a one-time hero move; it should be a checklist item in every diagnostic review.
How firms typically standardize it:
- Add a line to your cleanup checklist: "Review bad debt write-offs (credit memos) for proper Bad Debt item/account coding."
- Define a default age threshold (e.g., 180 days) and memo keywords your team uses to flag likely bad debt.
- Create a simple template note in your workpapers explaining your policy and how you handled exceptions.
Tools like CleanupOwl can help by automatically scanning credit memos in the cleanup period, flagging the ones that look like bad debt but are coded to sales or generic items. Instead of spending 45 minutes building a report and filtering by hand, you start with a curated list and focus on judgment calls and reclass entries.
If you’re a business owner reading this, this is exactly the kind of question to ask your accountant: "When you write off bad debts in QuickBooks, are they going through a Bad Debt expense account, or are they reducing my sales?" A diagnostic tool like CleanupOwl just makes that answer easier to prove.
The patterns you'll keep seeing in client files
Here are the recurring situations you’ll run into once you start looking:
| Situation | What you see in QBO | Risk if you shrug it off |
|---|---|---|
| Old invoice fully written off using revenue item | Credit memo applied to a 10-month-old invoice, using normal "Services" item mapped to Sales | Revenue understated, bad debt expense understated, misleading margins |
| Proper bad debt write-off | Credit memo on a 9-month-old invoice using "Bad Debt" item mapped to Bad Debt Expense | Clean A/R and P&L; no real risk, just confirm policy and documentation |
| Mixed-purpose credit memo | Single credit memo used for both a pricing adjustment and a true bad debt, all coded to Sales | Hard to separate discounts vs. bad debt; messy analytics and potential tax confusion |
| Generic "Adjustment" credits | Credit memos with memo "adjustment" or "discount" applied to recent invoices | Risk of misclassifying discounts as bad debt or vice versa; may affect revenue quality analysis |
| Bulk write-off at year-end | Large year-end credit memo wiping out many old invoices using standard revenue items | Major distortion of annual sales and bad debt; lenders and buyers may misread performance |
For smaller, infrequent misclassifications, you may decide it’s not worth reopening prior periods; note it and move on. When you see repeated patterns, larger amounts, or year-end bulk write-offs, it’s worth doing a proper reclass and tightening the process going forward.
Before changing historical credit memos, confirm whether those periods tie to filed tax returns, bank covenants, or external financials. If they do, consider adjusting prospectively or via clearly documented journal entries rather than rewriting history.
Making this part of your cleanup playbook
Bad debt write-offs are one of those quiet areas that separate a surface-level cleanup from a file you’d be comfortable handing to a banker or auditor.
When your team consistently:
- Uses a dedicated Bad Debt item and expense account,
- Reviews old credit memos for misclassifications, and
- Documents the policy and exceptions,
you get cleaner revenue trends, realistic bad debt expense, and a defensible A/R story.
This is also an easy win to standardize. Add it to your diagnostic SOP, build a saved QBO report or two, and let something like CleanupOwl hand you the list of suspect credit memos instead of hunting for them from scratch every time.
If you’re a business owner, ask your accountant how they handle bad debt in QuickBooks and whether they’re checking that write-offs aren’t just buried as negative sales. The answer tells you a lot about how seriously they take your numbers.
Ready to run deeper QuickBooks diagnostics?
Use CleanupOwl to automatically flag issues like this before you quote or start your next cleanup project.
Start Free Trial