Vintage has few hard limits, and it states each one at the moment it applies, with what to do next. They are collected here so you can plan around them: what each limit is, where you meet it, and how to work with it. Each links to the page that explains the rule in full.
Uploading files
Section titled “Uploading files”| Limit | Value | What happens, and what to do |
|---|---|---|
| Accepted file types | CSV and Excel .xlsx | Anything else, including older Excel .xls, is refused when you choose it. Save as .xlsx or export to CSV. |
| One Excel file | 50 MB | Refused, with guidance to export to CSV. |
| Excel files in one upload | 5 | Refused, with guidance to export to CSV or split into separate uploads. |
| Excel across one upload | 100 MB | Refused, with the same guidance. |
| One CSV file | About 2 GB | Refused while it is being added, with a message saying so. CSV has no other size limit. |
| Sheets read from a workbook | The first sheet only | The sheet read and the number left out are named. Export the sheet you want on its own. |
| Columns within one file group (Snapshot, Origination, or Transaction files) | Identical column names, in any order, for every file in the group | A mismatched file blocks Continue until you remove or fix it. |
| Column headings | Distinct and non-blank | A file with a duplicated or blank heading cannot continue. Rename the column in your export. |
| Rows | Same number of cells as the heading row | A mismatched row is skipped and counted. Quote values that contain commas, or fix the export. |
| Required Standard fields | Loan ID only | A file with no included column mapped to Loan ID cannot continue. |
| Distinct values in a status, flag, or Transaction Type column | 50 | A column with more than 50 is flagged as likely mapped to the wrong field, instead of showing an unusable list. Check that it is really a status, flag, or type column, or map it elsewhere. |
| Numeric values | Up to 14 digits before the decimal point; six decimal places | A value with 15 or more digits before the decimal point is treated as no value and counted. Values needing more than six decimal places are rounded. |
| Drafts | No expiry | A draft stays resumable from Upload History until you finalize or delete it. |
See File requirements and parsing rules and Choosing files.
The Review verdict
Section titled “The Review verdict”| Limit | Value | What happens |
|---|---|---|
| Ready with gaps threshold | Any modeled output under 50% of loans ready | The verdict turns amber. You can still finalize. |
| Blocked | No usable data, beyond identifiers, tied to a Loan ID | The upload cannot be finalized. |
See Reviewing before you finalize.
Modeling a segment
Section titled “Modeling a segment”The segment size maximum
Section titled “The segment size maximum”The Modeling screen analyzes a segment, the slice of your portfolio you define with the Segment Builder, up to a maximum number of loans. That maximum belongs to your organization; it is not one number shared by every customer.
What sets it is how many months of history your data spans: a deeper history gets a lower loan maximum, and your maximum moves only when your own history gets deeper. Past it, the screen shows Segment is too large, states your segment’s loan count and your organization’s maximum, and asks you to narrow the segment. See The Modeling screen.
Other modeling thresholds
Section titled “Other modeling thresholds”| Limit | Value | What happens |
|---|---|---|
| Thin history (credit loss) | Five or fewer loans backing the deepest age the loss curve draws as observed, or a cohort (the loans in your segment) on the WARM (weighted-average remaining maturity) fallback | The lifetime-loss headline carries thin history, directional only. The figure is still shown. |
| Thin history (prepayment) | Fewer than 10 loans measured at the last age the speed chart draws as observed | The headline speed carries thin history, directional only. The figure is still shown. |
| Prepayment speed | Two consecutive monthly snapshots | A cohort seen in only one month has no speed yet and shows a dash instead of a figure. A snapshot for the next month resolves it. |
| Inferred payoff buffer | The final three months of a loan’s term | A loan that disappears from your file within its last three months is treated as matured on schedule, not as a prepayment. |
| A segment count that takes too long | No fixed value | Vintage retries once quietly, then says the count took too long and asks you to narrow the segment. |
| Selecting every value of a very large checklist | No fixed value | When the full set is too large to apply safely, Vintage asks you to narrow your search rather than applying a shortened list. |
Pricing inputs
Section titled “Pricing inputs”These inputs are clamped. A figure typed past a limit changes to the limit, and a short line under the field names it, such as “Capped at 50%, the maximum.” The box and every result always show the same number.
| Input | Limit |
|---|---|
| Proposed rate | 0% to 50% |
| Origination cost, annual servicing cost, upfront fees, annual recurring fees | At most 100% of the loan amount when entered as a percentage |
| Loan amount | Cannot be negative |
| Term | 1 to 600 months, in whole months |
| Target ROA | 0% to 20% |
| Capital allocation, target ROE | 0% to 100% |
| Funding (FTP) curve (funds-transfer pricing: your cost of funds by term) | Required before any pricing result appears. Months past the curve’s longest term are funded at its longest rate, held flat, and the screen says so. |
See Pricing a loan.
Codes, links, and sessions
Section titled “Codes, links, and sessions”| Limit | Value |
|---|---|
| Email verification code | 6 digits. Expires after a short window; wrong attempts are limited. |
| Resend code | Available again 30 seconds after each send |
| Password reset link | Expires after one hour |
| Session | 60 days, extended by any use |
| New-address code when changing your email | Cannot be resent on its own; start the change over |
Retention after a delete
Section titled “Retention after a delete”| Limit | Value |
|---|---|
| Cell values of deleted uploads | Purged 90 days after deletion |