Track distribution change, data quality, and matured portfolio outcomes. Each metric below states the comparison population and time horizon; choose escalation rules for the specific model and portfolio.
Illustrative synthetic data
A portfolio monitoring view
Example figures are invented to show how metrics can sit together. No real portfolio, model output, or alert threshold is represented.
Synthetic quarterly defaults, expected defaults, Gini, PSI, and missing data by portfolio segment
Period
Segment
Accounts
Observed defaults
Expected defaults
Observed-to-expected
Gini
PSI
Missingness
2025 Q1
Retail
1,240
25
23
1.09
42%
0.04
0.8%
2025 Q1
Small business
315
16
18
0.89
38%
0.09
1.4%
2025 Q2
Retail
1,310
31
29
1.07
41%
0.06
0.9%
2025 Q2
Small business
338
21
19
1.11
37%
0.14
1.8%
Read metrics together with exposure, event maturity, confidence intervals, data-quality checks, portfolio changes, and the model’s intended use. A metric value alone does not establish a model defect.
Compresses changes in a binned score or population distribution; inspect bin contributions and source counts.
Population
Comparable reference and current populations with the same bin definitions.
Horizon
A dated reference window and monitoring interval are explicit.
Assumptions
Bins, smoothing, weights, and missing-value treatment are fixed or explained.
Useful segmentation
Product, geography, channel, and score distribution.
Limitations
Depends on binning and baseline choice; drift does not prove performance decay.
Threshold caveat
Set alert bands from portfolio history, sample size, and impact; popular PSI cutoffs are not universal.
stability
Characteristic Stability Index (CSI)
Formula / definition
Apply the PSI contribution formula to reference and current shares for each feature bin.
Interpretation
Highlights which feature distributions moved, so the cause of a population shift can be investigated.
Population
Comparable feature values from the model's reference and current populations.
Horizon
The same reference and monitoring windows used for the related model.
Assumptions
Feature bins and category mappings are consistent.
Missingness is a distinct, monitored state.
Useful segmentation
Feature, product, time, and materially affected segment.
Limitations
A single index hides direction and can be unstable for sparse categories.
Threshold caveat
Set feature-level review criteria for the model and business context, not universal CSI values.
stability
Feature drift and data-quality change
Formula / definition
Compare declared distribution summaries (e.g. quantiles, category shares, missing rate) between reference and current windows.
Interpretation
Separates shifts in source values and pipeline behavior from changes in model performance.
Population
Point-in-time feature snapshots generated under the same definitions and transformations.
Horizon
Reference window, current window, and data arrival lag are stated.
Assumptions
Feature units, joins, and transformations are stable or versioned.
Useful segmentation
Feature, source system, product, and time.
Limitations
Distribution change can be expected seasonality or a pipeline defect; drift alone does not establish impact.
Threshold caveat
Define materiality and response steps in the context of each feature and pipeline; avoid a single universal drift trigger.
stability
Missingness rate
Formula / definition
Missing rate = missing or invalid observations / eligible observations, with null, blank, and sentinel rules disclosed.
Interpretation
Tracks data availability and may reveal upstream outages or population changes.
Population
The eligible rows for each field, with denominator and sentinel mapping recorded.
Horizon
Monitor by processing date and align with source delivery schedules.
Assumptions
Null, blank, sentinel, and not-applicable values are classified consistently.
Useful segmentation
Field, source, product, segment, and time.
Limitations
A stable rate may still hide changed missingness mechanisms or imputation.
Threshold caveat
Use source-specific service expectations and impact; thresholds are data-contract and portfolio specific.
portfolio outcomes
Observed bad/default rate
Formula / definition
Bad rate = matured positive/default outcomes / eligible units, with exposure weighting stated if used.
Interpretation
Describes realized event frequency for a cohort; distinguish account-weighted from balance-weighted measures.
Population
Eligible originated or active accounts under a stated inclusion and censoring rule.
Horizon
A defined event horizon and maturity cutoff; exclude immature observations or label them censored.
Assumptions
Default event and denominator grain are consistent.
Exits and restructures follow a stated policy.
Useful segmentation
Origination vintage, product, rating, geography, and risk band.
Limitations
Changes with portfolio mix, macro conditions, policy, and collections.
Threshold caveat
Interpret against risk appetite, historical uncertainty, macro context, and business use; no universal bad-rate alarm applies.
portfolio outcomes
Rating migration matrix
Formula / definition
Mᵢⱼ = count or share moving from grade i at start to grade j at end, with start-grade row denominators shown.
Interpretation
Shows upgrades, downgrades, stability, and transitions to default or exit over a stated interval.
Population
Accounts rated at the beginning of the transition window with start and end states captured.
Horizon
A consistent transition interval and treatment of exits/defaults.
Assumptions
Rating scale mappings and observation dates are consistent.
Missing transitions are reported.
Useful segmentation
Start grade, product, vintage, and transition period.
Limitations
Transition rates may reflect policy changes and macro cycles; aggregates may hide segment shifts.
Threshold caveat
Set migration review criteria based on historical cycle and policy context; no transition cell has a universal trigger.
portfolio outcomes
Delinquency roll rates
Formula / definition
Roll rate b→c = accounts or balance moving from delinquency bucket b to c / eligible accounts or balance in bucket b.
Interpretation
Tracks curing, remaining delinquent, or worsening between buckets during one transition interval.
Population
Accounts with an observable opening bucket and a defined subsequent snapshot.
Horizon
Specify snapshot interval and treatment of payments, charge-offs, and exits.
Assumptions
Buckets, balances, and transition handling are fixed.
Useful segmentation
Opening arrears bucket, product, servicing channel, and time.
Limitations
A roll rate is affected by collection strategy and payment seasonality.
Threshold caveat
Use portfolio-specific collection and risk context; avoid universal roll-rate cutoffs.
portfolio outcomes
Vintage and cohort curves
Formula / definition
Cumulative cohort rate by age t = cohort events observed by age t / eligible cohort units at risk under a stated censoring rule.
Interpretation
Compares equally aged origination cohorts and helps separate seasoning from calendar-time changes.
Population
Cohorts defined by origination or activation period and comparable eligibility rules.
Horizon
Compare like-for-like months-on-book and state right-censoring treatment.
Assumptions
Cohort membership is stable.
Event capture and exposure period are aligned.
Useful segmentation
Origination quarter, product, channel, score band, and age.
Limitations
Mix, underwriting, servicing, and macro differences can confound comparisons.
Threshold caveat
Set cohort review standards around portfolio cycles and maturity; no universal vintage-curve boundary.
portfolio outcomes
Arrears and delinquency indicators
Formula / definition
Example: delinquency rate = accounts past a defined days-past-due threshold / eligible accounts; state whether balance weighted.
Interpretation
Tracks payment stress before default and supports collections and portfolio early-warning review.
Population
Eligible active accounts with current contractual due dates and valid payment histories.
Horizon
Snapshot date and days-past-due definition are explicit.
Assumptions
Grace periods, holidays, restructures, and partial payments are handled consistently.
Useful segmentation
Days-past-due band, product, vintage, geography, and channel.
Limitations
Operational timing and payment posting can create temporary spikes.
Threshold caveat
Use product-specific service calendars, materiality, and historical patterns; no universal delinquency alert rate.
portfolio outcomes
Cure and re-default
Formula / definition
Cure rate = defaulted accounts meeting a defined return-to-performing rule / eligible defaulted accounts; re-default uses a later stated window.
Interpretation
Separates temporary cures from durable recoveries and makes the cure policy visible.
Population
Default episodes with complete follow-up and distinct episode identifiers.
Horizon
Define probation period, cure date, and re-default window.
Assumptions
Cure and default definitions match policy and dataset labels.
Repeated episodes are not collapsed without a rule.
Useful segmentation
Default reason, product, workout strategy, time, and collateral type.
Limitations
Cure classification is policy-sensitive and affected by observation censoring.
Threshold caveat
Use governed cure policy and uncertainty; universal cure or re-default thresholds are inappropriate.
portfolio outcomes
Prepayment and exit rates
Formula / definition
Period hazard = voluntary prepayments during period / accounts at risk at period start, with competing exits defined.
Interpretation
Describes early repayment or account closure that changes exposure and lifetime cash flows.
Population
Accounts eligible to prepay and observed at the start of each period.
Horizon
Specify period length, account age, and treatment of default or transfer as competing events.
Assumptions
Exit reasons are distinguishable or limitations are disclosed.
Useful segmentation
Product, rate environment, vintage, term, and customer segment.
Limitations
Exit coding and contract features can bias observed hazards.
Threshold caveat
Review relative to product and contractual assumptions; there is no universal prepayment rate trigger.
portfolio outcomes
Recovery amounts and timing
Formula / definition
Recovery rate = discounted eligible recoveries / a stated exposure denominator; also report time-to-recovery and collection cost.
Interpretation
Shows cash collected after default and the timing/cost profile used in workout analysis.
Population
Default episodes with reconciled recovery cash flows and exposure records.
Horizon
From default or charge-off date through a defined workout observation window.
Assumptions
Recoveries, collateral proceeds, costs, and write-offs are consistently classified.
Useful segmentation
Secured status, collateral, product, workout channel, and vintage.
Limitations
Recent defaults may have immature recovery paths; legal and macro processes differ.
Threshold caveat
Compare mature cohorts under the same accounting basis; portfolio-specific bands are needed.
portfolio outcomes
LGD outcome monitoring
Formula / definition
Realized LGD = discounted net loss cash flows / exposure at default under the stated workout or market definition.
Interpretation
Compares realized loss severity with modeled LGD at the same grain and maturity.
Population
Mature default episodes with EAD and complete recovery/cost cash-flow information.
Horizon
State workout horizon, discount rate, cure treatment, and maturity rule.
Assumptions
Modeled and realized definitions align.
Recoveries and costs use consistent timing and discounting.
Useful segmentation
Collateral, seniority, product, default vintage, and workout strategy.
Limitations
Censored recoveries and small segment event counts create uncertainty.
Threshold caveat
Set review triggers with estimation uncertainty and intended model use; no universal LGD limit applies.
portfolio outcomes
EAD and CCF outcome monitoring
Formula / definition
For a revolving facility, CCF = (EAD − drawn at reference date) / undrawn at reference date, subject to a declared sample rule.
Interpretation
Compares observed exposure growth before default with modeled CCF/EAD assumptions.
Population
Defaulted facilities with aligned reference balances, limits, and exposure at default.
Horizon
Specify reference date, default date, observation horizon, and facility eligibility.
Assumptions
Limit changes and restructures are treated consistently.
Zero-undrawn denominators are excluded or handled explicitly.
Useful segmentation
Product, commitment type, rating, utilization, and time.
Limitations
Draw behavior changes with policy, availability, and borrower distress.
Threshold caveat
Review by facility and business cycle; no universal CCF benchmark is appropriate.
portfolio outcomes
Observed versus expected ECL
Formula / definition
Compare realized cash shortfalls with expected ECL on a matched population and horizon; define any ratio as observed / expected.
Interpretation
Highlights forecast and measurement differences but requires matching scope, scenario, discount, and exposure conventions.
Population
Matched exposures with comparable contractual cash-flow and outcome data.
Horizon
State stage, horizon, observation date, and realization window.
Assumptions
Observed and expected measures use aligned definitions and discounting.
Portfolio changes and write-offs are reconciled.
Useful segmentation
Stage, product, scenario, vintage, rating, and time.
Limitations
Realized shortfall is noisy; ECL incorporates forward-looking estimates and is not simply a default count.
Threshold caveat
Use accounting governance and materiality; universal observed/expected ECL thresholds do not exist.
Runnable monitoring examples
Edit the synthetic inputs and run each example in your browser. These snippets demonstrate calculations; they do not define institution-wide monitoring limits.
Runnable Python · local in your browser
Monitor observed-to-expected and Brier score
Compare a small set of matured binary outcomes against predicted PD values.
Output
Run the code to see the output.
Runtime loads only after you press Run. Code runs in a separate browser worker with a 10-second limit and a 20,000-character output cap. Use synthetic examples only; browser execution is not a secure environment for secrets or sensitive records.
Runnable Python · local in your browser
Calculate PSI, feature drift, and missingness
Compare synthetic reference and current bin counts with a small smoothing constant. Inspect the bins and data-quality indicators as well as the summary index.
Output
Run the code to see the output.
Runtime loads only after you press Run. Code runs in a separate browser worker with a 10-second limit and a 20,000-character output cap. Use synthetic examples only; browser execution is not a secure environment for secrets or sensitive records.
Runnable Python · local in your browser
Summarize rating migration, arrears roll, and recovery LGD
Use synthetic account paths to calculate grade transitions, a delinquency roll rate, and a simple discounted recovery outcome.
Output
Run the code to see the output.
Runtime loads only after you press Run. Code runs in a separate browser worker with a 10-second limit and a 20,000-character output cap. Use synthetic examples only; browser execution is not a secure environment for secrets or sensitive records.
Monitoring signals should have an accountable owner, a documented response, and an evidence trail. No single index or threshold demonstrates model fitness by itself.