Accounts Receivable Schedule: Aging, DSO, and Allowance

An accounts receivable schedule is a dated list of every unpaid customer invoice, grouped by how long each balance has been outstanding, that you use to estimate collectibility, forecast cash, and tie your subledger to the general ledger. Build it well and your balance sheet reflects what you’ll actually collect. Build it carelessly and cash flow problems hide inside a single AR total until they surface as a shortfall.

What Belongs on Each Line

Every row represents one open invoice. The fields you capture do double duty: they feed the aging math and give collectors the context to follow up intelligently.

  • Customer name and account number, so the schedule ties back to your accounting system and CRM when a single customer has dozens of open invoices.
  • Invoice number, so a disputed or misapplied balance can be traced to the original transaction.
  • Invoice date. Every aging bucket assignment flows from this date.
  • Original invoice amount and current balance. These differ once a customer makes partial payments, and recording both shows payment history at a glance.
  • Payment terms. A 45-day-old invoice on Net 60 terms is still current, and without the terms you can’t tell what’s genuinely overdue.
  • A dispute or status flag. Invoices in active dispute, in collections, or escalated to a manager should be visible but marked so they don’t distort the aging.

Skip any of these and problems appear downstream. Without the invoice date you can’t age the balance. Without terms you can’t separate overdue from current. Without a dispute flag your oldest bucket looks worse than it is, and your allowance estimate inflates.

Pulling the Data as of a Cut-Off

Start by exporting all open invoices from your accounting system or ERP as of a specific reporting date. That date is your cut-off, and enforcing it cleanly is the single most important step. Any invoice posted after the cut-off, or any payment received after it, stays out of this run. Let late transactions bleed in and the schedule won’t reconcile to the general ledger, and you’ll spend hours hunting for the discrepancy.

Before aging anything, verify that cash receipts through the cut-off have been properly applied. An unapplied payment sitting in the system makes it look like a customer still owes money they’ve already paid. Check for unapplied credit memos too. Most systems let you either age credits alongside the invoices they offset or summarize them separately; the better practice is to apply credits against the customer’s oldest outstanding invoices first, since leaving them unapplied inflates both the total receivable and the balances in your oldest buckets.

Once payments and credits are applied, export the data into a working format. A spreadsheet works for smaller operations; larger ones generate the schedule directly from the ERP. Either way, the output should be one row per invoice, sorted by customer, with every field above populated.

Aging the Balances

Aging is the core of the schedule. You’re sorting each invoice into time-based buckets that reflect how long the balance has been outstanding past the invoice date. The standard buckets most companies use are:

  • Current: not yet past due based on the stated terms.
  • 1–30 days past due. Recently overdue, usually resolved with a reminder call or automated notice.
  • 31–60 days past due. Starting to require structured follow-up.
  • 61–90 days past due. Elevated risk; the probability of collection drops noticeably here.
  • 91+ days past due. The highest-risk category. Industry data suggests that once an invoice passes 90 days overdue, the chance of collecting drops below 20 percent, and this is where write-offs concentrate.

These ranges aren’t fixed. Some companies split the oldest range into 91–120 and 120-plus buckets, which is common in healthcare and construction where longer payment cycles are normal.

The distribution across buckets tells a story at a glance. If most receivables sit in Current and 1–30, your credit policies and follow-up are working. A heavy concentration past 60 days signals either that you’re extending credit to customers who can’t pay or that your collections process has gaps. That diagnostic value is what makes the aging schedule more useful than a single AR number on the general ledger.

Reading the Schedule

Two metrics turn the schedule into something you can act on: Days Sales Outstanding and the Collection Effectiveness Index.

Days Sales Outstanding

DSO measures the average number of days it takes to collect payment after a sale:

DSO = (Accounts Receivable ÷ Total Credit Sales) × Number of Days in the Period

If your AR balance is $150,000, your credit sales for the quarter were $450,000, and the quarter had 90 days, your DSO is 30. That number is only meaningful in context. A 30-day DSO on Net 30 terms means you’re collecting on schedule. A 45-day DSO on the same terms means the average invoice takes two weeks longer than agreed, which is worth investigating even if nobody is technically in default.

DSO has a blind spot: it doesn’t distinguish current invoices from severely overdue ones. A company with half its receivables current and half at 120 days can post the same DSO as one where everything is moderately late. The aging buckets and the next metric fill in that picture.

Collection Effectiveness Index

CEI measures what percentage of receivables you actually collected during a period, and it accounts for new credit sales generated during the same window:

CEI = (Beginning AR + Credit Sales − Ending Total AR) ÷ (Beginning AR + Credit Sales − Ending Current AR) × 100

A CEI of 100 percent means you collected everything that was collectible. Most well-run companies aim for 80 percent or higher. If your CEI is declining while your DSO stays flat, new sales are usually masking a growing pile of stale receivables that nobody is chasing.

What the Aging Pattern Says About Credit Policy

A steady rise in the share of balances past 60 days over several periods suggests you’re approving customers who shouldn’t qualify, or that your follow-up cadence is too slow. If virtually nothing ages past 30 days, your terms may be too conservative, and selectively loosening them could win business without meaningful risk.

The schedule also drives cash flow forecasting. Balances in Current and 1–30 can reasonably be projected as near-term inflows. Anything past 60 days should be discounted heavily or excluded from short-term projections. Relying on aged receivables to cover upcoming obligations is how companies end up drawing on credit lines they didn’t expect to need.

Setting the Allowance for Doubtful Accounts

The aging schedule is the primary input for the allowance for doubtful accounts, the contra-asset that reduces AR on the balance sheet to what you realistically expect to collect. The method is straightforward: assign an estimated loss percentage to each bucket, multiply, and sum.

A typical set of loss rates:

  • Current: 1 percent
  • 1–30 days past due: 3 percent
  • 31–60 days past due: 5 percent
  • 61+ days past due: 20 percent

If your schedule shows $45,000 current, $25,000 in 1–30, $20,000 in 31–60, and $10,000 past 60, the estimated uncollectible amount is $4,200 ($450 + $750 + $1,000 + $2,000). That $4,200 becomes the target ending balance in the allowance account. If the allowance already sits at $1,000 from the prior period, you record $3,200 in bad debt expense to bring it to the target.

The percentages should reflect your company’s actual write-off history, adjusted for current conditions. If you’ve historically written off 4 percent of 1–30 balances but a major customer in that bucket just filed for bankruptcy, the rate for this period should be higher. Under the current expected credit losses framework (CECL), companies reporting under U.S. GAAP are required to incorporate forward-looking information rather than relying solely on historical loss rates. FASB’s guidance on Topic 326 applies to current accounts receivable and contract assets, and it requires estimating losses over the remaining life of the receivable based on reasonable and supportable forecasts.

The journal entry debits bad debt expense on the income statement and credits the allowance on the balance sheet. When you eventually write off a specific invoice, you debit the allowance and credit accounts receivable; that entry doesn’t hit the income statement, because the expense was recognized when you estimated it. This is where the aging schedule connects day-to-day collections work directly to your financial statements.

Reconciling to the General Ledger

The total of every open invoice on the schedule must match the AR control account in the general ledger. If the two don’t agree, something went wrong between the subledger and the GL, and you need to find it before the financial statements go out.

The usual causes:

  • Manual journal entries posted directly to the AR control account without a corresponding transaction in the subledger. This is the most frequent culprit, because manual entries bypass the normal posting flow.
  • Unposted subledger transactions, where invoices, payments, or adjustments were recorded in the AR module but haven’t been posted to the GL yet.
  • Timing differences, such as a payment recorded in the GL on the last day of the period that didn’t clear through the AR module until the next day.
  • Duplicate entries, where the same invoice was entered twice or a payment was applied to the wrong customer and then re-entered without reversing the original.

The fix is always the same: pull detail from both sides, line them up, and identify what’s in one but not the other. Most ERP systems have a reconciliation report that flags the differences automatically. The manual journal entry problem catches people most often, because those entries show up in the GL totals but are invisible when you’re looking at the subledger alone.

This reconciliation isn’t just bookkeeping hygiene. It’s a fundamental internal control. The people who record invoices and apply payments should not be the same people who perform the reconciliation or approve write-offs. That separation prevents a situation where someone creates a fictitious invoice, collects the payment, writes off the balance, and covers their tracks inside a single workflow.

What Auditors Will Test

In a financial audit, the AR schedule gets examined closely. Auditors are testing whether the receivables on your balance sheet exist and whether the amounts are accurate. The standard approach, outlined in PCAOB Auditing Standard 2310, is to send confirmation requests directly to your customers asking them to verify the balances they owe.1PCAOB Public Company Accounting Oversight Board. AS 2310: The Auditors Use of Confirmation

Auditors control that process themselves. They select the accounts, mail the requests, and receive responses directly, so nobody at the company can intercept or alter them. A blank confirmation, where the customer fills in the balance rather than being told what it should be, is considered more reliable than one that states the amount and asks the customer to agree.

When customers don’t respond, auditors use alternative procedures: examining subsequent cash receipts to verify the receivable was real, reviewing shipping documents to confirm goods were delivered, or checking signed contracts. The cleaner your schedule and the better your supporting documentation, the faster this goes. Companies that can’t produce an invoice or proof of delivery for balances under audit tend to end up with adjustments they’d rather not have.

Writing Off Bad Debts for Tax Purposes

When a receivable becomes uncollectible, the write-off has tax implications beyond the financial statement entry. Under federal tax law, businesses can deduct wholly or partially worthless debts, but only if the amount was previously included in gross income.2Office of the Law Revision Counsel. 26 USC 166 Bad Debts

If you use accrual-basis accounting, you reported revenue when you billed the customer, regardless of whether they paid. That means it was already included in income, and you’re eligible to deduct it when it proves uncollectible. If you use cash-basis accounting, you report income only when payment arrives. Since you never included the unpaid amount in income, there’s nothing to deduct. A cash-basis consultant whose client never pays a $10,000 invoice can’t take a bad debt deduction for that amount because it was never taxed in the first place.3Internal Revenue Service. Topic No. 453, Bad Debt Deduction

For accrual-basis businesses, the IRS requires that you demonstrate the debt is genuinely worthless before claiming the deduction. You need to show you took reasonable steps to collect, such as sending demand letters, making phone calls, or hiring a collection agency. You don’t need to go to court, but you do need to establish that a judgment would be uncollectible even if you obtained one. The deduction must be taken in the year the debt becomes worthless, not the year you get around to writing it off.3Internal Revenue Service. Topic No. 453, Bad Debt Deduction

Partially worthless debts get slightly different treatment. The IRS allows a partial deduction, but only for the amount you’ve actually charged off on your books during the tax year.2Office of the Law Revision Counsel. 26 USC 166 Bad Debts Your AR schedule and the collection history behind it become the documentation trail. Keep records of every collection attempt, every returned letter, every bounced payment. If the IRS questions the deduction, the aging schedule showing the invoice sitting unpaid for months alongside your documented collection efforts is the evidence you need.