Methodology
Every formula is open, so you can check it yourself
A financial tool should not be a black box. All of the arithmetic lives in a single file and is covered by forty-three automated tests checked against hand calculations.
The rate applied to each month
For month m, if m is at most the number of promotional months, the promotional rate applies. Otherwise it is base rate + margin, plus the adjustment when you are looking at the stress test. The monthly rate is the annual rate divided by twelve.
This is a simplification. Banks in Vietnam are required by Circular 14/2017/TT-NHNN to charge interest by the day on a 365-day year, so each month’s actual interest depends on how many days it has: in a 31-day month it is slightly higher than the figure shown here, in February noticeably lower. Over a year the two agree closely; over a twenty-year term the daily method costs about 0.06% more interest, almost all of it from leap days. The tool does not model this because it does not know your disbursement date. The difference is worked through in the 365-day rule.
Three ways of charging interest
| Method | Formula |
|---|---|
| Equal principal | Principal per period is the amount borrowed divided by the number of amortising months. Interest is the opening balance times the monthly rate. |
| Equal instalments | The instalment is recomputed every time the rate changes, from the current balance and the months remaining, using the standard annuity formula. This is exactly what the bank does when the rate rolls off the promotion onto the floating rate. |
| Flat on original principal | Interest is always the original amount borrowed times the monthly rate, and does not fall with the balance. |
Principal grace period
During the grace period you pay interest on the balance only. The principal is then spread evenly across the months remaining after the grace period ends, so the payment afterwards is markedly higher. The tool detects this jump separately and reports it alongside the jump caused by the promotion ending, because the two often fall in the same month and a single figure would hide how much each contributes.
Early repayment fee
Charged on a tier per contract year, defaulting to 3% in year one, 2% in year two, 1.5% in year three, 1% in year four, 0.5% in year five, and nothing from year six. You can edit all five tiers to match the fee schedule in your own contract. The fee applies to the amount repaid early, not to the original balance.
Clawback of the discounted interest
Many contracts state that if you settle within a certain number of opening months, then on top of the early repayment fee you must return the interest the bank discounted. The tool estimates this as the sum, across each promotional month, of that month’s balance times the gap between the floating rate and the promotional rate, divided by twelve.
Every bank writes this clause differently; some compute it from the committed years times the amount borrowed. The figure here is a reasonable estimate to show you the scale of the problem, not a substitute for the wording in your contract.
The effective rate
This is the most important part, and the part no bank’s own loan calculator gives you. How it works:
- The cash flow at drawdown is the amount borrowed less loan insurance and arrangement fees. That is the money you actually receive.
- Every month after that is an outflow, equal to what you pay that month.
- If you settle early, the outstanding balance, the penalty and the clawback are added to the final month.
- Solve for the monthly rate that makes the present value of the whole set of cash flows zero, by two hundred rounds of bisection, then annualise it by compounding.
The result is a single number that answers this question: if this loan had one fixed rate for the whole term and no fees at all, what would that rate have to be for you to pay exactly what you are paying? That is what makes two completely different structures directly comparable.
The burden on your income
The ratio is calculated on the required payment, principal plus interest, and excludes voluntary overpayments, because those can be stopped when times get hard and so are not a risk. Income grows year by year if you enter a growth rate. The suggested emergency fund is six months of payments at the peak.
Automated tests
The engine ships with forty-three tests, run with npm test, which check:
- Cash flow conservation: total out equals principal plus interest when there are no fees.
- The balance reaches exactly 0 in the final month, for all three methods and under a floating rate.
- The annuity formula matches a hand calculation to the dong.
- The effective rate of a 12% a year loan with no fees comes back as exactly 12.6825%, the compounded value of 1% per month.
- The fee tiers and the clawback match hand calculations.
- Edge cases: a one-month term, a promotion longer than the term, a grace period nearly as long as the term, and an empty loan.
What this tool does not do
- It does not forecast future rates. It lets you test scenarios; it will not guess for you.
- It does not cover taxes, building management fees, maintenance charges or property price movements.
- It does not assess whether you would be approved, since every bank has its own policy.
- It is not financial advice. It is a tool for asking the right questions.