Understanding Remortgaging and How This Calculator Works
Remortgaging is the process of replacing your existing mortgage with a new one, often with a different lender. Homeowners typically remortgage to secure a better interest rate, switch to a different mortgage product, or raise additional funds. The primary goal is often to reduce monthly payments, shorten the loan term, or free up equity.
Why Remortgage?
Lower Interest Rates: As interest rates fall or your credit profile improves, you may be eligible for a more favourable rate, leading to significant savings.
End of Fixed-Term Deal: When your current mortgage deal (like a fixed-rate or tracker period) ends, you often revert to the lender's standard variable rate, which is usually higher. Remortgaging allows you to lock in a new, potentially lower, rate.
Accessing Equity: If the value of your property has increased, you might be able to borrow more than your current mortgage balance to fund home improvements, debt consolidation, or other major expenses.
Payment Stability: Moving from a variable rate to a fixed rate can provide certainty and stability in your monthly outgoings.
How the Remortgage Calculator Works
This calculator helps you estimate the potential financial impact of remortgaging by comparing your current mortgage's payment and total interest to a proposed new mortgage. It uses standard mortgage payment formulas to project these figures.
The Math Behind the Calculation:
The core of mortgage calculations is the amortization formula, which determines the fixed monthly payment (M) for a loan:
M = P [ i(1 + i)^n ] / [ (1 + i)^n – 1]
Where:
M = Monthly Payment
P = Principal Loan Amount (Current Mortgage Balance)
n = Total Number of Payments (Loan Term in Months)
Steps Performed by the Calculator:
Calculate Current Monthly Payment: Using the current mortgage balance, current annual interest rate, and current remaining term, the calculator determines your existing monthly payment.
Calculate Total Interest Paid (Current): It then calculates the total amount of interest you would pay over the remainder of your current mortgage term.
Calculate New Monthly Payment: Using the current mortgage balance (which becomes the principal for the new loan), the new annual interest rate, and the new loan term, it calculates the projected monthly payment for the remortgaged loan.
Factor in Fees: The calculator adds any estimated remortgage fees to the total cost of the new loan to provide a more realistic comparison.
Calculate Total Interest Paid (New): It calculates the total interest paid over the entire new loan term.
Determine Savings: The calculator compares the new estimated monthly payment to the current one to show potential monthly savings. It also estimates the total interest saved over the life of the new loan, considering the fees.
Important Considerations:
Fees: Always factor in all associated costs, such as arrangement fees, valuation fees, legal fees, and any early repayment charges on your current mortgage. These can significantly impact your overall savings.
Loan Term: Extending your loan term may lower your monthly payments but will likely result in paying more interest overall.
Early Repayment Charges (ERCs): Check if your current mortgage has any ERCs for leaving your deal early.
Product Availability: Ensure you meet the eligibility criteria for the new mortgage product you are considering.
This calculator provides an estimate based on the figures you enter. For precise figures and personalized advice, consult with a qualified mortgage advisor or your chosen lender.
function calculateMonthlyPayment(principal, annualRate, termInMonths) {
var monthlyRate = (annualRate / 100) / 12;
var n = termInMonths;
var P = principal;
if (monthlyRate <= 0 || n <= 0 || P <= 0) {
return 0; // Avoid division by zero or invalid calculations
}
var numerator = P * monthlyRate * Math.pow(1 + monthlyRate, n);
var denominator = Math.pow(1 + monthlyRate, n) – 1;
if (denominator === 0) {
return P / n; // Simplified for edge case where denominator is zero
}
return numerator / denominator;
}
function calculateTotalInterest(monthlyPayment, principal, termInMonths) {
var totalRepaid = monthlyPayment * termInMonths;
var totalInterest = totalRepaid – principal;
return totalInterest < 0 ? 0 : totalInterest;
}
function calculateRemortgage() {
var currentMortgageBalance = parseFloat(document.getElementById("currentMortgageBalance").value);
var currentInterestRate = parseFloat(document.getElementById("currentInterestRate").value);
var currentRemainingTermMonths = parseFloat(document.getElementById("currentRemainingTermMonths").value);
var newInterestRate = parseFloat(document.getElementById("newInterestRate").value);
var newLoanTermMonths = parseFloat(document.getElementById("newLoanTermMonths").value);
var remortgageFees = parseFloat(document.getElementById("remortgageFees").value);
var resultDiv = document.getElementById("result");
var monthlySavingsEl = document.getElementById("monthlySavings");
var newMonthlyPaymentEl = document.getElementById("newMonthlyPayment");
var totalInterestSavedEl = document.getElementById("totalInterestSaved");
// Input validation
if (isNaN(currentMortgageBalance) || currentMortgageBalance <= 0 ||
isNaN(currentInterestRate) || currentInterestRate <= 0 ||
isNaN(currentRemainingTermMonths) || currentRemainingTermMonths <= 0 ||
isNaN(newInterestRate) || newInterestRate <= 0 ||
isNaN(newLoanTermMonths) || newLoanTermMonths <= 0 ||
isNaN(remortgageFees) || remortgageFees 0 ? -remortgageFees : 0); // Subtract fees from interest savings
// Display results
monthlySavingsEl.textContent = monthlySavings >= 0 ? "£" + monthlySavings.toFixed(2) : "£ – " + Math.abs(monthlySavings).toFixed(2) + " (Higher)";
newMonthlyPaymentEl.textContent = "£" + newMonthlyPayment.toFixed(2);
totalInterestSavedEl.textContent = totalInterestSaved >= 0 ? "£" + totalInterestSaved.toFixed(2) : "£ – " + Math.abs(totalInterestSaved).toFixed(2) + " (More interest paid)";
resultDiv.style.display = "block";
}