3Q工具箱
首页 / 教程中心 / 换算与计算

到手工资是怎么算出来的:累计预扣法、专项附加扣除与社保基数

换算与计算发布于 2026-09-12

「合同上写着月薪 20000,为什么到手只有 15000 多,而且每个月还不一样?」

这不是财务算错了,而是工资单里有一串固定顺序的减法,其中个税那一项在一年之内本身就是变动的。把顺序理清楚,每一分钱去哪了都能自己核对出来。

需要先说明:个税与社保的具体口径存在地区差异,本文讲的是通用算法与常见误算点,各地政策与执行口径不同,结果仅供参考,正式数据以税务、社保部门等官方渠道为准。

一、先看一张工资单的减法顺序

顺序错了,结果一定错。正确的顺序是:

  • 第一步,确定税前工资。 也就是应发工资,含基本工资、绩效、津贴、加班费等。
  • 第二步,减去个人承担的五险一金。 这部分在税前扣除,所以它同时降低了你的个税基数。
  • 第三步,减去费用减除标准。 现行标准是 5000 元/月,全年 60000 元
  • 第四步,减去专项附加扣除。 子女教育、房贷利息、房租、赡养老人等,按月定额扣除。
  • 第五步,用剩下的金额按预扣率算个税。
  • 第六步,税前工资减去个人五险一金、再减个税,得到实发工资。

注意「单位承担部分」不出现在这个链条里。单位为你缴的养老、医疗、公积金是用工成本,不从你的应发工资里扣,也不计入你的个税基数。想看单位和个人各承担多少,用五险一金计算器分开列一遍最直观。

二、累计预扣法:为什么年初扣得少、年中忽然多扣

工资薪金的个税不是「按月独立计税」,而是按年度累计计算、逐月预扣。核心公式两条:

累计应纳税所得额 = 累计收入 - 累计免税收入 - 5000 × 月份数 - 累计专项扣除 - 累计专项附加扣除 - 累计其他扣除
本月预扣税额 = 累计应纳税所得额 × 预扣率 - 速算扣除数 - 累计已预扣税额

关键在于预扣率用的是年度综合所得税率表,按累计金额跳档:不超过 36000 元 适用 3%36000144000 元 适用 10%(速算扣除数 2520),144000300000 元 适用 20%(速算扣除数 16920),往上依次是 25%30%35%45%

于是同一份不变的月薪,会呈现出这样的曲线:

  • 年初几个月,累计所得额还很小,落在 3% 档,扣税很少,到手最多。
  • 某个月累计额跨过 36000 元,税率跳到 10%,这个月的预扣税额会明显跳升,到手骤减。
  • 越往年底,累计额越高,可能再次跳档,到手继续走低。
  • 次年 1 月,累计额清零重新开始,到手又回到最高点。

很多人以为「公司年中给我加税了」,其实全年税负总额与按年一次性计算的结果完全一致,只是分摊节奏不同。这也是个人所得税计算器提供月度模式的意义——它把 12 个月的预扣曲线一次列出来,跳档发生在哪个月一眼可见,便于提前安排现金流。

年终奖是另一套逻辑:可以选择单独计税(按月折算税率),也可以并入综合所得。两种方式哪个更省取决于你的全年收入结构,并且单独计税在几个临界点附近存在「多发一元、税后反而更少」的区间,需要实际算过才能定,不能凭印象选。

三、专项附加扣除:填对了每月都省

专项附加扣除是普通工薪族能主动优化的部分,按定额扣除,不需要凭发票逐笔报销。按现行标准,主要项目包括:

  • 子女教育:每个子女 2000 元/月,父母可选一方全额或双方各半。
  • 3 岁以下婴幼儿照护:每个婴幼儿 2000 元/月
  • 住房贷款利息1000 元/月,仅限首套住房贷款,最长扣除 240 个月。
  • 住房租金:按城市分 1500 元1100 元800 元 三档,与房贷利息不可同时享受。
  • 赡养老人:独生子女 3000 元/月,非独生子女分摊,每人不超过 1500 元/月
  • 继续教育大病医疗:继续教育按学历教育与职业资格分别定额;大病医疗按个人负担超过 15000 元 的部分扣除,限额 80000 元。具体适用口径以工具内说明和税务部门规定为准。

一个容易忽略的点:专项附加扣除在累计预扣法里也是按月累计的,所以它不仅减少全年税额,还会把跳档的时间点往后推。假设每月多 3000 元 扣除,一年就是 36000 元,恰好等于第一档的整个宽度,很多人因此全年都停留在 3% 档。

四、社保公积金:基数上下限与比例的地区差异

社保这块最容易被「按全国统一标准算」的工具算错,因为它有三层地区差异。

  • 基数上下限不同。 缴费基数一般以本人上年度月平均工资为准,但设有封顶与保底,通常参照当地上年度全口径城镇单位就业人员平均工资的 300%60%。工资高于上限按上限缴,低于下限按下限缴——这就是为什么高薪者的社保扣款并不随工资等比例上涨。
  • 缴费比例不同。 养老保险个人部分普遍为 8%,单位部分多为 16%;医疗、失业、工伤、生育的比例各地差别较大,工伤与生育通常由单位全额承担,个人不缴。
  • 公积金比例是区间。 单位与个人各在 5%12% 之间选定同一比例,具体由单位在当地允许范围内确定,并且有的地区还有补充公积金。

所以计算时必须填你所在城市的实际基数与比例,而不是套用默认值。另一个常见误算是把社保基数等同于税前月薪:如果你的月薪高于当地上限,基数应取上限;年中调基(多数地区在每年 7 月前后统一调整)也会让上下半年的扣款金额不同。

五、工龄:年假与经济补偿的计算基准

工龄不影响个税,但它决定两件与钱直接相关的事,而且用的口径不一样。

  • 法定年休假看累计工龄,也就是你在所有单位的工作年限之和:累计满 1 年不满 10 年 5 天,满 10 年不满 20 年 10 天,满 20 年 15 天。当年新入职的按剩余日历天数折算,规则是「当年度在本单位剩余日历天数 ÷ 365 × 全年应享天数,不足 1 整天不计」。
  • 经济补偿看本单位工龄(司龄),按《劳动合同法》每满一年支付一个月工资,六个月以上不满一年按一年算,不满六个月按半个月算。

把这两个口径搞混,是「我工作 12 年了为什么年假只有 5 天」这类疑问的根源——如果你刚跳槽,年假仍按累计 12 年算 10 天,而经济补偿只按新单位的司龄算。用工龄与年假计算器可以把首次参加工作日期和入职本单位日期分开填,两个口径同时得出,还会提示进入下一档的时间。

社保缴费年限则是第三个口径:按实际缴费月数算,中断不累计。领取基本养老金目前的最低缴费年限为 15 年,并且自 2030 年起将逐年提高,最终提高到 20 年,中断过缴费的人尤其要把月数核清楚。

六、常见误算原因

  • 拿税后工资去算个税。 减法顺序里个税是最后一步,用实发工资倒推必然偏高。
  • 忘记五险一金在税前扣除。 漏掉这一项会高估应纳税所得额,算出的税明显偏多。
  • 把单位缴费部分算进自己的扣款。 单位部分不影响到手工资。
  • 按单月独立计税。 这样算出的每月税额恒定,无法解释年中的到手骤减。
  • 专项附加扣除只算一个月。 累计预扣法里它按月累加,全年影响是月度值的 12 倍。
  • 社保基数用了错误的城市或未考虑上下限。 这是同样月薪在不同城市到手差异的主要来源之一。

常见问题

每月扣的税不一样,是公司算错了吗? 大概率没错。累计预扣法下预扣税额随累计所得额跳档,前低后高是正常现象,全年总额与按年计算一致。可以自己按累计公式复核一遍,或者用月度模式逐月对照。

专项附加扣除中途才填报,前几个月的能补回来吗? 一般可以在当年剩余月份由扣缴单位累计补扣,或者在次年年度汇算清缴时一并处理。具体流程以个人所得税官方渠道的说明为准。

为什么同样的月薪,我和外地同事到手差好几百? 主要是社保公积金的基数上下限与缴费比例不同,公积金比例在 5%12% 之间的选择差异尤其明显。个税部分只要扣除项相同就没有地区差异。

工具算出来的数字能直接拿去和 HR 对账吗? 可以作为核对依据,但不能当作结论。各地政策与执行口径存在差异,尤其是社保调基时点、补充公积金、企业年金等项目会影响结果,最终以工资单和官方渠道数据为准。

文中用到的工具

同类教程