What goes in an AR aging and collections dashboard?
An AR aging and collections dashboard shows what customers owe as of a specific date, how late balances are, and which invoices need action. Historical aging requires snapshots or payment-allocation history, not today's invoice balance alone.
Which cards belong on this dashboard?
- Open AR and overdue AR
- Aging buckets: current, 1-30, 31-60, 61-90, and 90+
- Top overdue customers and invoices
- Invoice collection rate by cohort
- Days sales outstanding
- Median days to pay
- Promise-to-pay and collector queue
- Credits and unapplied cash
What data does this dashboard need?
- Invoices with issue date, due date, customer, currency, and total
- Payment and credit allocations at invoice grain
- Daily open-balance snapshots or enough history to reconstruct them
- Customer owner, segment, payment terms, and legal entity
- Collection workflow state where available
How do you build it?
- Sync the source systems into a database and retain raw IDs, timestamps, status, and currency.
- Build reconciled models at the business grain this dashboard requires.
- Create one saved question per card and certify the shared models and definitions.
- Add dashboard filters for Legal entity, customer, owner, currency, aging bucket, as-of date.
- Show refresh time and the latest complete or reconciled period.
Example card SQL
SELECT
CASE
WHEN as_of_date <= due_date THEN 'Current'
WHEN as_of_date - due_date <= 30 THEN '1-30 days'
WHEN as_of_date - due_date <= 60 THEN '31-60 days'
WHEN as_of_date - due_date <= 90 THEN '61-90 days'
ELSE '90+ days'
END AS aging_bucket,
SUM(open_amount_reporting_currency) AS open_ar
FROM modeled_open_ar
WHERE as_of_date = {{as_of_date}}
GROUP BY 1
ORDER BY MIN(GREATEST(as_of_date - due_date, 0));