CMBS Delinquency Rates
A Deep Dive into CMBS Delinquency Rates for Programmatic Analysis
Tracking CMBS delinquency rates provides a vital sign for the health of commercial real estate credit markets. This metric represents the percentage of commercial mortgage loans within a securitized trust that are past due, typically bucketed into 30, 60, and 90+ day increments. For analysts and quants, however, the headline number is just the beginning. The real value lies in understanding the data lineage—tracing delinquency figures back to their source in servicer remittance reports—and using that granular data for programmatic surveillance and risk modeling. Visualizing trends with tools like Dealcharts allows for the rapid citation and sharing of these insights. As of Q1 2025, rates are showing stress, particularly in the office and multifamily sectors, making verifiable data pipelines more critical than ever.
Market Context: Why CMBS Delinquency Rates Matter
For structured finance professionals, the CMBS delinquency rate is a primary indicator of credit performance and borrower stress within the commercial real estate market. Its calculation is straightforward: the unpaid principal balance (UPB) of all delinquent loans divided by the total UPB of all loans in a given pool. This balance-weighted approach ensures that larger loans have a proportionally greater impact on the rate, accurately reflecting capital at risk.
The current market is shaped by a dual threat: structural shifts in property demand (e.g., remote work impacting office) and a challenging interest rate environment complicating refinancings. This has led to a nuanced credit landscape where headline delinquency rates only tell part of the story. A more precise analysis requires distinguishing between different stages of loan distress.
Key Metrics in CMBS Credit Monitoring
| Metric | Definition | Significance |
|---|---|---|
| Delinquency | A loan payment is missed and categorized as 30-59, 60-89, or 90+ days past due. | A lagging indicator of borrower cash flow issues. |
| Special Servicing | A loan is transferred to a workout specialist when default is imminent or has occurred. | A forward-looking indicator of severe distress; modification or foreclosure is likely. |
| Foreclosure | The lender initiates legal proceedings to seize the property collateralizing the loan. | A late-stage resolution process indicating a breakdown in workout negotiations. |
| REO (Real Estate Owned) | The lender takes title to the property following an unsuccessful foreclosure auction. | The final stage of distress, where the lender becomes the property owner. |
A loan may be transferred to special servicing before becoming delinquent, particularly if the borrower signals an inability to refinance an upcoming maturity. Therefore, sophisticated analysts often monitor a broader "distress rate" (delinquent loans + specially serviced loans) for a more comprehensive view. Analyzing this data by vintage, such as the CMBS 2024 vintage data, reveals how underwriting standards from different eras are performing under current stress.
Data Lineage: Sourcing and Parsing Delinquency Data

The definitive source for CMBS loan performance data is the monthly servicer remittance report. These reports are filed with the SEC as exhibits to Form 10-D and are accessible through the EDGAR database. The data is typically provided in structured formats like the CREFC Investor Reporting Package (IRP) or raw CSV files. For any programmatic analysis, establishing a verifiable data lineage from these source filings is non-negotiable.
Developers and data engineers must build pipelines to:
- Identify and Fetch Filings: Systematically locate the correct 10-D filing for a specific CMBS trust (identified by its CIK) for a given reporting period.
- Extract Loan Tapes: Parse the filing to find and download the correct exhibit containing the loan-level remittance data.
- Normalize and Standardize: Clean the raw data by standardizing column headers, date formats, and delinquency status codes (e.g., mapping '30', '30-59', and '30 Days Delinquent' to a single canonical value). This step is crucial for accurate aggregation across different servicers.
- Link to Deal Metadata: Map the filing's CIK to deal-level identifiers like CUSIPs and deal names to connect performance data with issuance characteristics.
Platforms like Dealcharts automate this entire data plumbing process, providing analysts with clean, normalized, and citation-ready datasets directly traceable to the source SEC filings. This transparency allows users to verify any data point, a critical requirement for institutional-grade risk modeling.
Programmatic Workflow: Building a Delinquency Monitor in Python
A programmatic approach using Python enables analysts to move beyond static reports and build dynamic, reproducible surveillance tools for monitoring CMBS delinquency rates. The workflow transforms raw servicer data into actionable insights, ensuring every calculation is transparent and repeatable.
The core of this workflow involves using a few key libraries:
to fetch data from an API or EDGAR,requests
for data manipulation and analysis, andpandas
ormatplotlib
for visualization.seaborn
Here is a simplified Python snippet demonstrating the logic of calculating delinquency rates by property type from a loan tape.
import pandas as pd# In a real workflow, this DataFrame would be populated from a parsed 10-D exhibit# or an API call to a service like Dealcharts.data = {'loan_id': ['A1', 'A2', 'B1', 'B2', 'C1', 'C2'],'property_type': ['Office', 'Office', 'Multifamily', 'Multifamily', 'Retail', 'Retail'],'current_balance': [50000000, 10000000, 8000000, 6000000, 3000000, 7000000],'delinquency_status': ['Current', '90+ Days', 'Current', '30 Days', 'Current', 'Current']}loan_tape = pd.DataFrame(data)# Data Lineage Step: Define the source and transformation# Source: Simulated loan-level remittance tape# Transformation: Filter for delinquent statuses, aggregate by property type# Define delinquent statuses for filteringdelinquent_statuses = ['30 Days', '60 Days', '90+ Days']# Identify delinquent loans based on statusloan_tape['is_delinquent'] = loan_tape['delinquency_status'].isin(delinquent_statuses)# Group by property type and sum balances for delinquent loansdelinquent_balances = loan_tape[loan_tape['is_delinquent']].groupby('property_type')['current_balance'].sum()# Group by property type and sum total balancestotal_balances = loan_tape.groupby('property_type')['current_balance'].sum()# Calculate the balance-weighted delinquency ratedelinquency_rates = (delinquent_balances / total_balances).fillna(0) * 100# Output the verifiable insightprint("CMBS Delinquency Rates by Property Type (%):")print(delinquency_rates.round(2))
This script exemplifies the data lineage mindset: source (loan tape) → transform (filtering and aggregation) → insight (delinquency rates). By automating this process, analysts can efficiently monitor entire portfolios of deals, such as the BMARK 2024-V11 transaction, with auditable and reproducible results.
Implications for Risk Modeling and AI
Granular, context-rich delinquency data enables the development of more sophisticated credit risk models. The ability to differentiate between a term default (driven by insufficient property cash flow) and a maturity default (driven by an inability to refinance) is crucial. Recent data from Q1 2025 shows a significant spike in maturity defaults, highlighting refinancing risk in the current high-rate environment. According to the latest research from KBRA, maturity defaults constituted a significant portion of new distress, a clear signal of capital markets strain.
This is the foundation of a "model-in-context" approach. Instead of analyzing a loan in isolation, it is evaluated as a node within a larger graph that includes its servicer, originator, property submarket, and performance of comparable loans. This structured context is also essential for advanced AI and Large Language Models (LLMs). An LLM can summarize a servicer report, but without the underlying data graph, it cannot reason about causal relationships—such as why loans underwritten in a specific vintage with certain characteristics are defaulting at higher rates. An explainable data pipeline that provides this context is a prerequisite for trustworthy, AI-driven credit analysis.
How Dealcharts Helps
Dealcharts connects these disparate datasets—SEC filings, deal structures, servicer reports, and loan-level performance—into a unified, verifiable graph. This platform is designed for analysts, data scientists, and quants who need to build and deploy programmatic workflows without the overhead of sourcing and cleaning the underlying data. With Dealcharts, you can publish and share verified charts and analyses, confident that every data point is traceable back to its source. Explore the datasets at https://dealcharts.org.
Conclusion
Effective analysis of CMBS delinquency rates requires more than just tracking a headline number. It demands a rigorous, programmatic approach centered on verifiable data lineage. By building explainable pipelines that trace insights back to source documents like 10-D filings, analysts and AI systems can generate more reliable and context-aware risk assessments. This focus on data context and explainability, central to the CMD+RVL framework, is the future of reproducible finance analytics.
Article created using Outrank