You know the moment. A payoff quote is coming together and someone asks for the yield maintenance number. You open an old model, check the note, second guess the discount rate, and wonder if the floor is binding. It is routine work, but it carries real exposure. A small miss on inputs or timing can swing the answer, and it is rarely obvious where the mistake sits. Underwriting ~5 min to run Calculate Yield Maintenance Penalty Vic prompt Use Vic to calculate the yield maintenance penalty on this loan with the provided loan terms, prepayment date, and any stated spread and floor. Purpose A manual calculation takes roughly 30 minutes and is easy to misstate. This produces the same result in about 5 minutes with every assumption visible for review. Inputs Loan Terms Required Prepayment Date Required Discount Spread Optional Minimum Penalty Floor Optional Outputs A clear statement of the dollar penalty and its percentage of the balance, every input documented, the floor comparison, and any required sensitivity. Time saved Turns roughly 30 minutes of manual work into about 5 minutes. How it works Give Vic the core facts from the note and your payoff timing. That includes the loan terms, the prepayment date, and, if the document says so, the discount spread and any minimum penalty floor. If the spread is not stated, you can have Vic assume one. Run it as: Use Vic to calculate the yield maintenance penalty on this loan with the provided loan terms, prepayment date, and any stated spread and floor. Under the hood, the task uses the standard yield maintenance formula. It projects the remaining scheduled payments, discounts them at the term matched Treasury plus the stated or assumed spread, and subtracts the outstanding balance. It then checks that result against the contractual minimum floor and calls which one controls. The output is built for review, not just a single number. You get the penalty in dollars and as a percentage of the current balance. Every input used in the calculation is listed so you can trace the result back to the document. The floor comparison is explicit, with a clear call on whether the formula or the minimum drives the outcome. If a spread has to be assumed, Vic includes a short sensitivity table around that input. This is where the task pays off. Instead of arguing over a single estimate, you can show how the penalty moves as the spread shifts, which is usually the real question in a negotiation. There is nothing exotic here. It is the same math you would run in Excel. The difference is discipline and speed. The task enforces a clean set of inputs, keeps the discounting consistent with the term of the remaining cash flows, and documents each step so another person can check it without reopening your model. For underwriters, this cuts a common source of last minute memo revisions. For asset managers, it makes payoff scenarios easier to compare over time. For debt originators, it sharpens conversations with borrowers who want to understand what a refinance or sale will cost today versus six months from now. A quick aside: if your shop treats the spread loosely, the sensitivity output will make that visible. That is a good thing. Yield maintenance disputes often come down to that single input, and putting it on the page keeps everyone honest. The net effect is simple. You spend less time rebuilding a familiar calculation and more time deciding what to do with it. Five minutes, clear inputs, and a number you can stand behind.