房贷还清计算器

把剩余本金、年利率和每月还款额填进去,立刻得到这笔贷款还要还多少个月、折合多少年,以及一共要付多少利息。默认示例是本金 220000 元、年利率 5.5%、月供 1800 元,打开即可看到结果。

还剩多少没还,例如 220000
年化利率,例如 5.5 表示 5.5%
每月还款额,必须大于每月利息

提示:三个输入框都是单行控件,裸按 Enter 立即计算;结果区用 role="alert" 标出,方便读屏软件播报。

固定本金 220000 元、年利率 5.5% 时,不同月供的对照

月供(元)月数年数总利息(元)

本表以本金 220000 元、年利率 5.5% 为固定条件,仅展示月供变化对还清期数的影响;换成你自己的本金与利率,请用上方计算器实算。

使用方法

  1. 在「剩余本金 b」填还剩多少没还(默认 220000,单位元,必须是正数)。逾期罚息、提前还款后的余额都可以填进来。
  2. 在「年利率 r」填年化利率(默认 5.5,单位 %,例如 5.5 表示百分之五点五)。公积金与商贷组合时,先换算成年化单值再填。
  3. 在「月供 p」填每月还款额(默认 1800,单位元)。这是你实际每月在还的钱,必须大于每月产生的利息。
  4. 点「计算还清」或裸按 Enter,结果区立刻显示还清月数(保留 1 位小数)、折合年数(保留 2 位)与累计总利息。
  5. 点「复制结果」把本次结论存到剪贴板;「导出对照表 CSV」把 14 行月供对照下载成带 BOM 的表格,Excel 打开不乱码。

这个工具能解决什么问题

一是把「还要还多久」从感觉变成具体月数。很多房奴只知道月供,却不清楚按当前节奏还要还多少期。房贷还清计算器把剩余本金、利率、月供压成一个可比的期数,方便你规划提前还款或估算结清时点。

二是发现「月供其实在填坑」的陷阱。若月供只比每月利息高一丁点,本金偿还极慢,还清要好几十年;若月供低于利息,本金永远不动甚至越欠越多。本工具会在月供不足以覆盖利息时直接提示「永远无法还清」,避免你误以为自己正在还本金。

三是给出提前还款的量化收益。把拟提前还掉的一笔钱从本金里扣掉再算,期数和总利息会明显下降,你能直观看到「现在多还 5 万,未来少付多少利息」。这比拍脑袋决定是否提前还款靠谱得多。

本页不做这些事:不区分等额本金与等额本息两种还款方式的早期差异(本公式对应等额本息的期数反推);不计算含罚息、保险、税费的综合成本;也不预测利率未来变动。它只回答「在利率与月供不变的前提下,按当前本金还要还多少期」。

计算原理:等额本息期数公式与变量说明

核心公式:设月利率 m = r / 1200(把「年化百分比」先转成「月小数」),则还清月数 n = -ln(1 - b × m / p) / ln(1 + m)。其中 b 是剩余本金,r 是年化利率(%),p 是月供。这个公式来自等额本息「每月还款额固定」的现值求和,对 n 反解得到。

为什么用对数:等额本息每期还款 p 的现值之和等于本金 b,写成求和式后用等比数列求和,再对 n 取对数即可得到闭式解。页面用 JavaScript 的 Math.log 直接算,避免迭代逼近,结果稳定且瞬间出值。

总利息怎么来:在 n 为有限值时,总还款是 p × n,减去本金 b 就是总利息,即 总利息 = p × n - b。例如默认示例算出 n ≈ 179.6,则总利息 ≈ 1800 × 179.6 - 220000 ≈ 103190 元。

失效条件:当 p ≤ b × m(月供不超过每月利息)时,分母里的 1 - b×m/p 会变成 0 或负数,对负数取对数无意义,也对应「本金永远还不清」的现实。此时页面不去算一个天马行空的期数,而是明确提示永远无法还清。

完整示例(默认输入实测)

示例条件与页面默认值完全一致:剩余本金 b = 220000 元,年利率 r = 5.5%,月供 p = 1800 元。逐项核对:

这组数字与上方结果区、对照表首行(月供 1800 对应 179.6 个月)完全一致;把月供调到 1500,期数会大幅拉长,调到 2800 则会明显缩短,皆可在对照表里查看。

输入范围与对照表

对照表里的「总利息」是用该行的月供按前述公式算出的累计利息,直接告诉你「每月多还一点,到底能省多少年利息」,比干看月供数字更直观。

结果边界与舍入

常见问题

为什么提示「永远无法还清」?

当你的月供 p 小于或等于剩余本金按月利率产生的利息(b×m)时,每个月还的钱连利息都不够,本金丝毫不动甚至变多,数学上公式的 ln 内部出现非正数而失效。这不是程序 bug,而是真实债务陷阱的预警:请提高月供、申请展期或协商利率。

结果里的月数为什么是小数?

等额本息下,最后一期往往只需还比月供略少的金额来结清尾差,所以「还清所需期数」是连续值。页面保留 1 位小数展示,例如 179.6 个月表示第 180 期只还一小部分即结清,实际你仍按整数月操作。

总利息和「月供×月数−本金」对不上?

因为月数展示时被四舍五入到了 1 位小数,而总利息用的是未舍入的原始 n 计算(p×n−b)。用展示值 179.6 反算会差几元,属正常现象;页面结果区给出的是精确链路下的整数利息。

等额本金和等额本息能用这个算吗?

本公式反推的是「等额本息、月供固定」的还清期数。若你用的是等额本金(每月本金固定、利息递减、月供逐月下降),则不能用固定 p 直接套;请取当前实际月供或改用等额本息口径来估算。

我想算提前还款后的新期数,怎么填?

把提前还款后真正的剩余本金填进 b,再把新的月供填进 p 即可。例如原剩 220000、提前还 5 万后剩 170000,就填 b=170000,页面会给出更短的期数与更少的总利息。

公积金和商贷组合贷怎么处理?

本工具一次只接受一组本金、利率、月供。组合贷可先按各自余额与利率分别估算,或把两笔合并成「加权平均利率 + 总本金 + 总月供」后再填。注意加权只是近似,精确结清仍需分别核算。

利率填 5.5 还是 0.055?

填 5.5。本页约定 r 为百分比数值(即「百分之五点五」),内部会自动除以 1200 转成月小数。若误填 0.055,会被当成 0.055%,算出的期数会离谱地长,请确认单位。

结果会被上传或保存吗?

不会。所有计算只在你当前浏览器里完成,页面不发起任何网络请求,也不写 Cookie 或 localStorage。你在开发者工具的 Network 面板里连点几次「计算还清」,面板始终是空的。

相关工具