生活工具 · 法律权益

失业 N+1 补偿

工龄 + 工资→经济补偿金(劳动法)

✓本地处理 · 不上传 ✓免费 · 无需登录 ✓无次数限制 累计 118 次使用
工作年限tenure连续工龄
工龄按入职到离职的实际连续工作时间计。折算规则:每满 1 年支付 1 个月工资;满 6 个月不满 1 年按 1 年算;不满 6 个月支付半个月工资。
月工资monthly wage
元
元
月工资高于当地社平工资 3 倍的,按 3 倍封顶计,且年限最高不超过 12 年;未超 3 倍则不封顶、年限不封顶。社平工资可填 0 表示不限封顶。
解除情形scenario点选适用补偿
代通知金(+1)notice pay
第 40 条无过失性辞退,单位可提前 30 日通知,或额外支付 1 个月工资替代通知期,即「+1」。+1 按上月工资计,非 12 月平均。违法解除(2N)不涉及 +1。
就绪 · 依据《劳动合同法》第 40 / 47 / 87 条,纯本地实时测算
第一节

关于本工具

About

被裁员后,HR 拿出一个补偿方案,工龄、月平均工资、N、N+1 这些数字一混,很容易算错。这个工具把《劳动合同法》第四十七条的公式拆成输入框:填入职和离职日期、离职前 12 个月平均工资,它直接算出法定经济补偿金数额,区分 N 与 N+1 的触发条件。所有计算在浏览器内完成,不传数据到服务器,适合谈判前或签协议前快速复核。

使用场景

壹

离职面谈前算底牌

HR 在会议室递来协商解除协议,口头说「按 N+1 给」。工龄 7 年 8 个月,月薪 2.5 万(含绩效和餐补)。HR 只按 2 万基数算补偿,说绩效部分不算工资。用本工具输入完整月薪和工龄,系统按《劳动合同法》第四十七条自动算出 N 为 8 个月、补偿总额 20 万。看到精确数字后,能当场指出 HR 计算口径的漏洞,争取到应得的 4 万差额。

贰

核算去年被裁的旧账

2023 年 11 月被公司以「经营困难」为由裁员,当时 HR 给的是「2N 封顶」的打包价 16 万。最近听说同批同事找律师重新算,发现公司少给了 3 年工龄的补偿。翻出当年的工资单和离职协议,用本工具重新输入:工龄 12 年、月均工资 1.8 万。系统显示法定 N+1 应为 23.4 万,加上未休年假折现,实际应得 25.8 万。拿着这个数去申请劳动仲裁,时效还剩 3 个月。

叁

仲裁前准备诉求清单

被公司违法辞退,决定申请仲裁。律师费按标的额收,写仲裁申请书时需列明每一项赔偿的精确金额。工龄 3 年 2 个月,月薪 1.2 万,公司未提前 30 天通知。用本工具分别算:违法解除 2N = 7.2 万、代通知金 1.2 万、未休年假折算 0.5 万。结果直接复制进申请书,仲裁委立案时金额计算无误,减少因数字争议被退回补正的可能。

肆

对比不同离职方案

公司提出两个方案:方案一是协商解除拿 N+1 后立即走人,方案二是调岗降薪留任 6 个月后拿 N。月薪 1.5 万,工龄 5 年。方案一立刻到账 9 万,方案二需再干 6 个月拿 7.5 万但期间有工资。用本工具分别输入两种情形,对比发现方案一实际多拿 1.5 万且无需承受降薪后的工作压力。把计算结果打印出来,作为跟 HR 谈判的书面依据。

伍

家庭财务应急规划

丈夫突然接到裁员通知,预计月底离职。家里房贷每月 8000 元,孩子学费下月要交 2 万。妻子需要马上知道这笔补偿金能撑多久。丈夫工龄 4 年 6 个月,月薪 1.8 万。用本工具算出 N+1 共 9.9 万,扣除个税后实得约 9.5 万。拿着这个数字重新排家庭预算:还 3 个月房贷 + 交学费后还剩 4.1 万,能覆盖 2 个月基本生活费。决定暂不动用存款,等丈夫找到新工作再调整。

对比矩阵

维度本工具竞品 A(劳动法计算器)传统方法(手动计算)
计算速度输入即出结果,无等待需加载页面、点选步骤,约 2-3 步查阅法条 + 手动算,数分钟
法律依据更新内置《劳动合同法》第 47 条,固定规则部分版本含地方细则,更新频率不一需自行核对最新法条及司法解释
输入复杂度仅需工龄和月平均工资可能要求输入入职/离职日期、工资明细等需自行确定工龄起止、计算月平均工资
结果透明度显示计算公式与分段结果多数仅显示最终金额,不展示过程计算过程完全由个人控制
隐私纯前端计算,数据不出浏览器部分工具数据上传服务器完全离线,无数据泄露风险
适用场景快速估算补偿金范围适合需要详细工资条拆分的场景适合熟悉劳动法、需手动核对的用户
第二节

使用指南

Getting Started

使用步骤

  1. 1在「入职时间」输入框选择或填写实际入职日期,系统自动计算截至今日的累计工龄
  2. 2在「月平均工资」输入框填入离职前12个月的税前月均工资(单位:元),含奖金、津贴
  3. 3在「是否协商解除」处勾选对应选项:选「是」按N计算,选「否」按N+1计算(仅适用于无过失性辞退)
  4. 4点击「计算补偿金」按钮,结果区显示经济补偿金总额、工龄对应月数及法律依据(《劳动合同法》第47条)
  5. 5结果下方列出「工资封顶线(当地社平工资3倍)」与「工龄封顶(12年)」的适用提示,超出时自动标注

输入输出示例

输入输出说明
工龄:3 年 5 个月;月平均工资:8000 元经济补偿金:28000 元(3.5 个月 × 8000 元/月)常规:工龄满 1 年不足 6 个月按 0.5 个月计算,验证半年进位规则
工龄:12 年 0 个月;月平均工资:15000 元经济补偿金:180000 元(12 个月 × 15000 元/月)常规:整数年工龄,验证满 1 年按 1 个月计算,无零头干扰
工龄:0 年 11 个月;月平均工资:6000 元经济补偿金:6000 元(1 个月 × 6000 元/月)边界:工龄不足 1 年但超过 6 个月,按 1 个月计算,验证《劳动合同法》第 47 条
工龄:20 年 0 个月;月平均工资:35000 元经济补偿金:284040 元(12 个月 × 23670 元/月)边界:月工资超过当地社平工资 3 倍(假设 7890 元),封顶 12 个月,验证三倍封顶规则
工龄:1 年 2 个月;月平均工资:0 元经济补偿金:0 元(0 个月 × 0 元/月)边界:工资为 0 元(如实习生或未发薪),补偿金为 0,验证零值输入不会报错
工龄:5 年 6 个月;月平均工资:5000 元经济补偿金:27500 元(5.5 个月 × 5000 元/月)易错:工龄整 6 个月,按 0.5 年算还是 1 年?本工具按 0.5 年处理(不足 1 年部分按比例),避免用户误以为进一
工龄:10 年 0 个月;月平均工资:50000 元经济补偿金:284040 元(12 个月 × 23670 元/月,当地社平工资 7890 元)易错:高薪且工龄超 12 年,用户可能以为按实际工龄算,但法律封顶 12 个月且工资封顶 3 倍社平

常见错误对照

1.离职前12个月平均工资算错:把离职当月工资也计入

✗ 错误输入离职当月工资 8000 元,前12个月工资分别为 8000、8000、...、8000,平均工资填 8000
✓ 修复平均工资 = (前11个月工资 + 离职前一个完整月工资) ÷ 12,若离职当月未满月应剔除

《劳动合同法》第47条规定的「月工资」指劳动者在劳动合同解除或终止前12个月的月平均工资,不含离职当月未完整出勤的工资。

2.工龄计算错误:把试用期排除在工龄之外

✗ 错误工龄只填正式入职后的月份,试用期3个月不填
✓ 修复工龄从实际用工之日起算,包含试用期。例如试用期3个月 + 正式工2年 = 2年3个月

《劳动合同法》第19条明确试用期包含在劳动合同期限内,计算经济补偿时试用期应计入工作年限。

3.月平均工资超过当地社平工资3倍时未封顶

✗ 错误当地社平工资 6000 元,月平均工资 25000 元,直接按 25000 × 工龄计算
✓ 修复月平均工资超过 18000 元(6000×3)时,按 18000 元封顶计算

《劳动合同法》第47条规定,劳动者月工资高于用人单位所在直辖市、设区的市级人民政府公布的本地区上年度职工月平均工资三倍的,经济补偿标准按职工月平均工资三倍的数额支付。

4.工龄不满半年却算成1年

✗ 错误工龄 5 个月,按 1 年计算补偿
✓ 修复工龄 5 个月,按 0.5 年计算补偿(支付半个月工资)

《劳动合同法》第47条规定,六个月以上不满一年的按一年计算;不满六个月的向劳动者支付半个月工资的经济补偿。

5.月平均工资包含非货币性福利(如餐补、交通补贴)

✗ 错误月工资只填基本工资 5000 元,忽略每月 500 元餐补和 300 元交通补贴
✓ 修复月平均工资 = 基本工资 + 绩效 + 津贴 + 补贴 + 加班费(税前应得工资),如 5000 + 500 + 300 = 5800 元

《劳动合同法实施条例》第27条规定,经济补偿的月工资按照劳动者应得工资计算,包括计时工资、计件工资、奖金、津贴和补贴等货币性收入。

6.工龄跨年时把整年按365天折算

✗ 错误工龄 2 年 3 个月,折算成 2.25 年(3÷12=0.25)
✓ 修复工龄 2 年 3 个月,按 2.5 年计算(3个月不满6个月按0.5年)

工龄计算按月为单位,不用天数折算。3个月不满6个月按0.5年,6个月以上不满1年按1年,不能精确到小数。

7.补偿年限超过12年时未封顶

✗ 错误工龄 20 年,直接按 20 年计算补偿
✓ 修复若月平均工资未超过当地社平工资3倍,按实际工龄20年计算;若超过3倍,则按12年封顶

《劳动合同法》第47条仅对高收入者(月工资超社平3倍)有12年封顶限制,普通劳动者无年限上限,常见误区是误以为所有情况都封顶12年。

第三节

工作原理

How It Works

核心公式

经济补偿金 = min(工龄, 12) × 月平均工资

变量说明

  • 工龄在本单位工作年数,不满半年按0.5计
  • 月平均工资离职前12个月应得月均工资

示例

某员工工龄8年7个月(按8.5年计),月均工资8000元。因公司裁员协商解除合同,工龄未超12年上限,补偿金 = 8.5 × 8000 = 68000元。若月均工资超过当地社平工资3倍(如3万元),则按3万元封顶计算。

输入工龄(年)与月平均工资判断工龄区间(< 6月 / 6月-1年 / > 1年)按 N / N+1 规则计算补偿月数输出经济补偿金(月数 × 月工资)校验:月工资是否超过当地社平3倍若超限:按3倍封顶且工龄最多12年输出封顶后补偿金金额
输入与校验 本地处理 输出结果
第四节

开发者集成

For Developers

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

def severance_pay(years: float, monthly_salary: float) -> float: """计算经济补偿金(N+1 补偿)""" if years < 0 or monthly_salary < 0: raise ValueError("工龄和月薪不能为负数") # 工龄不足半年按半年算,半年以上不足一年按一年算 n = int(years) if years == int(years) else int(years) + 1 # 月工资高于当地社平工资 3 倍时,按 3 倍封顶(此处简化,未查具体地区) cap = min(monthly_salary, 30000) # 假设当地社平工资 10000,3 倍封顶 return n * cap + cap # N + 1 # 示例:工龄 4.5 年,月薪 15000 print(severance_pay(4.5, 15000)) # 输出: 90000.0
function severancePay(years, monthlySalary) { if (years < 0 || monthlySalary < 0) throw new Error('参数不能为负'); // 工龄取整(向上取整到整数年) const n = Math.ceil(years); // 月薪超过当地社平工资 3 倍时封顶(此处简化) const cap = Math.min(monthlySalary, 30000); return n * cap + cap; // N + 1 } console.log(severancePay(4.5, 15000)); // 90000
package main import ( "fmt" "math" ) func severancePay(years float64, monthlySalary float64) float64 { if years < 0 || monthlySalary < 0 { panic("参数不能为负") } n := math.Ceil(years) // 工龄向上取整 cap := math.Min(monthlySalary, 30000) // 封顶 return n*cap + cap } func main() { fmt.Println(severancePay(4.5, 15000)) // 90000 }
#!/bin/bash # 用法: ./severance.sh 4.5 15000 # 输出: 90000 years=$1 salary=$2 # 工龄向上取整 n=$(echo "$years" | awk '{print int($1+0.999)}') # 月薪封顶 30000 if (( $(echo "$salary > 30000" | bc -l) )); then cap=30000 else cap=$salary fi echo "$n * $cap + $cap" | bc
public class SeverancePay { public static double calculate(double years, double monthlySalary) { if (years < 0 || monthlySalary < 0) throw new IllegalArgumentException(); int n = (int) Math.ceil(years); double cap = Math.min(monthlySalary, 30000); return n * cap + cap; } public static void main(String[] args) { System.out.println(calculate(4.5, 15000)); // 90000.0 } }
fn severance_pay(years: f64, monthly_salary: f64) -> f64 { assert!(years >= 0.0 && monthly_salary >= 0.0); let n = years.ceil() as i32; let cap = monthly_salary.min(30000.0); n as f64 * cap + cap } fn main() { println!("{}", severance_pay(4.5, 15000.0)); // 90000 }
第五节

常见问题

Q & A
问我工作 12 年 3 个月,工龄怎么算?不满一年的月份算不算?+
答

算。劳动法规定,不满六个月算 0.5 年,六个月以上不满一年算 1 年。你 12 年 3 个月,其中 3 个月不满六个月,所以工龄按 12.5 年计算。工具输入框直接填整数年数和剩余月数,会自动按这个规则折算,不用自己纠结半年整年的边界。

问月平均工资是填税前还是税后?包括年终奖和加班费吗?+
答

填离职前 12 个月的税前应发工资(含社保公积金个人部分),不是实发到手。年终奖、季度奖、加班费、餐补交通补这些货币性收入都要算进去。工具说明里写了,输入的是“月平均工资”,建议你拿过去 12 个月工资条加总除以 12,别只算基本工资,否则算出来的补偿金会偏低。

问算出来是 6 万,但公司只肯给 4 万,到底哪个对?+
答

工具是按《劳动合同法》第 47 条的标准公式算的法定最低补偿额(N),公司给 4 万可能是在打折扣。如果公司没提前 30 天通知,还要加 1 个月代通知金(N+1)。另外,如果你的月平均工资超过当地社平工资 3 倍,封顶按 3 倍算,这个封顶线工具已经内置了(需手动选择城市)。建议拿结果去和 HR 对公式,不是简单比数字。

问我月工资 2.8 万,但当地社平工资才 8000,是不是有封顶?+
答

有。当你的月平均工资超过当地上年度社平工资 3 倍时,补偿金的计算基数就按 3 倍封顶,且工龄最多算 12 年。以 8000 社平为例,封顶基数是 24000。你 2.8 万超过了,所以实际基数按 24000 算,不是 28000。工具首页有“社平工资”输入框,填对城市数据后会自动封顶,否则结果会虚高。

问试用期被辞退也能用这个工具算吗?+
答

能,但注意试用期被辞退分两种情况。如果是公司证明不符合录用条件(合法解除),没有补偿金;如果是无理由辞退(违法解除),补偿金按 N 或 2N 算。工具默认按“协商一致/裁员”的 N 算,不区分违法解除。如果你属于无理由被辞退,结果需要自己乘以 2(2N),或者找专业律师确认。

问输入工资和工龄后点计算没反应,是不是浏览器有问题?+
答

这个工具是纯前端计算,不依赖网络,点没反应通常是输入格式不对。检查两点:① 工龄年份必须是整数(比如 5 不是 5.0),月数必须 0-11;② 月平均工资只能填数字,不能带逗号或单位(如“12000”可以,“12,000”或“12000元”不行)。如果还不行,换 Chrome 或 Edge 浏览器刷新重试。

问这个工具和网上那些计算器算出来不一样,哪个准?+
答

差异通常出在“月平均工资”的统计口径和“社平工资封顶”的取值上。本工具要求填税前全口径工资(含奖金津贴),有些计算器默认填税后或基本工资,基数不同结果自然不同。另外,社平工资数据每年更新,不同工具用的年份可能差一年。建议先确认你填的工资口径一致,再核对社平工资年份,两个对上后结果基本一致。

问我填了数据但没看到结果,是不是要注册或付费?+
答

不用。这个工具完全免费,不需要注册登录,也没有次数限制。计算结果直接在输入框下方显示,如果没看到,可能是页面没完全加载或浏览器缩放导致结果区被遮挡。试试往下滚动页面,或者缩小浏览器页面比例(Ctrl+滚轮)看看。所有计算都在你本地浏览器完成,数据不上传服务器。

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

↑↓选择 ↵打开 ⌘+↵新窗口 esc关闭