Aging Formula in Excel

This guide treats “aging formula in excel” the way busy spreadsheet users actually want it: answer first, a live tool to prove it on your own data, then the reasoning. It is written for Excel but calls out every place Google Sheets differs, and the platform toggle at the top switches all shortcuts between Windows and Mac so nothing here assumes the keyboard you are not on.

Exact answer

In Excel: compute days outstanding with =TODAY()-InvoiceDate, then band that number with IFS into 0-30, 31-60, 61-90 and 90+.

On this page7
ƒxDate Difference CalculatorLive
Days between
364

Breakdown: 0 years · 11 months · 30 days

Workdays (Mon–Fri, NETWORKDAYS)
261
=B2A2 · =NETWORKDAYS(A2,B2)
=IFS(C2<=30,"0-30",C2<=60,"31-60",C2<=90,"61-90",TRUE,"90+")
Ctrl+CthenCtrl+Shift+V+Cthen+Ctrl+VPaste values · WindowsMac

Need it as an auditable file?

Ships inside the linked template — formula-driven, unlocked, audit-ready.

View template

What this does

An ageing analysis turns a list of unpaid invoices into a statement of how long the money has been owed and how much sits in each time band. It is two columns of work: a days-outstanding number, and a bucket label derived from it. A PivotTable over the bucket column then totals the amount per band, which is the figure a credit-control meeting actually runs on. The same idea underpins a lot of everyday Excel work, so the few minutes spent getting it right here pay back across every sheet you build afterwards. Treat it as a pattern, not a one-off, and it stops being something you look up and starts being something you reach for. The difference between a quick fix and a sheet you can trust is the extra minute you spend validating “aging formula in excel”. Start on a copy or a tiny sample, keep the affected formula visible, and compare the result with the tool above before you touch the real workbook. When a formula is involved, keep the inputs labelled beside it, reference cells instead of typing values, and apply number formatting only after the result checks out. The point is a calculation you can defend to a CFO or an auditor, but the practical win is that someone else can open the file and understand what happened without asking you.

A worked example

B2 holds the invoice date 2026-06-02. Run on 2026-08-14, C2 =TODAY()-B2 returns 73 once the cell is formatted as a number rather than a date — and 74 the next morning, because TODAY() moves with the calendar. D2 =IFS(C2<=30,"0-30",C2<=60,"31-60",C2<=90,"61-90",TRUE,"90+") returns 61-90, and a PivotTable with D as rows and the amount as values shows 18,400 sitting in that band. Cash collection is prioritised by band, so the bucket boundaries decide which customer gets called this week — and a mis-formatted days column hides the whole picture behind a column of 1900 dates. If there is any chance you will reuse this, drop it into a small template tab right now: a labelled input area on the left and the formula beside it, checked once against the tool above. Next time the same question comes up, the answer is a single paste away instead of a rebuild from memory.

In Google Sheets

Everything above works in Google Sheets too. Excel and Sheets share the formula syntax used here; only the surrounding menus are arranged differently. That portability is deliberate — learn it once and it follows you between the two tools and across Windows and Mac. Keep this page bookmarked for the next time the same question comes up. Better still, rebuild the example once in your own sheet — doing it yourself, with the tool above to check against, is what turns a copied formula into a technique you own. Treat “aging formula in excel” as a small building block rather than a chore. Once the inputs sit in their own cells and the formula reads from them, the same setup answers a dozen related questions with a tweak, and Excel keeps every dependent figure current as the data changes. The tool above is there so you can rehearse and verify before committing anything to a real workbook; the steps and worked example are there so the logic sticks. Get it right once and it stops costing you time — it starts saving it, every time the question comes back around.

Common mistakes

  • Leaving the days column formatted as a date, so 73 displays as a day in March 1900.
  • Not saying whether the report ages from the invoice date or the due date — the two produce different bands for the same ledger.
  • Hard-coding a report date instead of TODAY(), which quietly stops updating.
  • Writing overlapping bucket boundaries such as <=30 and >=30, which puts day 30 in whichever band the formula happens to test first.

Frequently asked questions

What is the formula for days outstanding?

=TODAY()-InvoiceDate, with the result cell formatted as a number.

How do I age from the due date instead?

Use =TODAY()-DueDate. Negative results mean the invoice is not due yet, which is worth a separate "not due" band.

IFS is not available in my version.

Use nested IF, or =LOOKUP(C2,{0;31;61;91},{"0-30";"31-60";"61-90";"90+"}), which reads the largest boundary not exceeding the value.

Why do the numbers change every day?

TODAY() is volatile and recalculates whenever the workbook does. Paste the days column as values to freeze a report.