DAX Aging Buckets (0-30, 31-60, 61-90, 90+) Measure

Buckets an outstanding invoice amount into standard aging ranges based on days overdue.

FinanceIntermediateaging bucketsaccounts receivablerange

DAX code

Aging Bucket =
VAR DaysOverdue = DATEDIFF('Invoices'[DueDate], TODAY(), DAY)
RETURN
    SWITCH(
        TRUE(),
        DaysOverdue <= 0, "Not Due",
        DaysOverdue <= 30, "0-30",
        DaysOverdue <= 60, "31-60",
        DaysOverdue <= 90, "61-90",
        "90+"
    )

Notes

This is written as a calculated column so it can be used to slice and group invoices by bucket in a visual.

Requirements

How to use this measure

  1. In Power BI Desktop, select the table that should hold the measure and choose New measure on the ribbon.
  2. Paste the code, then replace the placeholder table and column names with your own. The My table names fields above do this for you.
  3. Run it through the DAX Formatter if you want it laid out in your team's style.

Related DAX measures

More DAX resources

Browse all 175 measures in the Power BI DAX Measures Library, or search the library for something similar to Aging Buckets (0-30, 31-60, 61-90, 90+).