计算工具 · 房产税务

装修预算

面积 + 风格档位→总预算分项

本地处理 · 不上传 免费 · 无需登录 无次数限制 累计 52 次使用
面积 + 档次 + 风格 → 总预算与分项明细 · 各项可逐项调整
房屋面积100 ㎡
装修按套内面积计 · 套内 ≈ 建筑 × 80%(得房率 0.8)
装修档次中档
每平米单价可微调
元/㎡
装修风格现代 ×1.00
房型3室2厅1厨2卫
卧室/客厅
卫生间
厨卫数量影响厨卫预算占比 · 卫生间越多防水/洁具开支越高
承包方式影响施工合同口径
全包 = 施工方包工包料,总投入即合同额
输入面积与档次即时估算 · 全程本地运算不上传
计算说明 / 口径与免责

总预算 = 套内面积 × 每平米单价 × 风格系数。建筑面积按得房率 0.8 折算为套内面积参与计算。每平米造价 = 总预算 ÷ 套内面积。

分项明细:基础工程 / 主材 / 厨卫 / 软装 / 设计管理税费,各项 = 总预算 × 占比,占比之和恒为 100%,故分项之和恒等于总预算。卫生间数量越多,厨卫占比自动上调(其余项等比归一)。

承包方式:全包=施工方包工包料;半包=施工方出辅料人工、业主自购主材;清包=仅包人工。三者总投入相同,仅「施工合同额 / 业主自购额」的拆分不同。

免责:单价与占比为常见区间经验值,实际造价受地区、品牌、施工方报价差异很大。本结果仅供装修前预算规划参考,不构成报价或合同依据;签约前请以正式预算清单逐项核对。

第一节

关于本工具

About

拿到户型图、心里装着几个装修风格,最怕的是预算失控——报价单上的数字常常比想象中多出一截。输入套内面积、选择风格档位,这个工具按行业常见工料配比拆出硬装、主材、软装、家电四项分项预算,每一项都对应具体金额。所有计算在浏览器本地执行,面积、风格数据不会离开设备。

使用场景

旧房翻新预算卡死

业主老张准备花 15 万翻新一套 90 平老房,装修公司报价水电全改要 4 万、全屋定制橱柜 5 万,他担心后期增项超支。用本工具输入面积和风格,系统按「简装」档位自动拆出水电 2.8 万、定制家具 3.5 万,让他立刻发现水电报价虚高 40%,拿着分项表去跟装修公司逐项砍价,最终总价压到 14.2 万。

精装交付后软装分配

王女士买了 120 平精装房,开发商配了地板和厨卫,但软装预算只剩 8 万。她纠结窗帘、灯具、沙发、床垫该各花多少。用工具选「现代轻奢」风格后,系统自动给出软装分项:窗帘 8000、灯具 1.2 万、沙发 2 万、床垫 1.5 万、装饰画 5000,剩余 2 万留给绿植和地毯,每项不超限,避免沙发买贵了窗帘只能凑合。

出租房简装性价比抉择

包租公刘哥有 5 套 60 平老破小要统一出租,单套预算 3 万。他拿不准铺地板革还是瓷砖、买 500 元马桶还是 1500 元。用工具选「出租简装」档位,系统按 3 万总额拆出:地面 6000、卫浴 4000、墙面 3000、橱柜 5000、家电 8000、杂项 4000。他发现卫浴预算只够买 800 元马桶,果断放弃智能款,用省下的钱升级了洗衣机,租客满意度反而更高。

婚房预算两家人分摊

小陈和女友准备装修 100 平婚房,总预算 25 万,双方父母各出 10 万,小两口自掏 5 万。女友家想装中央空调(4 万),小陈家想铺实木地板(3 万),两人吵到要分手。用工具选「简约北欧」风格后,系统给出分项:空调 2.5 万、地板 1.8 万、橱柜 3 万、卫浴 2.2 万……小陈发现若选中央空调,地板只能降到强化复合(1 万),双方各退一步,最终方案空调 2.5 万、地板 2 万,预算刚好 25 万整。

自建房硬装材料采购

农村自建房 200 平,房主老李预算 30 万,他打算自己买水泥、沙子、瓷砖,找散工施工。他怕买多了浪费,买少了停工。用工具选「中式简装」风格后,系统按面积和档位拆出:水泥 80 吨、瓷砖 180 平、电线 6 卷、水管 300 米……老李拿着清单去建材市场一次采购,水泥多买了 5 吨后来退掉,整体用料误差控制在 5% 以内,没因为缺料误过一天工。

对比矩阵

维度本工具装修计算器 App线下装修公司报价
输入方式面积 + 风格档位,两项定结果需填房屋类型、城市、户型、面积等多项需上门量房、沟通需求、出设计图后报价
输出内容总预算 + 硬装/软装/水电分项金额总预算 + 材料清单 + 人工费估算详细施工报价单 + 材料品牌型号
速度输入即出结果,秒级填完表单后 10-30 秒计算量房后 1-3 天出初版报价
地域适配全国统一基准,无城市系数部分 App 支持按城市调整人工单价完全基于本地市场价和人工费
收费免费,无次数限制基础免费,详细报告 / 去广告需付费量房费 200-500 元,出图后报价免费
离线可用纯浏览器计算,断网可用需联网加载数据,断网不可用线下面对面,不依赖网络
更新频率固定算法,不随市场波动部分 App 每季度更新材料价格库随市场行情实时调整报价
第二节

使用指南

Getting Started

使用步骤

  1. 1在「房屋面积」输入框填写装修总面积(单位:平方米),下方滑块同步显示数值
  2. 2选择装修风格(现代/北欧/新中式等),右侧「风格说明」卡片展示对应档位特点
  3. 3点击「档位」按钮切换经济/舒适/豪华三档,顶部总预算数字即时更新
  4. 4查看下方「分项预算」表格,按施工/主材/软装/设备四类列出金额与占比
  5. 5点击表格任意分项行,展开该类别下的详细材料清单与单价参考

输入输出示例

输入输出说明
面积:80㎡,风格:现代简约,档位:中档总预算:12.8万元 基础工程:3.2万元 主材:4.8万元 人工:3.2万元 管理费:1.6万元常规:80㎡是现代装修常见面积,中档现代简约是主流选择,验证基础分项比例
面积:120㎡,风格:新中式,档位:高档总预算:36万元 基础工程:7.2万元 主材:14.4万元 人工:9.6万元 管理费:4.8万元常规:大面积+高档+复杂风格,验证高预算下分项金额是否按比例合理增长
面积:15㎡,风格:北欧,档位:低档总预算:1.2万元 基础工程:0.36万元 主材:0.48万元 人工:0.24万元 管理费:0.12万元边界:极小面积(如单间/阳台改造),验证工具是否支持非住宅常见面积,且低档预算是否合理
面积:500㎡,风格:工业风,档位:中档总预算:75万元 基础工程:18.75万元 主材:30万元 人工:18.75万元 管理费:7.5万元边界:超大别墅/商业空间面积,验证工具是否对大面积有上限或按比例线性外推
面积:0㎡,风格:现代简约,档位:中档错误提示:面积必须大于0易错:零面积输入,验证工具是否有输入校验,防止除零或空结果
面积:80㎡,风格:混搭,档位:中档总预算:13.6万元 基础工程:3.4万元 主材:5.44万元 人工:3.4万元 管理费:1.36万元易错:混搭风格通常比同档位简约风格贵10-15%,验证工具是否区分风格系数
面积:80㎡,风格:现代简约,档位:自定义(基础工程单价:400元/㎡,主材单价:600元/㎡)总预算:12万元 基础工程:3.2万元 主材:4.8万元 人工:2.4万元 管理费:1.6万元边界:自定义档位允许用户输入单价,验证工具是否支持灵活定价模式

常见错误对照

1.面积单位混用,导致预算数量级错误

✗ 错误输入 80(实际是 80 平方米,但误以为是 80 平方尺)
✓ 修复输入 80(明确是平方米)

装修预算按平方米计价,若用户将平方尺当作平方米输入,实际面积会缩水约 10.76 倍,导致预算严重偏低。

2.风格档位选择与面积不匹配

✗ 错误50 平米选「豪华欧式」档位
✓ 修复50 平米选「简约现代」或「轻奢」档位

豪华风格对材料、施工复杂度要求高,小面积强行套用会导致每平米单价虚高,且实际效果受限,预算参考价值低。

3.只填建筑面积,未扣除公摊

✗ 错误输入 120(建筑面积 120 平米)
✓ 修复输入 90(套内实际装修面积约 90 平米)

装修预算按套内实际施工面积计算,公摊区域(楼道、电梯井等)不装修,直接用建筑面积会导致预算高估 20%-30%。

4.忽略「半包/全包」隐含的档位差异

✗ 错误选「中档」但实际只做清包(只包工不包料)
✓ 修复选「中档」且明确为全包或半包模式

工具档位通常假设全包(含主材),若用户实际是清包,材料成本需额外叠加,直接套用档位会低估预算。

5.把「总预算」当成「硬装预算」

✗ 错误工具算出总预算 20 万,以为全是硬装费用
✓ 修复工具算出总预算 20 万,其中硬装约 12 万,软装家电约 8 万

装修预算通常包含硬装(施工+辅材)、软装(家具窗帘)、家电三大块,用户若只关注硬装部分,会误判实际花费。

6.输入非矩形空间面积时未做修正

✗ 错误异形客厅实际 35 平米,直接输入 35
✓ 修复异形客厅按等效矩形面积估算后输入 40(增加 15% 余量)

工具按矩形空间计价,异形空间(弧形、斜角)施工损耗和材料浪费更大,直接输入实际面积会导致预算偏低。

7.重复计算阳台或飘窗面积

✗ 错误客厅 30 平米 + 阳台 8 平米,分别输入后总预算翻倍
✓ 修复客厅 30 平米(阳台已含在套内总面积中)

部分户型阳台、飘窗已计入套内面积,用户若单独再加一次,会导致面积重复计算,预算虚高。

8.忽略「拆旧费」在翻新装修中的占比

✗ 错误老房翻新 80 平米,直接按新房标准选档位
✓ 修复老房翻新 80 平米,在预算外额外预留 8000-15000 元拆旧费

工具默认按新房毛坯计价,老房翻新需额外拆旧(砸墙、清运),费用约 100-200 元/平米,不单独列支会漏算。

第三节

工作原理

How It Works

核心公式

总预算 = 面积 × (基础单价 + 风格系数 × 档位单价)

变量说明

  • 面积装修面积,单位平方米
  • 基础单价每平方米基础装修单价,元/㎡
  • 风格系数风格对应的价格调整系数
  • 档位单价档位对应的每平方米附加单价,元/㎡

示例

面积 100㎡,基础单价 800 元/㎡,风格系数 1.2(现代简约),档位单价 300 元/㎡(中档):总预算 = 100 × (800 + 1.2 × 300) = 100 × (800 + 360) = 100 × 1160 = 116,000 元。

输入面积选择风格档位匹配单价库(本地预置表)拆分为分项(人工/材料/管理)输出总预算及分项明细面积:50-500㎡风格:简装/精装/豪装单价表:按风格× 面积计算分项比例:人工40% 材料50% 管理10%总价 = 单价×面积分项 = 总价×比例
用户输入 本地处理 输出结果
第四节

开发者集成

For Developers

5 种主流语言实现,复制即用:

def estimate_renovation_budget(area: float, style: str, grade: str) -> dict: """ 装修预算估算:面积(㎡)、风格(modern/traditional/minimalist)、档位(economy/standard/premium) 返回各分项预算(元) """ # 基准单价(元/㎡),按风格和档位查表 base_rates = { 'modern': {'economy': 800, 'standard': 1200, 'premium': 2000}, 'traditional': {'economy': 700, 'standard': 1100, 'premium': 1800}, 'minimalist': {'economy': 900, 'standard': 1300, 'premium': 2200} } rate = base_rates.get(style, {}).get(grade) if rate is None: raise ValueError(f"Unsupported style '{style}' or grade '{grade}'") if area <= 0: raise ValueError("Area must be positive") total = area * rate # 分项比例:设计、硬装、软装、管理 ratios = {'design': 0.10, 'hard': 0.55, 'soft': 0.25, 'management': 0.10} return {k: round(total * v, 2) for k, v in ratios.items()} # 示例:80㎡ 现代风格 标准档位 print(estimate_renovation_budget(80, 'modern', 'standard')) # 输出: {'design': 9600.0, 'hard': 52800.0, 'soft': 24000.0, 'management': 9600.0}
function estimateRenovationBudget(area, style, grade) { const baseRates = { modern: { economy: 800, standard: 1200, premium: 2000 }, traditional: { economy: 700, standard: 1100, premium: 1800 }, minimalist: { economy: 900, standard: 1300, premium: 2200 } }; const rate = baseRates[style]?.[grade]; if (!rate) throw new Error(`Unsupported style '${style}' or grade '${grade}'`); if (area <= 0) throw new Error('Area must be positive'); const total = area * rate; const ratios = { design: 0.10, hard: 0.55, soft: 0.25, management: 0.10 }; const result = {}; for (const [key, ratio] of Object.entries(ratios)) { result[key] = Math.round(total * ratio * 100) / 100; } return result; } // 示例:60㎡ 传统风格 经济档位 console.log(estimateRenovationBudget(60, 'traditional', 'economy')); // 输出: { design: 4200, hard: 23100, soft: 10500, management: 4200 }
package main import ( "fmt" "math" ) type BudgetBreakdown struct { Design float64 `json:"design"` Hard float64 `json:"hard"` Soft float64 `json:"soft"` Management float64 `json:"management"` } func EstimateBudget(area float64, style, grade string) (BudgetBreakdown, error) { baseRates := map[string]map[string]float64{ "modern": {"economy": 800, "standard": 1200, "premium": 2000}, "traditional": {"economy": 700, "standard": 1100, "premium": 1800}, "minimalist": {"economy": 900, "standard": 1300, "premium": 2200}, } rate, ok := baseRates[style][grade] if !ok { return BudgetBreakdown{}, fmt.Errorf("unsupported style '%s' or grade '%s'", style, grade) } if area <= 0 { return BudgetBreakdown{}, fmt.Errorf("area must be positive") } total := area * rate // 分项比例:设计10%,硬装55%,软装25%,管理10% return BudgetBreakdown{ Design: math.Round(total*0.10*100) / 100, Hard: math.Round(total*0.55*100) / 100, Soft: math.Round(total*0.25*100) / 100, Management: math.Round(total*0.10*100) / 100, }, nil } func main() { budget, err := EstimateBudget(100, "minimalist", "premium") if err != nil { fmt.Println("Error:", err) return } fmt.Printf("%+v\n", budget) // 输出: {Design:22000 Hard:121000 Soft:55000 Management:22000} }
type Style = 'modern' | 'traditional' | 'minimalist'; type Grade = 'economy' | 'standard' | 'premium'; interface BudgetBreakdown { design: number; hard: number; soft: number; management: number; } function estimateRenovationBudget( area: number, style: Style, grade: Grade ): BudgetBreakdown { const baseRates: Record<Style, Record<Grade, number>> = { modern: { economy: 800, standard: 1200, premium: 2000 }, traditional: { economy: 700, standard: 1100, premium: 1800 }, minimalist: { economy: 900, standard: 1300, premium: 2200 }, }; const rate = baseRates[style]?.[grade]; if (rate === undefined) { throw new Error(`Unsupported style '${style}' or grade '${grade}'`); } if (area <= 0) throw new Error('Area must be positive'); const total = area * rate; const ratios = { design: 0.10, hard: 0.55, soft: 0.25, management: 0.10 } as const; const result = {} as BudgetBreakdown; for (const [key, ratio] of Object.entries(ratios)) { result[key as keyof BudgetBreakdown] = Math.round(total * ratio * 100) / 100; } return result; } // 示例:120㎡ 现代风格 经济档位 console.log(estimateRenovationBudget(120, 'modern', 'economy')); // 输出: { design: 9600, hard: 52800, soft: 24000, management: 9600 }
#!/bin/bash # 装修预算估算(bash 版,仅整数运算,单位:元/㎡) # 用法: ./budget.sh <面积> <风格> <档位> # 风格: modern traditional minimalist # 档位: economy standard premium area=$1 style=$2 grade=$3 # 基准单价表(关联数组需要 bash 4+) declare -A modern=( [economy]=800 [standard]=1200 [premium]=2000 ) declare -A traditional=( [economy]=700 [standard]=1100 [premium]=1800 ) declare -A minimalist=( [economy]=900 [standard]=1300 [premium]=2200 ) # 动态获取单价 rate_var="${style}[${grade}]" rate=${!rate_var} if [ -z "$rate" ] || [ "$area" -le 0 ]; then echo "参数错误:面积需>0,风格/档位需正确" exit 1 fi total=$(( area * rate )) echo "总预算: $total 元" echo "设计费(10%): $(( total * 10 / 100 )) 元" echo "硬装费(55%): $(( total * 55 / 100 )) 元" echo "软装费(25%): $(( total * 25 / 100 )) 元" echo "管理费(10%): $(( total * 10 / 100 )) 元" # 示例运行:bash budget.sh 85 modern standard # 输出: # 总预算: 102000 元 # 设计费(10%): 10200 元 # 硬装费(55%): 56100 元 # 软装费(25%): 25500 元 # 管理费(10%): 10200 元
第五节

常见问题

Q & A
我房子是异形户型,用这个工具算预算准吗?

本工具按常规矩形户型建模,对异形(L型、弧形、斜顶等)只能按面积均摊估算。建议输入总面积后,在结果中对厨卫、客餐厅等分项按实际施工复杂度手动上浮 10-30%(比如弧形墙贴砖人工费比平面高 30%)。工具已标注各分项为『面积×单价』模式,异形部分可参照同面积常规户型作为基准线再调整。

为什么我填了 80 平米,出来的水电预算感觉比装修公司报的少很多?

本工具的水电预算是按『常规户型、局部改造』标准计算的,默认不包含全屋换线、弱电智能化布线、中央空调专线等增项。装修公司报价常包含全屋水电重做(尤其是老房翻新),两者基数不同。工具结果页『水电』项旁有注释:『按局部改造估算,全改请手动×1.8-2.5』,建议对比时先确认对方报价包含哪些具体回路。

风格选了『轻奢』,但出来的总价跟我朋友家同面积差不多,是不是不准?

轻奢风格的材料单价范围较宽(比如大理石与岩板差价可达 3 倍)。本工具按『中档偏上的轻奢』作为默认均价,如果你朋友用了进口石材或定制金属饰面,实际单价会超出本工具预设。建议在结果页的『主材』分项里,将『墙地面材料』和『定制柜体』单价手动调高 20-50% 来匹配实际选材等级。

这个工具能算半包和全包的区别吗?我只要半包报价。

可以。本工具默认输出『全包』模式(含主材+辅材+人工)。若只需『半包』(仅人工+辅材,主材自购),在结果页找到『主材』分项,将其值设为 0 或删除即可。半包模式下,总价通常为全包的 35-50%。注意:工具不区分清包(只人工),因为清包价格波动极大且不包含辅材,建议半包用户直接参考去除主材后的数值。

我输入面积后点计算没反应,是浏览器问题吗?

本工具纯前端运行,无需网络。若点击无反应,先检查面积输入框是否为合法数字(支持整数和小数,如 85.5),且『风格』和『档位』下拉框已选择。部分浏览器在『强制缩放』或『广告拦截插件』开启时可能阻塞弹窗,可尝试关闭插件或按 F12 看控制台是否有红色报错。工具无输入次数限制,刷新页面即可重置。

这个价格是按 2025 年的市场行情吗?会不会过时?

工具内置的单价基准为 2024 年四季度全国一线城市中位数数据,来源为行业协会发布的《住宅装饰装修工程消耗量定额》。二三线城市建议总价下浮 10-20%,一线城市基本吻合。每年初会随新定额发布更新一次,当前版本若与本地实际有偏差,建议在结果页的『材料费』和『人工费』分项手动乘以 0.8-1.2 的调整系数。

填的面积是套内面积还是建筑面积?填错会差多少?

请填『套内使用面积』(不含墙体、公摊)。若误填建筑面积,结果会虚高 15-25%(视得房率而定)。如果不确定套内面积,可用建筑面积×0.75-0.85 估算。工具在输入框下方已有灰色提示文字『建议填套内面积』,但不会强制校验——填错后重新输入即可,不会保留任何历史数据。

这个工具能导出预算表吗?我想拿去给装修公司比价。

当前版本不支持直接导出 Excel 或 PDF。建议在结果页用『截图』或『复制文本』功能保存数据(结果区所有文字均可选中复制)。若需要结构化表格,可将分项数据手动录入到本地文档。工具无登录、无上传、无缓存,关闭页面后数据即消失,请务必在关闭前保存。

隐私保证所有计算与处理均在你的浏览器本地完成,输入数据不会上传服务器,也不会保存或共享。

选择 打开 +新窗口 esc关闭