Missing and unreported data
Real loan books have holes. A month is missing from the export, a loan was already ten years old when your data begins, a column is blank on half the rows. Vintage does not fill those holes with made-up figures. It keeps what you reported, sets aside what it cannot use, counts what it set aside, and tells you what would bring it back.
One rule decides every case on this page:
A month may be dropped from a measure only if that month’s events can be dropped with it.
Two failures sit on either side of that rule. Dropping a month whose loss Vintage still counts would move a real event to a made-up age. Keeping a month whose starting balance Vintage had to invent would put a fabricated dollar in a denominator. Every rule below follows from avoiding both.
A blank is unknown, never zero
Section titled “A blank is unknown, never zero”A blank cell, or a placeholder such as N/A, NULL or a lone dash, means “no value”. It is never
read as zero, and it never counts as an event.
- A later blank never clears a value you reported earlier. If one month’s file leaves a loan’s Interest Rate blank, the rate from earlier stays.
- A value Vintage cannot read as a number, such as
Pendingin an amount column, is treated as blank for that field. The rest of the column is still used. - A number too long to store faithfully (15 or more digits before the decimal point in a numeric field) is treated as no value, counted, and shown to you. It is never rounded into a different number.
- A blank status or flag cell is not classified and carries no signal. What a blank means for your book is something you tell Vintage, not something it assumes.
The full parsing rules, with worked examples, are on File requirements and parsing rules.
A gap between two reported months
Section titled “A gap between two reported months”Suppose a loan is reported in January and February, missing from March and April, and reported again in May. The loan was on your book the whole time, and anything that happened to it in March or April still shows up in what you reported in May. So Vintage keeps the loan in across the gap.
- The balance is carried flat. March and April carry February’s reported balance unchanged. Vintage assumes no payment, no amortization and no prepayment across the gap. It reconstructs nothing.
- Credit loss keeps the loan. The loan stays in the loss curve’s denominators through March and April at that flat balance. A charge-off that happened in the gap is visible in May’s report and books there.
- Prepayment refuses those months. A speed needs a starting balance that was actually observed: a snapshot in the calendar month before, or the loan’s origination month when both its Origination Date and Original Loan Amount were provided. March and April have none, and neither does May, whose starting balance would be April’s. All three are excluded months for prepayment: neither the prepaid dollars nor the balance enter the speed. A prepayment amount reported on one of those months is set aside and counted, never dropped in silence.
If a loan’s ending lands in a month you did not report, it is not lost either. It books on the next month you did report, and failing that on the loan’s last reported month. See How a loan’s ending is decided.
Months before a loan first appears
Section titled “Months before a loan first appears”Your data begins in some month. Many loans were already on the book by then, some for years. Vintage measures such a loan from its first observed month onward, and no earlier. It does not synthesize the loan’s early life: not its balances, and therefore not the ages it would have passed through.
Every such loan has an observable-age floor: its age in the month Vintage first saw it. A loan originated in January 2018 and first reported in January 2021 has a floor of 36 months. Ages below the floor are unobserved, not zero-risk, so nothing is booked there and the loan adds nothing to those ages’ denominators.
Three consequences follow:
- When the whole cohort entered mid-life, the earliest ages of the loss curve cannot be measured for that slice at all, and they are left dashed rather than drawn as zero.
- In Pricing, the projection’s first months book nothing. If every loan in the cohort entered the data at least N months into its life, the priced loan’s projection has no measured loss, default or prepayment for its first N months. Those zeros are disclosed and kept, never filled in, and a 0.00% projected loss on such a cohort is not presented as a measured zero. See Loan pricing.
- The loan’s first observed month is not a prepayment month. Its starting balance was never seen.
The original amount of a seasoned loan
Section titled “The original amount of a seasoned loan”A loan already seasoned when your data begins has no original balance Vintage can stand behind: its first reported balance is what was left after years of paying down, not what you lent. Unless you supply an Original Loan Amount, the loan is held out of the loss curve measured as a percent of original balance, and counted. Its losses still count in every rate measured against the outstanding balance, which needs no original amount. See Credit loss measurement.
Loans in your earliest month with no origination date
Section titled “Loans in your earliest month with no origination date”A loan present in your organization’s earliest snapshot month, with no Origination Date, cannot be aged at all: nothing distinguishes one that was originated that month from one that was years into its life. It is excluded from the age-indexed curves and counted. A two-column file of Loan ID and Origination Date brings these loans in. The full rule is on Origination and term.
A row dated before its loan was originated
Section titled “A row dated before its loan was originated”Occasionally a snapshot row carries a month earlier than the loan’s own Origination Date. That row has no loan age to place it at. Placing it at age 0 would pile balances that predate the loan onto the youngest, thinnest part of every curve.
So the row is set aside: it is not used, and it is counted. The count is in rows (loan-months), not loans, so it cannot be added to the loan counts. If every row of a loan is set aside this way, that is why the loan is not in the curves.
A running total on a loan that predates your data
Section titled “A running total on a loan that predates your data”Some amount columns report a life-to-date running total rather than each month’s activity, and you declare which when you map them (see Declaring formats). Vintage converts a running total into monthly increments before any measurement.
For a loan whose Origination Date is earlier than its first reported month, the first value in a running-total column is a balance brought forward: activity that happened where Vintage could not see it. Booking it in the first month Vintage happens to observe would record a real loss at an invented age. So the first value sets the baseline and books nothing. Every later increase books its true increment.
For example, a charge-off column declared as a running total reads $4,000 on a seasoned loan’s first reported row, then $4,000, then $5,500. Vintage books nothing in the first two months and $1,500 in the third.
A loan that arrived already closed
Section titled “A loan that arrived already closed”A loan that originated before your data begins, and whose ending (a charge-off, payoff or exit) is already on the very first row Vintage sees, was never observed open. Vintage books no event and no loss for it, holds it out of the curves, and counts it. A snapshot from before it closed would bring it in. On the Portfolio screen it reads its ending with a faint “Closed before data begins” beneath it. See Charge-offs and recoveries.
When a field a measure needs is missing
Section titled “When a field a measure needs is missing”When a loan lacks a field one measure needs, it is excluded from that measure only. It still counts everywhere else it can. Vintage counts each exclusion under its own reason and names what would unlock it.
| What is missing | What happens | What brings the loan in |
|---|---|---|
| A snapshot row with a readable Snapshot Month and a Current Balance (a reported 0 counts as a balance) | Out of every curve | A snapshot file carrying both fields for the loan |
| Term (Months) and Maturity Date | Out of every curve | Either field |
| Origination Date, for a loan in your earliest month | Out of the age-indexed curves | A Loan ID + Origination Date file |
| A trustworthy original amount | Out of the percent-of-original loss curve only | Original Loan Amount |
| A charge-off amount, where only a flag or status marks the charge-off | Out of the loss curve; still in prepayment | Net Charge-Off Amount, Charge-Off Amount, or a charge-off row on a typed ledger |
| A schedule basis (a reported scheduled-principal figure, or scheduled and actual payment totals) | Out of prepayment speeds; still in credit loss | Scheduled Principal Due or Paid, or Scheduled and Actual Payment Amount |
| A partial-prepayment figure, with a schedule basis present | Speeds reflect full payoffs only | Partial Prepayment Amount, Unscheduled Principal Amount, or Actual Principal Paid |
| A classification for a status or flag value | That value signals nothing | Classify it on the Fields screen |
| A date that fits the column’s declared format | Counted as wrong format, read as no value | Correct the declared date format; once the upload is finalized, upload the file again |
Before you finalize an upload, the Review states how many loans are held out of the curves, for each reason, and what would bring them in (see Reviewing before you finalize). When a segment on the Modeling screen has no measurable loan at all, the screen names the reason from these same counts.
When no charge-off amount exists anywhere
Section titled “When no charge-off amount exists anywhere”If no charge-off amount is supplied anywhere in your accepted uploads, credit loss is unmeasured, not zero. The lifetime-loss figure shows a dash rather than 0%, and Pricing leaves the credit-loss line out of the required rate entirely rather than pricing it at zero. A book with a charge-off feed that genuinely lost nothing is the opposite case, and Vintage says so in those words: no charge-off dollars measured in this cohort.