Skip to content
FinObservatory

Consumer credit / Methodology

Consumer Credit Methodology

How the /consumer-credit module is built, what it covers, and where it stops. It is the credit-volumes-and-delinquencies view of US consumer credit, now combining Federal Reserve aggregates with CFPB Consumer Credit Trends borrower mix detail, and distinct from the two neighbouring surfaces it deliberately does not duplicate.

What this module covers, and what it does not

  • This page: the Federal Reserve Board's monthly G.19 Consumer Credit release (dollar volumes outstanding and terms of credit), the Board's quarterly Charge-Off and Delinquency Rates on Loans and Leases at Commercial Banks release, and the CFPB Consumer Credit Trends underlying file. Consumer credit here is still the G.19 definition for the aggregate stock: credit extended to individuals for household, family, and other personal expenditures, excluding loans secured by real estate. The CFPB file adds the flow side: originations, originated dollar volume, inquiries and credit tightness by market and borrower group.
  • Not this page, cross-linked instead:
    • /consumer is the CFPB Consumer Complaint Database: counts of complaints, not dollars of credit. A different question about the same households.
    • /conditions carries the NY Fed Household Debt and Credit report, built from the Consumer Credit Panel (an anonymized 5% sample of Equifax credit files): total household debt by product and the share of balances 90+ days delinquent. That panel includes mortgages and student loans and measures delinquency as a share of balances. This page instead measures delinquency as the commercial-bank call-report rate, and measures volume as the G.19 aggregate. The two are complementary reads, not the same series.

Data

Source key g19. Retrieved from the FRED API (scripts/fetch_g19.py -> scripts/build_g19.py -> data/parquet/consumer_credit.parquet, long format: series_id, date, value; 11 series). observation_start=1776-01-01 on every series so nothing is silently truncated. FRED's "." missing marker is dropped, never coerced to zero. Full series notes are stored verbatim in data/raw/g19/raw_json/<ID>.meta.json; the retrieval details and the complete series table are in data/raw/g19/SOURCE.md.

Source key cfpb_cct. Normalized by scripts/build_cfpb_cct.py from data/raw/cfpb_cct/all_data.csv plus the workbook data/raw/cfpb_cct/CCT_dd_cb_all_files.xlsx, and stored as data/parquet/cfpb_cct.parquet with columns date, series, subgroup, subgroup_level, loan_type, value_type, value, value_yoy. Measured on this branch: 52,286 rows from 2005-01-01 to 2026-04-01. The codebook workbook is authoritative on units and subgroup definitions, so the page reads its meanings from there rather than guessing from labels.

Series

G.19 volumes (monthly, seasonally adjusted). TOTALSL total, REVOLSL revolving, NONREVSL nonrevolving. FRED serves these in millions of dollars; the published G.19 release quotes billions, so this module divides by 1,000. The Fed defines total as the sum of its parts, so the identity TOTALSL == REVOLSL + NONREVSL must hold; the build asserts it on every month where all three print (maximum residual 0.01 million, rounding only).

G.19 terms of credit (quarterly prints, not seasonally adjusted, percent). TERMCBAUTO48NS new-car 48-month finance rate at commercial banks (from 1972), TERMCBCCALLNS credit-card APR across all accounts (from 1994), and TERMCBCCINTNS credit-card APR across accounts assessed interest. FRED labels these monthly, but the G.19 terms table is quarterly, so the series print only in the middle month of each quarter.

Charge-Off and Delinquency Rates (quarterly, seasonally adjusted, percent). DRCCLACBS credit-card delinquency (from 1991), DRCLACBS consumer-loan delinquency (from 1987), DRSFRMACBS single-family residential mortgage delinquency (from 1991), DRALACBS all-loans delinquency as a benchmark (from 1985), and CORCCACBS credit-card charge-off (from 1985). A loan is delinquent when past due 30 days or more and still accruing, plus nonaccrual loans; charge-offs are the value removed from the books as a loss, net of recoveries, annualized. Both are measured against all commercial banks.

CFPB Consumer Credit Trends (monthly, both seasonally adjusted and unadjusted).

  • series has four values:
    • Originations: number of new loans originated.
    • Dollar Volume: aggregate dollar volume of newly originated loans.
    • Inquiry Index: indexed number of consumers with inquiries, January 2010 = 100.
    • Credit Tightness Index: indexed number of consumers who applied for credit and did not obtain additional credit, January 2010 = 100.
  • loan_type has four values: AUT auto loans, CRC credit cards, MTG mortgages, STU student loans.
  • subgroup has five values:
    • all: all consumers.
    • score: previous-quarter FICO Score 8 bands, Deep Subprime <580, Subprime 580-619, Near Prime 620-659, Prime 660-719, Superprime 720+.
    • age: Younger than 30, 30-44, 45-64, 65 and older.
    • income: census tract relative income bands, Low <50%, Moderate 50% to <80%, Middle 80% to <120%, High 120%+.
    • map: two-letter state or DC code.
  • value_type has exactly two values, Seasonally Adjusted and Unadjusted. The page never mixes them on one axis.

The file does not carry a full cross product. The actual populated matrix on this branch is:

  • Originations and Dollar Volume: all four loan types, both value types, and the all, score, age, income subgroups. Coverage starts in 2006-01 for all and age, 2007-01 for score, and 2010-04 for income. The all, age and score cuts end in 2025-12; the income cut ends earlier, in 2025-04.
  • Dollar Volume also has a map subgroup, but only as 51 unadjusted rows for 2025-12 (50 states plus DC), one value per market. That is a snapshot, not a time series, so the page records it as a caveat rather than drawing a one-point line.
  • Inquiry Index: AUT, CRC, MTG only, subgroup = all only, both value types, 2005-01 to 2026-04.
  • Credit Tightness Index: AUT, CRC, MTG only, subgroup = all only, both value types, 2005-01 to 2026-02 for auto and cards and 2005-01 to 2026-01 for mortgages.
  • Student-loan Inquiry Index and Credit Tightness Index rows are absent.

The page exposes the valid cuts directly instead of inventing missing ones: loan type is always a separate selection, score or demographic cuts are shown only for Originations and Dollar Volume, and the two all-borrower indices stay on their own index chart.

Citable CFPB selector state

The CFPB panel stores its complete measured-series selection in the page URL. The loan query key selects one of AUT, CRC, MTG or STU; breakout selects score, age or income; and basis selects Seasonally Adjusted or Unadjusted. Each value is validated independently against the same vocabularies used to build the charts. An invalid or unavailable value falls back only that selector to its documented default: loan=AUT, breakout=score, and basis=Seasonally Adjusted.

Default selector values are omitted from the canonical URL. Other query keys, the URL fragment, and the charts' independent t= transform entries are preserved when a selector changes. Browser back and forward navigation restores loan, breakout and seasonal basis as one selection, so the explanatory text, titles, plotted series and source descriptions move to the same data cut together. Seasonal basis identifies the measured rows; it is not a cosmetic display setting, and adjusted and unadjusted rows are never combined.

Every number is computed at build

The page carries no raw SQL and no typed statistic. Each headline is returned by a function in src/lib/consumerCredit.ts from fixed SQL over the parquet, so a data refresh moves the text automatically and nothing can drift out of date by hand.

For the CFPB file, the page uses the published value_yoy column for the year-on-year text. It does not derive a page-side y/y transform for those charts, because the file already carries the publisher's computed change. Branch check on the full parquet: the score, age and income breakout rows match the exact 12-month change as a ratio, while the all rows and the two index series match the exact 12-month change as a percent. The page only quotes value_yoy on the displayed score, age and income breakouts and scales those published ratios into percent form for readers.

Delinquency anchor verified verbatim against the Fed release

Credit-card delinquency rate. The Charge-Off and Delinquency release for 2026:Q1 reports the credit-card delinquency rate at all commercial banks at 2.92% (DRCCLACBS), with consumer loans at 2.64% and single-family mortgages at 1.89%. These were read directly from the Fed release table; a naive scrape of the wide multi-column table lands on the wrong column and returns 1.34%, so the figure was confirmed column by column. The G.19 volume levels carry no such fixed anchor: the June 2026 release revised the May 2026 TOTALSL level that an earlier vintage of this document quoted, so any anchor written against one print goes stale at the next one.

Definitions

  • Revolving share is revolving credit divided by total consumer credit.
  • Year-on-year change compares the latest total to the same month twelve months earlier, both seasonally adjusted.
  • Record for the credit-card delinquency rate is the maximum over its full 1991-present history.
  • Credit Tightness Index is the indexed number of consumers who applied for credit and did not obtain additional credit, with January 2010 = 100 in the CFPB codebook.
  • Inquiry Index is the indexed number of consumers with inquiries, also with January 2010 = 100.

Limitations

  • The G.19 consumer-credit aggregate excludes real-estate-secured debt, so it is smaller than total household debt; the mortgage story lives on /conditions and /mortgage.
  • The delinquency and charge-off rates are commercial-bank call-report measures, so they exclude credit unions, finance companies, and securitized pools held outside banks; the NY Fed panel on /conditions covers a broader lender set through Equifax.
  • The terms-of-credit rates are quarterly and not seasonally adjusted.
  • Seasonally adjusted levels are revised as the Fed updates its adjustment; the page always reflects the latest vintage in the parquet.
  • The CFPB file is a nationally representative sample from one nationwide credit reporting agency, not a census of all lenders.
  • The CFPB borrower cuts are uneven by construction: score, age and income are not available for the two index series, state rows are only a December 2025 unadjusted dollar-volume snapshot, and student-loan index rows are not published at all.
  • The CFPB level series stop in December 2025 on this branch (April 2025 for the neighborhood-income cut), while the inquiry and tightness indices run into 2026. The page states those differing coverage windows explicitly instead of pretending one common latest month.

License

Every series is a Federal Reserve Board statistical release, a US-government work in the public domain (Board statement: "Unless otherwise indicated, the materials on this website may be reproduced without restriction"). Unlike the ICE BofA and Moody's series behind /corporate-credit, these carry no redistribution restriction, so they are charted and republished directly.

The CFPB Consumer Credit Trends file is likewise a US-government publication. The raw-source note for cfpb_cct records the page-level reuse posture and the local builder republishes only derived page figures and charts, not the source bulk file itself.