计算工具 · 工资与个税

社保计算器

各城市最新基数 + 缴费比例

本地处理 · 不上传 免费 · 无需登录 无次数限制 累计 54 次使用
参保城市city
基数上下限约为当地上年月平均工资的 60%–300%,选「自定义」可手填上下限。各地每年 7 月前后调整,以参保地社保局最新公布为准
月工资salary用于核定缴费基数
五险一金比例rates个人 / 单位 双向可调
项目个人 %单位 %
养老保险
医疗保险
失业保险
工伤保险 个人不缴
生育保险 个人不缴
住房公积金
个人合计 0% 单位合计 0%
医疗、工伤、生育单位比例各地差异较大(医疗约 6%–11%、工伤按行业 0.2%–1.9%、生育约 0.5%–1%),可按当地公布逐项调整。
就绪 · 各城市最新基数 + 五险一金缴费比例,纯本地实时测算
第一节

关于本工具

About

核对社保缴费基数时,常发现公司申报的基数与官方下限差几块钱,或比例套错行业档位。输入税前月薪与城市,这个工具直接拉取当地人社部门最新公布的基数上下限与各险种比例,算出单位与个人分别该缴多少,并标出基数被拉低或封顶的异常。所有计算在浏览器内完成,数据不上传服务器。

使用场景

跳槽谈薪谈社保

拿到新公司 offer 后,HR 说社保按最低基数交。你手上有两份报价:A 公司月薪 1.8 万但按 4000 基数交,B 公司月薪 1.5 万按实际工资交。用本工具分别输入两个城市的缴费比例,算出 A 公司每月少交的养老和医保金额,再对比公积金双边差额。发现 A 公司看似多出的 3000 元,实际每月到手只多 1200 元,但退休后每月养老金少领近千元。你拿数据去谈,B 公司最终把月薪提到 1.6 万,你选了长期更划算的 B。

自由职业者选档位

你从公司离职后以灵活就业身份续社保,当地社保局给了 60%-300% 共 5 个缴费档位。你手头有 20 万积蓄,预计未来 2 年收入不稳定。用本工具输入本地最新基数,分别算 60%、80%、100% 三档的月缴费额和年支出:60% 档每月 980 元,年支出 11760 元;100% 档每月 1650 元,年支出 19800 元。你发现 80% 档每月 1320 元,医保报销比例与 100% 档相同,且退休金比 60% 档多 23%,于是选了 80% 档,把省下的钱留作应急。

跨省搬家前算转移

你决定从杭州搬到成都定居,听说社保转移会影响退休金。用本工具同时查杭州和成都的缴费基数与比例:杭州养老单位 16% 个人 8%,成都单位 16% 个人 8% 但医保单位比例低 1%。你输入两地缴费记录,发现杭州 5 年按 8000 基数交的养老个人账户有 38400 元,转移到成都后基数按成都标准重新计算。你算出来:如果不转移,杭州的缴费年限在成都退休时只算 50% 有效;转移后,这 5 年缴费指数按成都社平工资折算,退休金每月多 320 元。你立刻去社保局办了转移接续。

公司发奖金算封顶

你 12 月拿到 5 万年终奖,公司说这笔钱要按社保基数上限补缴。你月薪 2 万,当地社保上限是 28017 元。用本工具输入当前基数 2 万和补缴后基数 28017,算出每月多交养老 640 元(单位 16% 个人 8%)、医保 280 元。你发现全年累计缴费基数已超上限,多交的部分年底会退。你拿着计算结果找财务确认,公司同意把超出上限的 8017 元按工资薪金单独计税,而不是按社保基数补缴,你省了 2000 多元。

父母挂靠公司交社保

你父亲 58 岁,之前一直以灵活就业身份交社保,缴费年限只有 12 年,离 15 年还差 3 年。你想找朋友公司挂靠代缴,但朋友公司注册地在另一个区,缴费基数不同。用本工具分别查灵活就业和挂靠公司的缴费比例:灵活就业养老 20% 全部自担,挂靠公司养老单位 16% 个人 8% 但需自己出全部 24%。你算出来挂靠每月多出 4% 的费用,一年多 1200 元,但可以按朋友公司的高基数交,退休金每月能多 150 元。你决定挂靠 3 年,多花 3600 元换每月多领 150 元,回本周期 24 个月。

对比矩阵

维度本工具竞品 A(社保查询网)传统方法(线下窗口/电话)
数据覆盖支持全国主要城市最新基数+比例覆盖城市多但部分数据更新滞后仅限本地城市,需自行跑窗口获取
计算速度输入基数即时出结果需手动选择城市+年份,加载较慢人工计算或等待电话咨询,耗时数分钟
隐私保护所有计算在浏览器完成,不上传数据部分操作需提交个人信息注册需提供身份证号等敏感信息给窗口人员
更新时效随政策发布同步更新基数部分城市数据更新延迟 1-3 个月依赖公告栏或咨询,更新不稳定
使用门槛无需注册,打开即用部分功能需注册或关注公众号需工作时间前往线下,排队等候
对比便捷性同一页面可切换多个城市对比需反复回退选择不同城市需分别咨询不同城市,无法横向对比
第二节

使用指南

Getting Started

使用步骤

  1. 1选择城市后,系统自动加载该地最新社保缴费基数上下限与各险种比例
  2. 2在「个人月薪」输入框填入税前工资,结果区同步更新单位与个人各险种应缴金额
  3. 3点「查看明细」展开养老、医疗、失业、工伤、生育五项的分项金额与计算依据
  4. 4切换城市或修改月薪,结果区即时重算,无需额外点击按钮

输入输出示例

输入输出说明
城市:上海 / 基数下限:7310 / 基数上限:36549 / 养老个人比例:8% / 医疗个人比例:2% / 失业个人比例:0.5%养老:584.80元 / 医疗:146.20元 / 失业:36.55元 / 合计:767.55元常规:上海2024年最新基数下限,展示个人部分三项合计,验证基本计算逻辑
城市:北京 / 基数下限:6326 / 基数上限:33891 / 养老个人比例:8% / 医疗个人比例:2%+3元 / 失业个人比例:0.5%养老:506.08元 / 医疗:129.52元(含3元大额) / 失业:31.63元 / 合计:667.23元常规:北京医疗个人部分含固定3元大额互助,验证工具是否正确处理固定附加项
城市:广州 / 基数下限:5284 / 基数上限:26421 / 养老个人比例:8% / 医疗个人比例:2% / 失业个人比例:0.2%养老:422.72元 / 医疗:105.68元 / 失业:10.57元 / 合计:538.97元常规:广州失业比例低至0.2%,验证不同城市比例差异的准确性
城市:深圳 / 基数下限:2360 / 基数上限:34860 / 养老个人比例:8% / 医疗个人比例:2% / 失业个人比例:0.3%养老:188.80元 / 医疗:47.20元 / 失业:7.08元 / 合计:243.08元边界:深圳基数下限2360为全国最低之一,验证极低基数下的计算结果是否合理
城市:上海 / 基数下限:7310 / 基数上限:36549 / 养老个人比例:8% / 医疗个人比例:2% / 失业个人比例:0.5% / 输入基数:50000(超过上限)养老:2923.92元(按上限36549计算) / 医疗:730.98元 / 失业:182.75元 / 合计:3837.65元边界:输入基数超过上限,验证工具是否自动截取上限值,而非按输入值计算
城市:成都 / 基数下限:4246 / 基数上限:21228 / 养老个人比例:8% / 医疗个人比例:2% / 失业个人比例:0.4% / 输入基数:3000(低于下限)养老:339.68元(按下限4246计算) / 医疗:84.92元 / 失业:16.98元 / 合计:441.58元边界:输入基数低于下限,验证工具是否自动按下限处理,而非报错或按输入值计算
城市:杭州 / 基数下限:3957 / 基数上限:22311 / 养老个人比例:8% / 医疗个人比例:2% / 失业个人比例:0.5% / 输入基数:0提示:基数不能为0,请重新输入易错:用户可能误输入0,验证工具是否给出明确错误提示而非静默处理
城市:南京 / 基数下限:4494 / 基数上限:24042 / 养老个人比例:8% / 医疗个人比例:2% / 失业个人比例:0.5% / 输入基数:abc提示:基数必须为数字,请重新输入易错:用户可能输入非数字字符,验证工具输入校验是否到位

常见错误对照

1.缴费基数填了月薪,但当地下限高于月薪

✗ 错误月薪 3000,基数填 3000
✓ 修复先查当地社保缴费基数下限(如北京 2024 下限 6326),基数填 6326

社保基数有上下限,低于下限按下限算,高于上限按上限算。直接填实际工资可能导致计算结果低于法定最低缴费额。

2.把公积金比例当成社保比例一起算

✗ 错误总比例填 38%(养老 16%+医疗 8%+失业 0.5%+公积金 12%)
✓ 修复社保比例单独算:养老 16%+医疗 8%+失业 0.5%=24.5%;公积金另算

公积金缴存比例由公积金中心规定,与社保(人社部门)是两个独立系统,合并计算会混淆单位与个人分担规则。

3.单位缴费比例和个人缴费比例混加

✗ 错误养老总比例 24%(单位 16%+个人 8%)
✓ 修复单位部分:16%;个人部分:8%

社保计算器通常区分单位缴纳和个人缴纳,混加后无法正确显示各自承担金额,也影响企业成本核算。

4.误用上一年度平均工资作为当前基数

✗ 错误2024 年 7 月算社保,基数填 2023 年 12 月的工资 8000
✓ 修复基数填 2023 年 1-12 月平均工资(如 7500),或直接查当地最新基数表

社保基数一般按上一年度月平均工资核定,且每年 7 月调整。用某月工资代替全年平均会导致基数偏差。

5.忽略工伤保险的行业费率差异

✗ 错误工伤保险统一填 0.5%
✓ 修复先确认单位所属行业类别(如建筑业 1.0%、软件业 0.2%),再填对应费率

工伤保险费率按行业风险分档(0.2%-1.9%),统一填默认值会导致计算结果与单位实际缴费不符。

6.把生育保险合并到医疗保险比例里

✗ 错误医疗比例填 9.8%(含生育 0.8%)
✓ 修复医疗 9% + 生育 0.8% 分开填写

虽然部分城市已合并实施,但计算器通常保留独立字段,合并填写会导致系统无法正确拆分两险的缴费明细。

7.跨城市使用同一基数标准

✗ 错误在上海工作,基数填北京的 6326
✓ 修复选择城市为「上海」,基数填上海 2024 下限 7310

社保基数各省市独立制定,城市选错或基数跨城混用,计算结果与实际缴费相差可达数千元。

第三节

工作原理

How It Works

核心公式

个人月缴费 = 缴费基数 × (养老比例 + 医疗比例 + 失业比例 + 工伤比例 + 生育比例)

变量说明

  • 缴费基数当地社保年度核定的月工资基数
  • 养老比例个人养老保险缴费比例,通常 8%
  • 医疗比例个人医疗保险缴费比例,通常 2%
  • 失业比例个人失业保险缴费比例,通常 0.5%
  • 工伤比例个人工伤保险缴费比例,通常 0%
  • 生育比例个人生育保险缴费比例,通常 0%

示例

北京 2024 年社保基数下限 6326 元,个人缴费比例养老 8%、医疗 2%、失业 0.5%、工伤 0%、生育 0%。个人月缴费 = 6326 × (8% + 2% + 0.5% + 0% + 0%) = 6326 × 10.5% = 664.23 元。

选择城市与年份输入缴费基数查询本地比例表按险种拆分计算展示各险种明细展示合计金额
用户输入 本地处理 输出结果
第四节

开发者集成

For Developers

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

import requests # 全宝社保计算器 API 调用示例 # 查询北京市 2024 年 7 月社保缴费明细 def calc_shebao(city='beijing', base=10000, month='2024-07'): url = 'https://api.quanbao5.com/shebao/calc' params = {'city': city, 'base': base, 'month': month} try: resp = requests.get(url, params=params, timeout=10) resp.raise_for_status() data = resp.json() print(f"城市: {data['city']}") print(f"缴费基数: {data['base']} 元") for item in data['items']: print(f"{item['name']}: 个人 {item['personal_rate']}% = {item['personal_amount']} 元, " f"单位 {item['company_rate']}% = {item['company_amount']} 元") print(f"合计: 个人 {data['total_personal']} 元, 单位 {data['total_company']} 元") except requests.exceptions.RequestException as e: print(f"请求失败: {e}") if __name__ == '__main__': calc_shebao() # 输出见下方注释 # 输出示例: # 城市: 北京 # 缴费基数: 10000 元 # 养老保险: 个人 8% = 800 元, 单位 16% = 1600 元 # 医疗保险: 个人 2% = 200 元, 单位 9.8% = 980 元 # 失业保险: 个人 0.5% = 50 元, 单位 0.5% = 50 元 # 工伤保险: 个人 0% = 0 元, 单位 0.2% = 20 元 # 合计: 个人 1050 元, 单位 2650 元
// 浏览器端直接调用全宝社保计算器 API(无需 Node.js) // 适用于前端页面嵌入或控制台测试 async function calcShebao(city = 'beijing', base = 10000, month = '2024-07') { const url = `https://api.quanbao5.com/shebao/calc?city=${city}&base=${base}&month=${month}`; try { const resp = await fetch(url); if (!resp.ok) throw new Error(`HTTP ${resp.status}`); const data = await resp.json(); console.log(`城市: ${data.city}`); console.log(`缴费基数: ${data.base} 元`); data.items.forEach(item => { console.log(`${item.name}: 个人 ${item.personal_rate}% = ${item.personal_amount} 元, ` + `单位 ${item.company_rate}% = ${item.company_amount} 元`); }); console.log(`合计: 个人 ${data.total_personal} 元, 单位 ${data.total_company} 元`); } catch (err) { console.error('请求失败:', err); } } calcShebao(); // 输出示例: // 城市: 北京 // 缴费基数: 10000 元 // 养老保险: 个人 8% = 800 元, 单位 16% = 1600 元 // 医疗保险: 个人 2% = 200 元, 单位 9.8% = 980 元 // 失业保险: 个人 0.5% = 50 元, 单位 0.5% = 50 元 // 工伤保险: 个人 0% = 0 元, 单位 0.2% = 20 元 // 合计: 个人 1050 元, 单位 2650 元
package main import ( "encoding/json" "fmt" "io" "net/http" "time" ) type ShebaoItem struct { Name string `json:"name"` PersonalRate float64 `json:"personal_rate"` PersonalAmount float64 `json:"personal_amount"` CompanyRate float64 `json:"company_rate"` CompanyAmount float64 `json:"company_amount"` } type ShebaoResponse struct { City string `json:"city"` Base float64 `json:"base"` Items []ShebaoItem `json:"items"` TotalPersonal float64 `json:"total_personal"` TotalCompany float64 `json:"total_company"` } func main() { url := "https://api.quanbao5.com/shebao/calc?city=beijing&base=10000&month=2024-07" client := &http.Client{Timeout: 10 * time.Second} resp, err := client.Get(url) if err != nil { fmt.Printf("请求失败: %v\n", err) return } defer resp.Body.Close() body, _ := io.ReadAll(resp.Body) var data ShebaoResponse if err := json.Unmarshal(body, &data); err != nil { fmt.Printf("解析失败: %v\n", err) return } fmt.Printf("城市: %s\n", data.City) fmt.Printf("缴费基数: %.0f 元\n", data.Base) for _, item := range data.Items { fmt.Printf("%s: 个人 %.1f%% = %.0f 元, 单位 %.1f%% = %.0f 元\n", item.Name, item.PersonalRate, item.PersonalAmount, item.CompanyRate, item.CompanyAmount) } fmt.Printf("合计: 个人 %.0f 元, 单位 %.0f 元\n", data.TotalPersonal, data.TotalCompany) } // 输出示例: // 城市: 北京 // 缴费基数: 10000 元 // 养老保险: 个人 8.0% = 800 元, 单位 16.0% = 1600 元 // 医疗保险: 个人 2.0% = 200 元, 单位 9.8% = 980 元 // 失业保险: 个人 0.5% = 50 元, 单位 0.5% = 50 元 // 工伤保险: 个人 0.0% = 0 元, 单位 0.2% = 20 元 // 合计: 个人 1050 元, 单位 2650 元
#!/bin/bash # 使用 curl 调用全宝社保计算器 API,适合脚本或 CI/CD 集成 city="beijing" base="10000" month="2024-07" response=$(curl -s -w "%{http_code}" -o /tmp/shebao.json \ "https://api.quanbao5.com/shebao/calc?city=$city&base=$base&month=$month") if [ "$response" != "200" ]; then echo "请求失败,HTTP 状态码: $response" exit 1 fi echo "城市: $(jq -r '.city' /tmp/shebao.json)" echo "缴费基数: $(jq -r '.base' /tmp/shebao.json) 元" echo "" # 逐项输出社保明细 jq -c '.items[]' /tmp/shebao.json | while read -r item; do name=$(echo "$item" | jq -r '.name') pr=$(echo "$item" | jq -r '.personal_rate') pa=$(echo "$item" | jq -r '.personal_amount') cr=$(echo "$item" | jq -r '.company_rate') ca=$(echo "$item" | jq -r '.company_amount') echo "$name: 个人 ${pr}% = ${pa} 元, 单位 ${cr}% = ${ca} 元" done echo "" echo "合计: 个人 $(jq -r '.total_personal' /tmp/shebao.json) 元, " \ "单位 $(jq -r '.total_company' /tmp/shebao.json) 元" # 输出示例: # 城市: 北京 # 缴费基数: 10000 元 # 养老保险: 个人 8% = 800 元, 单位 16% = 1600 元 # 医疗保险: 个人 2% = 200 元, 单位 9.8% = 980 元 # 失业保险: 个人 0.5% = 50 元, 单位 0.5% = 50 元 # 工伤保险: 个人 0% = 0 元, 单位 0.2% = 20 元 # 合计: 个人 1050 元, 单位 2650 元
第五节

常见问题

Q & A
社保缴费基数和工资是一回事吗?为什么算出来不一样?

不是一回事。社保缴费基数一般是按上一年度月平均工资确定的,并且有上下限(当地社平工资的60%-300%)。如果当前月工资高于上限,就按上限基数算;低于下限,就按下限算。本工具在输入工资后会直接提示该城市当年的基数上下限,并自动取用实际应缴基数,不是简单用工资额乘以比例。

为什么我查到的缴费比例和工具里显示的不一样?

社保缴费比例会因城市、户籍(本地/外地)、甚至公司性质(如机关事业单位与企业)有差异。本工具默认采用该城市官方公布的企业职工标准比例,但个别城市对工伤、失业保险有浮动费率(行业风险不同),或对灵活就业人员有不同政策。建议核对页面底部的数据来源日期,并对比当地社保局最新通知。

输入工资后,个人和公司部分是怎么算出来的?

个人部分 = 缴费基数 × 个人总比例(养老8%+医疗2%+失业0.5%左右,城市间有微调)。公司部分 = 缴费基数 × 公司总比例(养老16%+医疗8%+失业0.5%+工伤0.2%~1.9%+生育0.5%~1%)。本工具在输入工资后,会自动展示该城市各项险种的具体比例和分项金额,最后汇总显示个人和公司分别应缴总额。

这个工具的数据是最新的吗?会不会是去年的基数?

本工具的数据会在每年各城市公布新基数后尽快更新,通常集中在7月(多数城市社保年度从7月开始)。页面顶部会标注“数据更新至XXXX年X月”。如果遇到新旧基数交替期(如6月新基数刚出但旧基数仍可查),工具会同时显示两版数据供参考。建议使用时核对页面上的数据更新日期。

为什么输入工资后,显示的公司部分比我实际工资条上多?

公司缴纳部分通常不计入个人工资条,但会计入公司人力成本。工资条上一般只显示个人扣缴部分。本工具展示的是公司需要为该员工缴纳的全部金额(含统筹部分),这部分在工资条上通常不体现,但公司财务做账时会有。如果感觉金额异常,可以核对缴费基数是否被公司按最低基数申报。

输入工资后,计算出来的结果准确吗?能用来算我下个月发多少钱吗?

计算结果是基于该城市官方比例和基数上下限的数学计算结果,准确度取决于输入数据的正确性。但实际到手工资还涉及个税(含专项附加扣除)、公积金(比例不同)、以及公司是否合规缴纳(如按最低基数交)。本工具只计算社保部分,不包含公积金和个税,不能直接当工资计算器用。

换个城市工作,输入新城市名字就能算那边的社保吗?

可以。本工具支持全国主要城市,输入城市名称后会自动切换该城市的基数上下限和缴费比例。但要注意,跨省转移时,医保和养老的转移接续政策不同,本工具只展示当前城市的缴费金额,不涉及转移后年限合并的计算。如果涉及转移,建议同时查询当地社保转移政策。

为什么我输入工资后,生育保险显示为0?

生育保险费用全部由公司承担,个人不需要缴纳,所以个人部分显示为0是正常的。公司部分会正常显示。另外,部分地区已将生育保险并入医疗保险(如广东、浙江等地),此时医保比例中已包含生育保险,本工具会按当地政策显示合并后的比例和金额。

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

选择 打开 +新窗口 esc关闭