← All Tools / HDB Loan Calculator

HDB Loan Calculator Singapore

Calculate monthly HDB or bank loan payments for your Singapore flat purchase.

HDB loan min 10%, Bank loan min 25%
HDB max 25 yrs, Bank max 30 yrs

HDB Loan vs Bank Loan in Singapore

When buying an HDB flat, you can choose between an HDB Concessionary Loan or a bank loan. The HDB loan offers stability with a fixed rate (currently 2.6% — set at 0.1% above CPF OA rate), requires only 10% down payment, and allows the down payment to be paid entirely from CPF. Bank loans typically have lower initial rates but are variable and require a 25% down payment (with 5% in cash).

Frequently Asked Questions

The HDB Concessionary Loan rate is pegged at 0.1% above the CPF Ordinary Account (OA) interest rate, currently 2.5% OA → HDB rate 2.6% p.a. This rate has remained stable for decades and is reviewed quarterly. Unlike bank loans, the HDB rate does not fluctuate with market interest rates.

Yes. CPF Ordinary Account (OA) savings can be used for: the 10% down payment (for HDB loans), monthly mortgage installments, and the purchase price up to the Valuation Limit (VL). Once you exceed the VL and Withdrawal Limit, further CPF usage is restricted. CPF usage accrues interest that must be refunded upon sale of the flat.

The maximum HDB loan tenure is 25 years, or until the borrower turns 65, whichever is shorter. Bank loans for HDB flats can go up to 30 years (or 65 years minus current age, or 75 minus if co-borrower). Shorter tenure = higher monthly payment but less total interest paid.

LTV (Loan-to-Value) ratio determines how much you can borrow. For HDB loans, the LTV is 80% (you borrow up to 80% of the flat price/value, whichever is lower). For bank loans, LTV is 75% for first property (25% down payment), with 5% of the down payment required in cash. Lower LTV means less borrowing and lower monthly payments.

Quick Facts

  • ✓ HDB loan at 2.6% p.a.
  • ✓ Custom bank loan rate
  • ✓ HDB vs Bank comparison
  • ✓ Total interest & payment
  • ✓ 100% free, browser-based