← Back to Blog Data Deep Dives

The income that vanishes at charge-off in ABS-EE data

Before the fix, an income figure resolved on 41.15% of Carvana's charged-off loans and on 74.69% of its surviving ones. That is a 33.5 point gap on a field that describes the borrower at origination. A loan's income does not change because the loan defaulted. The derivation did.

This post is about how that happened, which fields on a monthly loan tape are actually fixed, and what moved when I rebuilt income from the right filing. Everything here is measured on SEC ABS-EE loan-level filings in LoanTape's pipeline. The field audit ran on 2026-08-08 and the before/after diff on 2026-08-09, both read-only.

Income is not a filed field

ABS-EE auto filings do not carry a borrower income element. What they carry is a payment-to-income ratio (PTI) at origination and a scheduled payment amount that is re-filed every month. Income is the quotient: scheduled payment divided by PTI.

That makes income a derived field with two inputs of different character. PTI is filed once by the issuer and, as far as the record shows, nobody blanks it. The scheduled payment is a monthly field, and monthly fields get rewritten. So the income on any given row depends on which month's payment went into the division.

The original derivation took the payment from the loan's latest filing. For a loan that is still paying, the latest payment is a real number and the division works. For a loan that has charged off, it depends on the issuer.

Five issuers blank the payment at default

Bridgecrest, CarMax and Carvana write a blank, or a zero that the parser treats as absent, into the scheduled payment in the charge-off month. Hyundai and GM leave the charge-off month intact and blank it on the records after. Either way, the latest filing for a defaulted loan carries no payment, the division has nothing to divide, and the loan's income is null.

The field audit measured this. Across a deterministic sample of 44,180 loans with at least six filings, drawn from 13 issuers and scaled to a population of 31,698,436 such loans, the scheduled payment was blanked on 25.03% of sampled loans, which scales to about 6.0 million. On Bridgecrest, the payment was blanked on 1,180 of 3,373 sampled loans, and 796 of those blankings landed at or after charge-off, against 808 charged-off loans in the sample. The blanking and the default are the same event.

The consequence for the derived column was direct. It resolved on 55-70% of surviving loans and roughly 0-2.5% of charged-off ones. Any cut conditioned on income, whether a band on the dashboard or a filter in a query, selected the survivors and dropped the defaults. Nothing failed. The rows were absent from the denominator.

The fingerprint is a row with PTI present and income missing. PTI is filed and not blanked, so if the ratio is there and the quotient is not, the payment side of the division was blank on the filing that was used.

Which static fields are actually static

The same audit asked a broader question: of the fields a tape reader treats as fixed at origination, which ones stay fixed across a loan's filing history? The method compared the first non-null value to the last on every sampled loan, per field, per issuer.

Field Sampled loans with a value change Scaled loans at stake What the change is
Vehicle value amount 0.00% 0 Never moves at any of the 13 issuers
Original loan amount 0.00% 892 Fixed in practice
Obligor credit score 0.43% 148,848 Toyota re-pulls the score mid-life; every move is upward
Vehicle make 0.44% 289,913 Relabels, such as CHEVROLET to CHEVROLET TRUCKS
Vehicle type code 2.97% 348,969 Real codes replaced by 98/99 sentinels, or the reverse
Original loan term 2.97% 1,114,552 CarMax shortens by one month on a third of its book; Hyundai lengthens by one or two
PTI 2.81% 327,059 Unit-form flips and re-rounding, not a change in the ratio
Maturity date 17.47% 5,650,021 Extensions move it later; time-varying by design

Vehicle value amount is fixed without a single exception: zero changes across all 44,180 sampled loans at all 13 issuers. Taking it from the latest filing is correct.

Original loan term is not fixed. CarMax changes it on 33.36% of sampled loans, almost all by shortening it by exactly one month (73 to 72, 74 to 73, 61 to 60). Hyundai lengthens it by one or two months on 4.25% of its loans, and those 145 changes line up with the 142 loans whose original first payment date also moved, which reads as an extension written back into the original term. Under a latest-filing read, a third of CarMax loans carry a term that is not the contract's original term.

The obligor credit score at Toyota moves on 3.20% of sampled loans, and every move is upward to a plausible refreshed score (677 to 690, 703 to 740, 647 to 706). A latest-filing read of that field is a current score, not an origination score.

Some fields that look static are not. Maturity date moves on 17.47% of loans because extensions move it later (41.7% at Exeter, 38.5% at Drive). Geographic location changes on 2.5-5.9% of loans at every one of the 13 issuers, which is borrower relocation. Freezing either at its first value produces a different field, not a repair.

Ford is a separate case. On 62 of 2,199 sampled Ford loans, 2.8%, the last filing is a five-tag liquidation record and every static column is null together. That scales to 58,231 loans, and a first-non-null read recovers all of them.

The general finding is that nobody blanks an origination field selectively. That behaviour is unique to the scheduled payment, which is the one field the income derivation depended on.

PTI stays on the latest filing

If the payment needs its first-observed value, the consistent choice would be to take PTI first-observed too. The audit shows why not.

PTI's raw value does move, on 30.09% of BMW loans and 4.71% of Bridgecrest loans in the sample. But the movement is not economic. BMW switched from percent form to decimal form at its January 2025 filing (2.41 became 0.0241) and did the same to the interest rate in the same filing. WorldOmni made the same switch in February 2020. Bridgecrest and CarMax re-round (0.1621 to 0.1626). On every loan where PTI changed, the scheduled payment was unchanged: the median last-to-first payment ratio is exactly 1.0000 at Bridgecrest, CarMax and BMW. The ratio is frozen at origination and only its reported form moves.

That form is normalised by a per-filing rule keyed to the filing the value came from. Sourcing PTI from an earlier filing while applying the rule for the latest one produces a 100-times income error on the 264,824 BMW loans that span the January 2025 boundary. So PTI is taken from the latest filing, normalised by that filing's rule, and paired with the first positive payment. The two inputs come from different filings on purpose.

The rebuild: first positive payment over filed PTI

The new sourcing takes the first positive scheduled payment in the loan's monthly history and divides it by the normalised PTI. The value is fixed at origination and does not move when the loan's later filings change.

The dashboard already had a partial repair before this. When the latest-filing income was null, it fell back to the first filed payment over PTI. That fallback was not equivalent to the new sourcing: it took the first filed payment rather than the first positive one, so a loan whose first filing carried a zero got nothing, and it was floored at the issuer's first coverage month. The drill dimensions behind the snapshot, geographic and transition metrics had no fallback at all.

What moved

The gap between charged-off and surviving coverage, measured on the dashboard's income expression including its partial fallback, closes on every issuer where it was negative:

Issuer Charged-off loans CO coverage before CO coverage after Surviving before Surviving after Gap before (pp) Gap after (pp)
Carvana 49,822 41.15% 99.55% 74.69% 97.16% -33.54 +2.39
Ford 48,905 63.80% 63.79% 82.47% 65.99% -18.67 -2.20
Bridgecrest 60,016 87.42% 99.95% 98.65% 99.71% -11.23 +0.24
Exeter 339,905 94.36% 99.80% 98.34% 98.61% -3.98 +1.19

Ford's gap narrows for a different reason than the other three: its charged-off coverage is unchanged and its surviving coverage fell. That is the trade described below.

The income-band dimension on the drill surfaces moves the most, because it had no fallback. Loans leave Unknown and land in real bands:

Issuer Unknown before Unknown after
CarMax 1,603,263 228,189
Hyundai 782,931 42,329
Ally 532,059 87,385
GM 383,357 137,530
Carvana 283,012 15,826
Bridgecrest 84,078 854

Average income barely moves, because the fallback had already resolved most of those loans. The largest shift is Bridgecrest at -3.0% ($4,900 to $4,755), then Carvana -2.5%, Ford -2.2%, Nissan -2.1% and Toyota -1.7%.

What changes for an income-band screen

Which band the returning loans fall into matters for anyone who has cut performance by income band. Bridgecrest's band mix, before and after:

Band Before After Change
Under $2.5k 15,123 41,733 +176%
$2.5k-$5k 146,652 182,780 +25%
$5k-$7.5k 70,126 83,707 +19%
$7.5k-$10k 22,137 26,521 +20%
$10k-$15k 8,640 10,695 +24%
$15k+ 1,686 2,152 +28%
Unknown 84,078 854

Carvana shows the same pattern: the under-$2.5k band grows 133%, $2.5k-$5k grows 110%, and each band above grows less, down to 57% for $15k and over.

The loans that were missing were disproportionately the charged-off ones, and they return disproportionately to the lowest band. Any default or loss rate cut by income band on the old surface was a rate among survivors, and the band receiving the largest share of returning loans is the one whose rate moves most. I have not measured the change in loss rate per band in this pass; the direction follows from the coverage and the mix, and the size does not.

The trade

Six issuers lose income coverage under the new sourcing: Santander -35.7 points, Nissan -26.1, WorldOmni -25.6, Drive -18.5, Ford -16.2 and CarMax -5.6. Those loans filed a PTI but have no positive scheduled payment anywhere in their monthly history, so there is no first positive payment to divide.

They are almost entirely loans with no reporting history. Of the 1,825,182 Santander loans losing income, 1,820,230 (99.7%) have three or fewer reporting periods, and 1,243 are charged off. Ford: 518,922 losing, 518,887 (100.0%) with three or fewer periods, none charged off. CarMax: 179,412 losing, six charged off. A loan with no monthly rows has no balance, no delinquency and no loss, so its income being null cannot move a performance metric. It can only change an origination-mix count.

This is the defect reversed: income is lost on the surviving side rather than the charged-off side. The old derivation had an income for those loans only because it used the latest static payment over PTI, the same derivation with the survivorship problem in it, on loans where the payment was never blanked. Why 1.8 million Santander and 1.85 million Nissan loans sit on the static surface with a mean reporting-period count near zero is a separate question. This change exposes it; it does not create it.

Methodology

Source is SEC ABS-EE loan-level filings parsed into LoanTape's pipeline. The field audit (2026-08-08) is a deterministic hash sample of loans with at least six distinct filings, 2,200-3,900 per issuer, 44,180 in total, scaled to 31,698,436 loans across 13 issuers. At-stake counts are a lower bound because loans with two to five filings are outside the sample. Values were rounded before comparison, a zero or negative amount was treated as absent, and duplicate rows within one filing were removed first.

The income before/after (2026-08-09) is one read-only statement across 22 issuers. "Before" is the legacy expression pinned literally: latest-filing income, then the first-filed-payment fallback for the dashboard, and no fallback for the drill band. "After" is the first-observed income read through the shared plausibility band. Charged-off means a positive charge-off balance on the loan's lifecycle record.

The corrected sourcing is what the auto ABS dashboard and the explore view now read. The origination fields it draws on are the same ones I used to profile who gets a payment extension; original term, in particular, is one of the fields the audit says to take first-observed. The underlying filings are the ABS-EE dataset, and loan-level access is on the pricing page.