首套房预算卡壳
小张看中一套满五不唯一的二手房,总价 350 万。中介口头算的税费和网上查的差了一万多,他不敢签合同。用本工具输入总价、面积、房本年限、是否唯一,同时勾选「首套购房」选项,立刻算出契税 1%、个税 1%、增值税 0%,外加中介费 2.5%,总税费比中介报价少 1.2 万。他拿着打印的明细去谈判,中介当场改口。
签二手房合同前,最怕的是中介报的税费和最后过户时实缴对不上。这个工具把增值税、个税、契税和中介费拆成四项独立计算,每项都按房屋性质(满二/满五/非普通住宅)走对应税率,输入网签价和面积就出明细。计算全在浏览器里跑,数据不上传服务器——签约前当个快速复核的参考,比听中介口头算踏实。
小张看中一套满五不唯一的二手房,总价 350 万。中介口头算的税费和网上查的差了一万多,他不敢签合同。用本工具输入总价、面积、房本年限、是否唯一,同时勾选「首套购房」选项,立刻算出契税 1%、个税 1%、增值税 0%,外加中介费 2.5%,总税费比中介报价少 1.2 万。他拿着打印的明细去谈判,中介当场改口。
老陈要卖掉名下唯一住房换套大的,卖房 280 万、买房 420 万。中介说卖房免个税,但他不确定买房契税是否按二套算。用本工具分别输入两套房的参数:卖房选「满五唯一」→ 个税 0;买房选「二套」→ 契税 3%。两笔税费加起来 12.6 万,比预期少 4 万。他决定先卖后买,用差价覆盖装修。
买家小王看中一套房,中介报的中介费是总价 2.7%(约 8 万)。他用本工具先算清所有税费(契税 1.5% + 个税 1% + 增值税 5.3%),发现税费共约 22 万。然后他把中介费比例从 2.7% 降到 1.5%,算出总成本能省 3.6 万。谈判时他直接说「税费已经固定 22 万,中介费再降 1 个点我就签」,中介最终同意 1.8%。
刘女士继承了一套老房子,房本刚办下来,想卖掉变现。她听说继承房出售要交 20% 个税,但不确定是否适用。用本工具输入「非满五唯一」「非唯一住房」后,系统显示个税按差额 20% 征收,但因为她继承时未产生实际成本,差额就是总价,个税高达 30 万。她决定先出租两年,等满五唯一后再卖,个税降为 0。
王先生和妻子离婚,名下一套满二不唯一的共有房归女方。女方想立刻卖掉分钱,但担心税费。用本工具输入「非唯一」「满二年」,算出增值税 5.3%(约 9 万)、个税 1%(约 1.7 万)、契税 1.5%(约 2.5 万),总税费 13.2 万。两人协商后决定先办析产过户(免税),再由女方以唯一住房身份出售,总税费降到 4.2 万。
| 维度 | 本工具 | 竞品 A(链家税费计算器) | 传统方法(线下中介/自行计算) |
|---|---|---|---|
| 税费种类覆盖 | 增值税 + 个税 + 中介费 + 契税 + 附加税,含满五唯一/满二条件 | 仅显示契税、个税、增值税,不含中介费 | 需人工逐项查询政策,容易遗漏附加税或中介费 |
| 输入项复杂度 | 只需房屋面积、总价、房本年限、买方套数 | 需手动选择房屋性质、是否满五唯一等,选项较多 | 需自行判断房屋年限、面积、套数,并查找对应税率表 |
| 结果精度 | 按最新政策实时计算,含阶梯税率与免征条件 | 依赖内置规则,部分城市政策更新滞后 | 依赖个人对政策的理解,易算错免征条件或税率档位 |
| 隐私 | 纯前端计算,数据不离开浏览器 | 数据需上传至链家服务器 | 面对面沟通,隐私完全暴露给中介 |
| 速度 | 输入即出结果,无网络延迟 | 需加载页面 + 请求服务器,约 1-3 秒 | 人工查表 + 口算,通常 5-15 分钟 |
| 离线可用 | 支持,计算逻辑在本地 | 不支持,必须联网 | 完全离线,但依赖纸质资料 |
| 收费 | 免费 | 免费 | 中介费通常为成交价 1%-3% |
| 输入 | 输出 | 说明 |
|---|---|---|
| 房屋总价 300 万,面积 90 ㎡,首套房,房本满 5 年且为卖方唯一住房,买方首套,中介费率 1% | 契税:3 万(1%);增值税:0;个税:0;中介费:3 万;合计:6 万 | 常规:满五唯一免征增值税和个税,仅需缴纳契税和中介费,是二手房交易中最省税的典型场景 |
| 房屋总价 200 万,面积 120 ㎡,首套房,房本满 2 年不满 5 年,非卖方唯一住房,买方首套,中介费率 2% | 契税:2 万(1%);增值税:0(满 2 年免征);个税:2 万(1%);中介费:4 万;合计:8 万 | 常规:满二不满五且非唯一,需缴纳个税但免增值税,覆盖大多数普通二手房交易 |
| 房屋总价 500 万,面积 150 ㎡,二套房,房本不满 2 年,买方二套,中介费率 1.5% | 契税:15 万(3%);增值税:26.19 万(5.6%);个税:5 万(1%);中介费:7.5 万;合计:53.69 万 | 常规:不满 2 年全额征收增值税,二套房契税按 3% 征收,展示税费最高的组合之一 |
| 房屋总价 100 万,面积 80 ㎡,首套房,房本满 5 年且为卖方唯一住房,买方首套,中介费率 0.5% | 契税:1 万(1%);增值税:0;个税:0;中介费:0.5 万;合计:1.5 万 | 边界:极低总价 + 最低中介费率,验证工具在低基数下的计算精度(无舍入误差) |
| 房屋总价 0 元,面积 50 ㎡,首套房,房本满 5 年,买方首套,中介费率 1% | 提示:房屋总价不能为 0,请重新输入 | 边界:零总价输入,验证工具对非法输入的拦截机制,避免除零或 NaN 错误 |
| 房屋总价 99999999 元(约 1 亿),面积 1000 ㎡,首套房,房本满 5 年且唯一,买方首套,中介费率 3% | 契税:999999.99 元(1%);增值税:0;个税:0;中介费:2999999.97 元;合计:3999999.96 元 | 边界:超大总价(接近 1 亿),验证工具在长数字下的计算精度及金额格式化(无科学计数法溢出) |
| 房屋总价 300 万,面积 89 ㎡,首套房,房本满 2 年,非卖方唯一住房,买方首套,中介费率 1% | 契税:3 万(1%);增值税:0;个税:3 万(1%);中介费:3 万;合计:9 万 | 易错:面积 89 ㎡ 刚好卡在 90 ㎡ 以下,契税按 1% 而非 1.5%,用户常误以为 90 ㎡ 以下统一 1% 而忽略面积临界点 |
| 房屋总价 300 万,面积 90 ㎡,首套房,房本满 5 年且为卖方唯一住房,买方二套,中介费率 1% | 契税:9 万(3%);增值税:0;个税:0;中介费:3 万;合计:12 万 | 易错:卖方满五唯一但买方是二套,契税按 3% 而非 1%,用户常误以为二套契税也按面积分档,实际多数城市二套统一 3% |
1.计税价格误填为挂牌总价
房子挂牌 300 万,直接填 30000003000000 - 装修补偿款 10 万 = 2900000二手房税费的计税基础是网签价或核定价(取高),通常低于挂牌价。需扣除装修补偿、家电折价等非房屋本身价值部分。
2.增值税附加税漏填或合并计算
增值税算 5%,直接填 5% 完事增值税 5% + 城市维护建设税 7% × 增值税额 + 教育费附加 3% × 增值税额增值税附加(城建税、教育费附加)按增值税额的一定比例征收,不是直接加在增值税率上。城市级别不同,城建税率分 7%/5%/1%。
3.个税免征条件误判为满二唯一
房子满两年,直接选个税免征满五年且是家庭唯一住房,才免征个税;满两年只免增值税个税免征条件是「满五唯一」—— 房主持有满 5 年且是家庭唯一住房。满两年仅免增值税,个税仍需按 1% 或差额 20% 缴纳。
4.契税税率按面积一刀切
90 平以上一律填 3%首套 90 平以上 1.5%,二套 90 平以上 2%(部分城市 3%)契税税率与购房套数、面积、城市政策三重挂钩。首套 90 平以下 1%,90 平以上 1.5%;二套 90 平以下 1%,90 平以上 2%(北上广深除外)。
5.中介费按固定比例忽略议价空间
中介费率直接填 3%实际成交费率 2.2%(链家等大行可谈到 2.2%-2.5%,小中介更低)中介费并非法定固定比例,链家等头部中介挂牌 2.7% 但实际可议价到 2.2%-2.5%。按 3% 算会高估总费用 0.5-0.8 个百分点。
6.房屋年限计算起止点搞错
从拿到房产证日期算满五年以契税完税日期或房产证登记日期(孰先)为起点,到网签日期满五年满五年计算起点是契税缴纳日或房产证登记日(哪个早在先),不是拿到证那天。终点是网签日,不是过户日。差一个月可能多交 5.6% 增值税。
7.非普通住宅与普通住宅税率混淆
所有住宅统一用 1% 个税非普通住宅(面积>144平/容积率<1/总价超标)个税按差额 20% 计算非普通住宅个税不能按核定 1% 征收,必须按差额 20% 计算。差额 = 卖出价 - 买入价 - 合理费用。忽略此规则可能少算数万元。
8.土地出让金当作税费漏算
只算增值税个税契税中介费房改房/经济适用房需额外加土地出让金(通常 1% 或按地段评估价)土地出让金是房改房、经济适用房上市交易时的特殊费用,非商品房。一般按评估价或成交价的 1% 征收,部分城市按地段分级。
总税费 = 增值税 + 个税 + 中介费 + 契税
增值税房屋交易增值税,税率5.6%个税个人所得税,税率1%或差额20%中介费中介服务费,通常为成交价2%契税契税,首套1%-1.5%,二套3%成交价300万,满五唯一(免增值税、个税),首套90平以下:契税=300万×1%=3万;中介费=300万×2%=6万;总税费=0+0+6万+3万=9万。
6 种主流语言实现,复制即用:
def calc_ershoufang_tax(price, area, first_house, years, deed_tax_rate=0.01):
"""
二手房税费计算(北京简化版)
:param price: 网签价(万元)
:param area: 面积(m²)
:param first_house: 是否首套
:param years: 房本年限
:param deed_tax_rate: 契税税率(默认1%)
:return: dict
"""
vat = 0
if years < 2:
vat = price * 0.05 # 5% 增值税
personal_tax = 0
if years < 5:
personal_tax = price * 0.01 # 1% 个税
agency_fee = price * 0.027 # 2.7% 中介费
deed_tax = price * deed_tax_rate
if first_house and area <= 90:
deed_tax = price * 0.01
elif first_house and area > 90:
deed_tax = price * 0.015
else:
deed_tax = price * 0.03
total = vat + personal_tax + agency_fee + deed_tax
return {
'增值税': round(vat, 2),
'个税': round(personal_tax, 2),
'中介费': round(agency_fee, 2),
'契税': round(deed_tax, 2),
'总计': round(total, 2)
}
# 示例:网签价 300 万,面积 100m²,首套,满 3 年
result = calc_ershoufang_tax(300, 100, True, 3)
print(result)
# 输出:{'增值税': 0, '个税': 3.0, '中介费': 8.1, '契税': 4.5, '总计': 15.6}function calcErshoufangTax(price, area, firstHouse, years) {
// 二手房税费计算(通用简化版)
let vat = years < 2 ? price * 0.05 : 0;
let personalTax = years < 5 ? price * 0.01 : 0;
let agencyFee = price * 0.027;
let deedTax;
if (firstHouse && area <= 90) {
deedTax = price * 0.01;
} else if (firstHouse && area > 90) {
deedTax = price * 0.015;
} else {
deedTax = price * 0.03;
}
const total = vat + personalTax + agencyFee + deedTax;
return {
增值税: Math.round(vat * 100) / 100,
个税: Math.round(personalTax * 100) / 100,
中介费: Math.round(agencyFee * 100) / 100,
契税: Math.round(deedTax * 100) / 100,
总计: Math.round(total * 100) / 100
};
}
// 示例:网签价 300 万,面积 100m²,首套,满 3 年
console.log(calcErshoufangTax(300, 100, true, 3));
// 输出:{ 增值税: 0, 个税: 3, 中介费: 8.1, 契税: 4.5, 总计: 15.6 }package main
import "fmt"
type TaxResult struct {
VAT float64
PersonalTax float64
AgencyFee float64
DeedTax float64
Total float64
}
func calcTax(price, area float64, firstHouse bool, years int) TaxResult {
vat := 0.0
if years < 2 {
vat = price * 0.05
}
personalTax := 0.0
if years < 5 {
personalTax = price * 0.01
}
agencyFee := price * 0.027
var deedTax float64
if firstHouse && area <= 90 {
deedTax = price * 0.01
} else if firstHouse && area > 90 {
deedTax = price * 0.015
} else {
deedTax = price * 0.03
}
total := vat + personalTax + agencyFee + deedTax
return TaxResult{vat, personalTax, agencyFee, deedTax, total}
}
func main() {
result := calcTax(300, 100, true, 3)
fmt.Printf("%+v\n", result)
// 输出:{VAT:0 PersonalTax:3 AgencyFee:8.1 DeedTax:4.5 Total:15.6}
}import java.util.HashMap;
import java.util.Map;
public class TaxCalculator {
public static Map<String, Double> calcTax(double price, double area, boolean firstHouse, int years) {
double vat = years < 2 ? price * 0.05 : 0;
double personalTax = years < 5 ? price * 0.01 : 0;
double agencyFee = price * 0.027;
double deedTax;
if (firstHouse && area <= 90) {
deedTax = price * 0.01;
} else if (firstHouse && area > 90) {
deedTax = price * 0.015;
} else {
deedTax = price * 0.03;
}
double total = vat + personalTax + agencyFee + deedTax;
Map<String, Double> result = new HashMap<>();
result.put("增值税", Math.round(vat * 100.0) / 100.0);
result.put("个税", Math.round(personalTax * 100.0) / 100.0);
result.put("中介费", Math.round(agencyFee * 100.0) / 100.0);
result.put("契税", Math.round(deedTax * 100.0) / 100.0);
result.put("总计", Math.round(total * 100.0) / 100.0);
return result;
}
public static void main(String[] args) {
Map<String, Double> result = calcTax(300, 100, true, 3);
System.out.println(result);
// 输出:{增值税=0.0, 个税=3.0, 中介费=8.1, 契税=4.5, 总计=15.6}
}
}<?php
function calcErshoufangTax($price, $area, $firstHouse, $years) {
$vat = $years < 2 ? $price * 0.05 : 0;
$personalTax = $years < 5 ? $price * 0.01 : 0;
$agencyFee = $price * 0.027;
if ($firstHouse && $area <= 90) {
$deedTax = $price * 0.01;
} elseif ($firstHouse && $area > 90) {
$deedTax = $price * 0.015;
} else {
$deedTax = $price * 0.03;
}
$total = $vat + $personalTax + $agencyFee + $deedTax;
return [
'增值税' => round($vat, 2),
'个税' => round($personalTax, 2),
'中介费' => round($agencyFee, 2),
'契税' => round($deedTax, 2),
'总计' => round($total, 2)
];
}
// 示例:网签价 300 万,面积 100m²,首套,满 3 年
print_r(calcErshoufangTax(300, 100, true, 3));
// 输出:Array ( [增值税] => 0 [个税] => 3 [中介费] => 8.1 [契税] => 4.5 [总计] => 15.6 )
?>fn calc_tax(price: f64, area: f64, first_house: bool, years: i32) -> TaxResult {
let vat = if years < 2 { price * 0.05 } else { 0.0 };
let personal_tax = if years < 5 { price * 0.01 } else { 0.0 };
let agency_fee = price * 0.027;
let deed_tax = if first_house && area <= 90.0 {
price * 0.01
} else if first_house && area > 90.0 {
price * 0.015
} else {
price * 0.03
};
let total = vat + personal_tax + agency_fee + deed_tax;
TaxResult { vat, personal_tax, agency_fee, deed_tax, total }
}
#[derive(Debug)]
struct TaxResult {
vat: f64,
personal_tax: f64,
agency_fee: f64,
deed_tax: f64,
total: f64,
}
fn main() {
let result = calc_tax(300.0, 100.0, true, 3);
println!("{:?}", result);
// 输出:TaxResult { vat: 0.0, personal_tax: 3.0, agency_fee: 8.1, deed_tax: 4.5, total: 15.6 }
}能。本工具在输入区设有「房屋年限」和「是否唯一」两个下拉选项,分别对应「满五」「满二」「不满二」和「唯一」「非唯一」组合。系统会自动根据组合判断增值税、个税的免征或减征条件。比如满五唯一免征个税和增值税;满二不唯一免征增值税但照收个税。输入时请按房产证或契税凭证上的日期选择年限,不要凭感觉填。
本工具的中介费默认按行业常见费率(买卖双方各1%,合计2%)计算,并在输入框旁标注了「可自定义」说明。你可以在费率输入栏里直接改成实际谈好的点数(如1.5%或0.8%),系统会按新费率重算。注意:部分城市有政府指导价上限(如北京不超过2%),但实际成交中链家、贝壳等品牌费率可能不同,建议以签合同前确认的费率为准。
常见原因有两个。第一,本工具按首套房计算契税(1%-1.5%-3%三档,取决于面积),如果你实际是二套房,契税税率会跳到3%(绝大多数城市),请确认输入时是否勾选了「首套房」。第二,部分城市(如上海、广州)对普通住宅和非普通住宅的契税认定有附加条件(如总价上限),本工具未包含这类地方细则,若你的房子被认定为非普通住宅,实际税率可能更高。建议算完后对照当地房管局公示的契税税率表复核。
可以算,但需注意两点。第一,期房在交房前无法确定「房屋年限」,建议按契税完税日期或房产证登记日期的预期时间估算,年限从「缴契税之日」起算,不是从签合同或贷款获批日起算。第二,期房的网签价通常就是合同价,但最终办证时房管局可能会重新核定评估价(若低于最低指导价),此时计税基数会变,本工具无法预知该核定值。建议用合同价先算个参考值,实际以办证时税单为准。
税法规定个税由卖方(出售方)缴纳,税率为1%(全额)或20%(差额),具体看当地执行方式。但二手房交易中,卖方往往要求「净得价」,实际税费转嫁给了买方——这是市场惯例,不是法律规定。本工具在结果页同时显示「法定承担方」和「实际承担方」两列,方便你了解各税种名义上归谁交、实际上谁掏钱。谈判时建议以此为依据,避免被中介模糊说辞误导。
先检查两个最常见问题:第一,单价或总价输入框里是否不小心带了逗号或空格(如输入'1,200,000'),本工具只接受纯数字,请去掉千分位逗号。第二,房屋年限下拉菜单是否漏选?如果选了「请选择」默认项,系统无法判断增值税免征条件,会卡住不输出。此外,个别浏览器(如旧版Safari)对前端计算脚本兼容性不佳,建议换Chrome或Edge最新版重试。
核心区别在于两点。第一,本工具不绑定房源,你手动输入面积、总价、年限和唯一性即可算,适合看中多套房对比的情况;贝壳的税费计算器必须关联具体房源页,且部分数据(如评估价)由平台预填,你无法自由修改。第二,本工具中介费率可自定义,且结果页细分各税种明细(增值税、个税、契税、中介费四项分开列),贝壳的通常只给一个总税费,不拆中介费。如果你在砍中介费或对比不同房源,本工具更灵活。
按高者计税。房管局会对比网签价和最低指导价(又称核定价或过户指导价),取较大值作为计税基数。所以如果你的网签价是500万,高于400万指导价,就按500万算;如果你为了避税做低网签价到300万(低于指导价),房管局会强制按400万核定。本工具输入的是「网签价」字段,如果你打算做低网签,建议手动在输入框里填入指导价而非实际成交价,才能得到准确的预估税费。
隐私保证所有计算与处理均在你的浏览器本地完成,输入数据不会上传服务器,也不会保存或共享。