Accounts Receivable Aging Report: How to Create and Read One
Learn how to build an accounts receivable aging report with a worked example, aging buckets, an allowance for bad debts and the action to take per bucket.
Quick answer: An accounts receivable aging report is a table of every unpaid customer invoice, grouped by how long each one has been outstanding: usually current, 1–30, 31–60, 61–90 and over 90 days past due. It shows at a glance who owes you money, how much, and which balances are at risk, so you can prioritize collections.
This guide shows how to build an aging report step by step, works through a full five-customer example with correct totals, explains how to estimate bad debts from it and lists what to do with each bucket. Clean aging starts with clean invoices, so make sure every invoice from our invoice generator has a unique number and a real calendar due date.
What an accounts receivable aging report shows
An aging report (or AR aging schedule) answers three questions:
- How much is owed in total? The grand total equals your accounts receivable balance.
- How overdue is it? The buckets show how much is current versus late, and how late.
- Who owes it? Rows by customer reveal which clients pay slowly.
It is one of the most practical reports in small business finance, and it underpins almost everything in our accounts receivable guide.
Accountants and lenders also use it. At year end it helps decide whether any balances should be written off, and a lender reviewing a credit application may ask for a recent aging report to judge how reliably your customers pay. Even a one-person business benefits, because a single glance replaces scrolling through sent emails to work out who still owes what.
Aging buckets explained
| Bucket | Meaning | Typical risk |
|---|---|---|
| Current | Not yet due | Low |
| 1–30 days | Up to a month past due | Low to moderate; often an oversight |
| 31–60 days | One to two months past due | Moderate; needs active follow-up |
| 61–90 days | Two to three months past due | High; escalate |
| Over 90 days | More than three months past due | Highest; consider collections or write-off |
The buckets above assume aging from the due date. Some businesses age from the invoice date instead, in which case a Net 30 invoice moves into "31–60" as soon as it becomes overdue. Pick one approach, label it on the report and stick with it.
How to create an aging report in 5 steps
Step 1: List every unpaid invoice
Export or list each open invoice with customer, invoice number, invoice date, due date and outstanding balance. Include partially paid invoices at their remaining balance and subtract any unapplied credit notes.
Step 2: Choose a report date
Typically the last day of the month or today's date. All aging is measured against it.
Step 3: Calculate days past due
Days past due = report date − due date. For example, an invoice due on 15 September 2026 and aged as of 31 October 2026 is 15 days past due by the end of September plus 31 days in October = 46 days past due, which places it in the 31–60 bucket. A negative result means the invoice is current.
Step 4: Assign each balance to a bucket
In a spreadsheet, a nested IF formula can place each balance in the right column based on days past due.
Step 5: Total by customer and by bucket
Sum each row for customer totals and each column for bucket totals. The grand total must equal your accounts receivable balance; if it doesn't, an invoice or payment is missing.
Worked example: a five-customer aging report
Here is an aging report for a small business as of 31 October 2026, aged from the due date.
| Customer | Current | 1–30 | 31–60 | 61–90 | Over 90 | Total |
|---|---|---|---|---|---|---|
| Customer A | $4,200 | $1,800 | $0 | $0 | $0 | $6,000 |
| Customer B | $0 | $2,500 | $1,500 | $0 | $0 | $4,000 |
| Customer C | $3,000 | $0 | $0 | $2,000 | $0 | $5,000 |
| Customer D | $0 | $0 | $0 | $0 | $1,200 | $1,200 |
| Customer E | $2,800 | $0 | $1,000 | $0 | $0 | $3,800 |
| Total | $10,000 | $4,300 | $2,500 | $2,000 | $1,200 | $20,000 |
| % of total | 50.0% | 21.5% | 12.5% | 10.0% | 6.0% | 100% |
Check the maths: the column totals $10,000 + $4,300 + $2,500 + $2,000 + $1,200 = $20,000, and the row totals $6,000 + $4,000 + $5,000 + $1,200 + $3,800 = $20,000. Both agree, so the report balances.
What this report tells you
- Half of receivables ($10,000) aren't due yet, which is healthy.
- Half are overdue ($10,000), and $3,200 (16%) is more than 60 days late.
- Customer C pays some invoices on time but has a $2,000 invoice over 60 days late, possibly a dispute worth investigating.
- Customer D's $1,200 is over 90 days late and should be escalated now.
- Customer B has slipped into the 31–60 bucket and needs a call, not just another email.
Estimating bad debts from the aging report
Businesses using accrual accounting often estimate an allowance for doubtful accounts by applying a percentage to each bucket. The percentages below are illustrative only; base yours on your own collection history.
| Bucket | Balance | Estimated uncollectible | Allowance |
|---|---|---|---|
| Current | $10,000 | 1% | $100 |
| 1–30 days | $4,300 | 3% | $129 |
| 31–60 days | $2,500 | 10% | $250 |
| 61–90 days | $2,000 | 25% | $500 |
| Over 90 days | $1,200 | 50% | $600 |
| Total | $20,000 | — | $1,579 |
On this estimate, the business expects to collect about $20,000 − $1,579 = $18,421 of its receivables. Discuss the method and any tax implications with your accountant.
What to do with each aging bucket
- Current: Send a courtesy reminder a few days before the due date.
- 1–30 days: Send polite follow-ups using our payment reminder emails, and check the invoice reached the right person.
- 31–60 days: Phone the client, confirm there is no dispute, and send a statement of account listing all open invoices. Apply any late payment fees your contract allows.
- 61–90 days: Escalate to a senior contact, consider pausing further work and follow our playbook for an overdue invoice.
- Over 90 days: Send a final written notice, then decide between a payment plan, sending the invoice to collections, small claims or a write-off.
Tips for a more useful aging report
- Use consistent invoice numbers so every line traces back to a document. See our invoice numbering system guide.
- Apply payments the day they arrive, or the report will overstate what is overdue.
- Add a notes column for promised payment dates and disputes.
- Compare month to month. A growing 31–60 bucket is an early warning even if the total looks stable.
- Feed it into your forecast. Expected collections by bucket make a cash flow forecast far more realistic.
Building the buckets in a spreadsheet
If you don't have accounting software, a spreadsheet aging report takes about half an hour to set up. Use one row per open invoice with these columns: customer, invoice number, invoice date, due date, balance, days past due and bucket.
- Days past due: put the report date in a fixed cell (for example H1) and use
=$H$1-D2, where D2 is the due date. - Bucket: use a nested IF on the days-past-due cell, such as
=IF(F2<=0,"Current",IF(F2<=30,"1-30",IF(F2<=60,"31-60",IF(F2<=90,"61-90","Over 90")))). - Summary: a pivot table with customers as rows, buckets as columns and the sum of balance as values produces the report shown above.
Change the report date each time you run it and the whole report re-ages automatically. Keep a copy of each month's version so you can compare trends.
Common aging report mistakes
- Forgetting partial payments, which overstates the amount overdue.
- Leaving disputed invoices unmarked. A disputed balance needs resolution, not reminders; flag it separately.
- Mixing currencies without conversion. Convert foreign-currency balances at a consistent rate or report them separately.
- Using the invoice date for some customers and the due date for others. Consistency matters more than which method you choose.
- Running the report but not acting on it. Assign a next step and a date to every balance over 30 days.
If you are not using accounting software, an invoice tracker spreadsheet can produce the same aging buckets with a few formulas.
Keep your receivables current
The easiest aging report to manage is one where most balances sit in "current". Send clear, prompt invoices from the invoice generator (the Mono invoice template keeps the due date and amount front and center) and review your aging report every week.
Frequently asked questions
What are the standard aging buckets?
Most aging reports use current (not yet due), 1 to 30 days past due, 31 to 60 days, 61 to 90 days and over 90 days. Some businesses add a 91 to 120 bucket or use different ranges to match their payment terms.
Should invoices be aged from the invoice date or the due date?
Either works if you are consistent, but aging from the due date shows how overdue each invoice is, which is usually more useful for collections. Aging from the invoice date shows how long the money has been outstanding in total.
How often should I run an aging report?
Weekly is a good habit for small businesses with regular invoicing, and at minimum monthly as part of closing your books.
Can I make an aging report in a spreadsheet?
Yes. List each unpaid invoice with its due date and balance, calculate days past due against a report date, and use formulas to place each balance in the correct bucket. Then total by customer and by bucket.
What is an allowance for doubtful accounts?
It is an estimate of receivables you don't expect to collect. A common method applies a higher percentage to older aging buckets. The percentages should be based on your own collection history and reviewed with your accountant.
What is the difference between an AR aging report and an AP aging report?
An accounts receivable aging report shows what customers owe you, grouped by how overdue each invoice is. An accounts payable aging report does the same for what you owe your suppliers. Used together, they help you plan cash: you can see when money should arrive and which bills need paying first, and spot whether you are paying suppliers faster than customers pay you.
How do partial payments and credits appear on an aging report?
Show only the remaining balance of each invoice after any partial payment, in the bucket for that invoice's age. Unapplied payments and credit notes should be matched to the invoices they relate to; if they cannot be matched yet, list them separately as credits so customer totals are not overstated. Regularly clearing unapplied items keeps the report accurate.
How should I handle disputed invoices on an aging report?
Keep disputed invoices on the report, but flag them, for example in a separate column or note, so your collection effort focuses on resolving the dispute rather than sending standard reminders. Record the reason and who is handling it. If the dispute ends with a reduction, issue a credit note rather than editing the original invoice, and the aging report will update.
Why do lenders ask for an aging report?
Lenders, factoring companies and investors use the aging report to judge how collectible your receivables are. For asset-based loans and lines of credit, the amount you can borrow is often based on receivables below a certain age, with older or disputed balances excluded. A clean, current report with few old balances can improve your access to funding.
Can I use an aging report to send customer statements?
Yes. The aging report lists each customer's open invoices and balances, which is the information a customer statement needs. Sending monthly statements that show unpaid invoices, amounts and due dates reminds customers what they owe and helps catch missing or disputed invoices early. Check the statement against your records before sending, especially where partial payments are involved.
Invoice Creator Editorial Team
Guides on invoicing, cash flow and small-business finance from Invoice Creator, operated by Next Software Development Company. Content is reviewed for accuracy against the fields our own invoice generator produces.
Try the invoice generator