年収○千万円は税金で半分持っていかれる、というのは本当なのか?

ここでポチポチ入力しながら遊んでいた。
最新手取り給与計算機|手取り給与に落胆!? 知っておきたい手取りと額面の違い | ファンジョブ


税金計算というのをほとんどやったことがない。というのは確定申告くらいはしたことあるので言い過ぎだが、かといって確定申告もウェブ上でポチポチやっているだけなので、実際に何がどれくらいかかって税金として徴収されているのかは知らない、というのが現状である。
ものすごい雑には、健康保険料、健康保険料、介護保険料、厚生年金保険料、雇用保険料が(額面)給与から引かれ、その引かれた額について、扶養家族人数を考慮した上で源泉所得税が適応され、最終的な手取り額、となる。
ここで、各種税金は都道府県単位で表が存在しているが、とある自治体を選択したとして、源泉所得税の計算表は、(色々税金を引かれた上で)対象額が月額740000円までなら対応表が存在していて、740000円を超えると、740000円までは計算表で、740000円を超える部分には20.42%に相当する金額を加算する、とある。これは3,500,000円まで段階が作ってあり、この時点では3,500,000円を超えた部分の45.945%が徴収される、ということになる。これを指して「高収入は半分税金に持っていかれる」といっているのだと思う。

というわけで税金シミュレーターを作成した。45歳(介護保険料を支払うため)、扶養家族3人と仮定した。
月収50万(額面年収600万)から10万円ごとに月収を増加させたときの手取りは、以下のようになる。
f:id:MikuHatsune:20210926230527p:plain
\Delta手取り/\Delta月収を考えると、月収200万(額面年収2400万)からおよそ59%の手取り増加、月収380万(額面年収4560万)からおよそ54%の手取り増加、となる。
f:id:MikuHatsune:20210926231148p:plain

f <- function(income, age=35, p_koyo=3/1000, n_fuyo=0,
              gensen=c(20.42, 23.483, 33.693, 40.84, 40.84, 40.84, 40.84)/100){
  idx <- which(income <= a[,4])[1]
  kaigo <- ifelse(age>=40 & age <= 65, a[idx, 7], 0)
  kenko <- a[idx, 6]
  kosei <- a[idx, 9]
  koyo <- income*p_koyo
  out <- income-kaigo-kenko-kosei-koyo
  j <- which(out <= b[,2])[1]
  gensensyotokuzei <- round((out - b[j, 1])*b[j, 10] + b[j, 3+n_fuyo])
  res <- c("健康保険"=kenko, "介護保険"=kaigo, "厚生年金"=kosei, "雇用保険"=koyo, "源泉所得税"=gensensyotokuzei)
  return(res)
}


income <- seq(500000, 100000000/12, by=100000)
g <- mapply(f, income, age=45, n_fuyo=3)
y <- income - colSums(g)
income <- income/10000
y <- y/10000
xl <- yl <- c(0, max(income, y))

par(mar=c(5, 5, 3, 4), cex.lab=1.5, cex.axis=1.2)
plot(income, y, xlim=xl, ylim=yl, type="o", pch=15, xlab="月収", ylab="手取り月収")
abline(0, 1, lty=3)
pa <- par()
xx <- seq(pa$xaxp[1], pa$xaxp[2], length=pa$xaxp[3]+1)
axis(3, at=xx, labels=xx*12)
axis(4, at=xx, labels=xx*12)

d <- diff(y)/diff(income)
yl <- c(0, 1)
par(mar=c(5, 5, 3, 2), cex.lab=1.5, cex.axis=1.2, las=1)
plot(income[-1], d, xlim=xl, ylim=yl, type="o", pch=15, xlab="月収", ylab="手取りの増分/月収の増分")
pa <- par()
xx <- seq(pa$xaxp[1], pa$xaxp[2], length=pa$xaxp[3]+1)
axis(3, at=xx, labels=xx*12)
a <- read.csv(text="
健,年,報酬月額下限,報酬月額上限,月額,健康保険,介護保険,健康+介護,厚生年金
1,1,0,63000,58000,2917,522,3439.40,8052
2,1,63000,73000,68000,3420,612,4032.40,8052
3,1,73000,83000,78000,3923,702,4625.40,8052
4,1,83000,93000,88000,4426,792,5218.40,8052
5,2,93000,101000,98000,4929,882,5811.40,8967
6,3,101000,107000,104000,5231,936,6167.20,9516
7,4,107000,114000,110000,5533,990,6523.00,10065
8,5,114000,122000,118000,5935,1062,6997.40,10797
9,6,122000,130000,126000,6338,1134,7471.80,11529
10,7,130000,138000,134000,6740,1206,7946.20,12261
11,8,138000,146000,142000,7143,1278,8420.60,12993
12,9,146000,155000,150000,7545,1350,8895.00,13725
13,10,155000,165000,160000,8048,1440,9488.00,14640
14,11,165000,175000,170000,8551,1530,10081.00,15555
15,12,175000,185000,180000,9054,1620,10674.00,16470
16,13,185000,195000,190000,9557,1710,11267.00,17385
17,14,195000,210000,200000,10060,1800,11860.00,18300
18,15,210000,230000,220000,11066,1980,13046.00,20130
19,16,230000,250000,240000,12072,2160,14232.00,21960
20,17,250000,270000,260000,13078,2340,15418.00,23790
21,18,270000,290000,280000,14084,2520,16604.00,25620
22,19,290000,310000,300000,15090,2700,17790.00,27450
23,20,310000,330000,320000,16096,2880,18976.00,29280
24,21,330000,350000,340000,17102,3060,20162.00,31110
25,22,350000,370000,360000,18108,3240,21348.00,32940
26,23,370000,395000,380000,19114,3420,22534.00,34770
27,24,395000,425000,410000,20623,3690,24313.00,37515
28,25,425000,455000,440000,22132,3960,26092.00,40260
29,26,455000,485000,470000,23641,4230,27871.00,43005
30,27,485000,515000,500000,25150,4500,29650.00,45750
31,28,515000,545000,530000,26659,4770,31429.00,48495
32,29,545000,575000,560000,28168,5040,33208.00,51240
33,30,575000,605000,590000,29677,5310,34987.00,53985
34,31,605000,635000,620000,31186,5580,36766.00,56730
35,32,635000,665000,650000,32695,5850,38545.00,59475
36,32,665000,695000,680000,34204,6120,40324.00,59475
37,32,695000,730000,710000,35713,6390,42103.00,59475
38,32,730000,770000,750000,37725,6750,44475.00,59475
39,32,770000,810000,790000,39737,7110,46847.00,59475
40,32,810000,855000,830000,41749,7470,49219.00,59475
41,32,855000,905000,880000,44264,7920,52184.00,59475
42,32,905000,955000,930000,46779,8370,55149.00,59475
43,32,955000,1005000,980000,49294,8820,58114.00,59475
44,32,1005000,1055000,1030000,51809,9270,61079.00,59475
45,32,1055000,1115000,1090000,54827,9810,64637.00,59475
46,32,1115000,1175000,1150000,57845,10350,68195.00,59475
47,32,1175000,1235000,1210000,60863,10890,71753.00,59475
48,32,1235000,1295000,1270000,63881,11430,75311.00,59475
49,32,1295000,1355000,1330000,66899,11970,78869.00,59475
50,32,1355000,99999999999,1390000,69917,12510,82427.00,59475
", header=TRUE)


b <- read.table(text="
88000 89000 130 0 0 0 0 0 0 0
89000 90000 180 0 0 0 0 0 0 0
90000 91000 230 0 0 0 0 0 0 0
91000 92000 290 0 0 0 0 0 0 0
92000 93000 340 0 0 0 0 0 0 0
93000 94000 390 0 0 0 0 0 0 0
94000 95000 440 0 0 0 0 0 0 0
95000 96000 490 0 0 0 0 0 0 0
96000 97000 540 0 0 0 0 0 0 0
97000 98000 590 0 0 0 0 0 0 0
98000 99000 640 0 0 0 0 0 0 0
99000 101000 720 0 0 0 0 0 0 0
101000 103000 830 0 0 0 0 0 0 0
103000 105000 930 0 0 0 0 0 0 0
105000 107000 1030 0 0 0 0 0 0 0
107000 109000 1130 0 0 0 0 0 0 0
109000 111000 1240 0 0 0 0 0 0 0
111000 113000 1340 0 0 0 0 0 0 0
113000 115000 1440 0 0 0 0 0 0 0
115000 117000 1540 0 0 0 0 0 0 0
117000 119000 1640 0 0 0 0 0 0 0
119000 121000 1750 120 0 0 0 0 0 0
121000 123000 1850 220 0 0 0 0 0 0
123000 125000 1950 330 0 0 0 0 0 0
125000 127000 2050 430 0 0 0 0 0 0
127000 129000 2150 530 0 0 0 0 0 0
129000 131000 2260 630 0 0 0 0 0 0
131000 133000 2360 740 0 0 0 0 0 0
133000 135000 2460 840 0 0 0 0 0 0
135000 137000 2550 930 0 0 0 0 0 0
137000 139000 2610 990 0 0 0 0 0 0
139000 141000 2680 1050 0 0 0 0 0 0
141000 143000 2740 1110 0 0 0 0 0 0
143000 145000 2800 1170 0 0 0 0 0 0
145000 147000 2860 1240 0 0 0 0 0 0
147000 149000 2920 1300 0 0 0 0 0 0
149000 151000 2980 1360 0 0 0 0 0 0
151000 153000 3050 1430 0 0 0 0 0 0
153000 155000 3120 1500 0 0 0 0 0 0
155000 157000 3200 1570 0 0 0 0 0 0
157000 159000 3270 1640 0 0 0 0 0 0
159000 161000 3340 1720 100 0 0 0 0 0
161000 163000 3410 1790 170 0 0 0 0 0
163000 165000 3480 1860 250 0 0 0 0 0
165000 167000 3550 1930 320 0 0 0 0 0
167000 169000 3620 2000 390 0 0 0 0 0
169000 171000 3700 2070 460 0 0 0 0 0
171000 173000 3770 2140 530 0 0 0 0 0
173000 175000 3840 2220 600 0 0 0 0 0
175000 177000 3910 2290 670 0 0 0 0 0
177000 179000 3980 2360 750 0 0 0 0 0
179000 181000 4050 2430 820 0 0 0 0 0
181000 183000 4120 2500 890 0 0 0 0 0
183000 185000 4200 2570 960 0 0 0 0 0
185000 187000 4270 2640 1030 0 0 0 0 0
187000 189000 4340 2720 1100 0 0 0 0 0
189000 191000 4410 2790 1170 0 0 0 0 0
191000 193000 4480 2860 1250 0 0 0 0 0
193000 195000 4550 2930 1320 0 0 0 0 0
195000 197000 4630 3000 1390 0 0 0 0 0
197000 199000 4700 3070 1460 0 0 0 0 0
199000 201000 4770 3140 1530 0 0 0 0 0
201000 203000 4840 3220 1600 0 0 0 0 0
203000 205000 4910 3290 1670 0 0 0 0 0
205000 207000 4980 3360 1750 130 0 0 0 0
207000 209000 5050 3430 1820 200 0 0 0 0
209000 211000 5130 3500 1890 280 0 0 0 0
211000 213000 5200 3570 1960 350 0 0 0 0
213000 215000 5270 3640 2030 420 0 0 0 0
215000 217000 5340 3720 2100 490 0 0 0 0
217000 219000 5410 3790 2170 560 0 0 0 0
219000 221000 5480 3860 2250 630 0 0 0 0
221000 224000 5560 3950 2340 710 0 0 0 0
224000 227000 5680 4060 2440 830 0 0 0 0
227000 230000 5780 4170 2550 930 0 0 0 0
230000 233000 5890 4280 2650 1040 0 0 0 0
233000 236000 5990 4380 2770 1140 0 0 0 0
236000 239000 6110 4490 2870 1260 0 0 0 0
239000 242000 6210 4590 2980 1360 0 0 0 0
242000 245000 6320 4710 3080 1470 0 0 0 0
245000 248000 6420 4810 3200 1570 0 0 0 0
248000 251000 6530 4920 3300 1680 0 0 0 0
251000 254000 6640 5020 3410 1790 170 0 0 0
254000 257000 6750 5140 3510 1900 290 0 0 0
257000 260000 6850 5240 3620 2000 390 0 0 0
260000 263000 6960 5350 3730 2110 500 0 0 0
263000 266000 7070 5450 3840 2220 600 0 0 0
266000 269000 7180 5560 3940 2330 710 0 0 0
269000 272000 7280 5670 4050 2430 820 0 0 0
272000 275000 7390 5780 4160 2540 930 0 0 0
275000 278000 7490 5880 4270 2640 1030 0 0 0
278000 281000 7610 5990 4370 2760 1140 0 0 0
281000 284000 7710 6100 4480 2860 1250 0 0 0
284000 287000 7820 6210 4580 2970 1360 0 0 0
287000 290000 7920 6310 4700 3070 1460 0 0 0
290000 293000 8040 6420 4800 3190 1570 0 0 0
293000 296000 8140 6520 4910 3290 1670 0 0 0
296000 299000 8250 6640 5010 3400 1790 160 0 0
299000 302000 8420 6740 5130 3510 1890 280 0 0
302000 305000 8670 6860 5250 3630 2010 400 0 0
305000 308000 8910 6980 5370 3760 2130 520 0 0
308000 311000 9160 7110 5490 3880 2260 640 0 0
311000 314000 9400 7230 5620 4000 2380 770 0 0
314000 317000 9650 7350 5740 4120 2500 890 0 0
317000 320000 9890 7470 5860 4250 2620 1010 0 0
320000 323000 10140 7600 5980 4370 2750 1130 0 0
323000 326000 10380 7720 6110 4490 2870 1260 0 0
326000 329000 10630 7840 6230 4610 2990 1380 0 0
329000 332000 10870 7960 6350 4740 3110 1500 0 0
332000 335000 11120 8090 6470 4860 3240 1620 0 0
335000 338000 11360 8210 6600 4980 3360 1750 130 0
338000 341000 11610 8370 6720 5110 3480 1870 260 0
341000 344000 11850 8620 6840 5230 3600 1990 380 0
344000 347000 12100 8860 6960 5350 3730 2110 500 0
347000 350000 12340 9110 7090 5470 3850 2240 620 0
350000 353000 12590 9350 7210 5600 3970 2360 750 0
353000 356000 12830 9600 7330 5720 4090 2480 870 0
356000 359000 13080 9840 7450 5840 4220 2600 990 0
359000 362000 13320 10090 7580 5960 4340 2730 1110 0
362000 365000 13570 10330 7700 6090 4460 2850 1240 0
365000 368000 13810 10580 7820 6210 4580 2970 1360 0
368000 371000 14060 10820 7940 6330 4710 3090 1480 0
371000 374000 14300 11070 8070 6450 4830 3220 1600 0
374000 377000 14550 11310 8190 6580 4950 3340 1730 0
377000 380000 14790 11560 8320 6700 5070 3460 1850 0
380000 383000 15040 11800 8570 6820 5200 3580 1970 0
383000 386000 15280 12050 8810 6940 5320 3710 2090 0
386000 389000 15530 12290 9060 7070 5440 3830 2220 0
389000 392000 15770 12540 9300 7190 5560 3950 2340 0
392000 395000 16020 12780 9550 7310 5690 4070 2460 0
395000 398000 16260 13030 9790 7430 5810 4200 2580 0
398000 401000 16510 13270 10040 7560 5930 4320 2710 0
401000 404000 16750 13520 10280 7680 6050 4440 2830 0
404000 407000 17000 13760 10530 7800 6180 4560 2950 0
407000 410000 17240 14010 10770 7920 6300 4690 3070 0
410000 413000 17490 14250 11020 8050 6420 4810 3200 0
413000 416000 17730 14500 11260 8170 6540 4930 3320 0
416000 419000 17980 14740 11510 8290 6670 5050 3440 0
419000 422000 18220 14990 11750 8530 6790 5180 3560 0
422000 425000 18470 15230 12000 8770 6910 5300 3690 0
425000 428000 18710 15480 12240 9020 7030 5420 3810 0
428000 431000 18960 15720 12490 9260 7160 5540 3930 0
431000 434000 19210 15970 12730 9510 7280 5670 4050 0
434000 437000 19450 16210 12980 9750 7400 5790 4180 0
437000 440000 19700 16460 13220 10000 7520 5910 4300 0
440000 443000 20090 16700 13470 10240 7650 6030 4420 0
443000 446000 20580 16950 13710 10490 7770 6160 4540 0
446000 449000 21070 17190 13960 10730 7890 6280 4670 0
449000 452000 21560 17440 14200 10980 8010 6400 4790 0
452000 455000 22050 17680 14450 11220 8140 6520 4910 0
455000 458000 22540 17930 14690 11470 8260 6650 5030 0
458000 461000 23030 18170 14940 11710 8470 6770 5160 0
461000 464000 23520 18420 15180 11960 8720 6890 5280 0
464000 467000 24010 18660 15430 12200 8960 7010 5400 0
467000 470000 24500 18910 15670 12450 9210 7140 5520 0
470000 473000 24990 19150 15920 12690 9450 7260 5650 0
473000 476000 25480 19400 16160 12940 9700 7380 5770 0
476000 479000 25970 19640 16410 13180 9940 7500 5890 0
479000 482000 26460 20000 16650 13430 10190 7630 6010 0
482000 485000 26950 20490 16900 13670 10430 7750 6140 0
485000 488000 27440 20980 17140 13920 10680 7870 6260 0
488000 491000 27930 21470 17390 14160 10920 7990 6380 0
491000 494000 28420 21960 17630 14410 11170 8120 6500 0
494000 497000 28910 22450 17880 14650 11410 8240 6630 0
497000 500000 29400 22940 18120 14900 11660 8420 6750 0
500000 503000 29890 23430 18370 15140 11900 8670 6870 0
503000 506000 30380 23920 18610 15390 12150 8910 6990 0
506000 509000 30880 24410 18860 15630 12390 9160 7120 0
509000 512000 31370 24900 19100 15880 12640 9400 7240 0
512000 515000 31860 25390 19350 16120 12890 9650 7360 0
515000 518000 32350 25880 19590 16370 13130 9890 7480 0
518000 521000 32840 26370 19900 16610 13380 10140 7610 0
521000 524000 33330 26860 20390 16860 13620 10380 7730 0
524000 527000 33820 27350 20880 17100 13870 10630 7850 0
527000 530000 34310 27840 21370 17350 14110 10870 7970 0
530000 533000 34800 28330 21860 17590 14360 11120 8100 0
533000 536000 35290 28820 22350 17840 14600 11360 8220 0
536000 539000 35780 29310 22840 18080 14850 11610 8380 0
539000 542000 36270 29800 23330 18330 15090 11850 8630 0
542000 545000 36760 30290 23820 18570 15340 12100 8870 0
545000 548000 37250 30780 24310 18820 15580 12340 9120 0
548000 551000 37740 31270 24800 19060 15830 12590 9360 0
551000 554000 38280 31810 25340 19330 16100 12860 9630 0
554000 557000 38830 32370 25890 19600 16380 13140 9900 0
557000 560000 39380 32920 26440 19980 16650 13420 10180 0
560000 563000 39930 33470 27000 20530 16930 13690 10460 0
563000 566000 40480 34020 27550 21080 17200 13970 10730 0
566000 569000 41030 34570 28100 21630 17480 14240 11010 0
569000 572000 41590 35120 28650 22190 17760 14520 11280 0
572000 575000 42140 35670 29200 22740 18030 14790 11560 0
575000 578000 42690 36230 29750 23290 18310 15070 11830 0
578000 581000 43240 36780 30300 23840 18580 15350 12110 0
581000 584000 43790 37330 30850 24390 18860 15620 12380 0
584000 587000 44340 37880 31410 24940 19130 15900 12660 0
587000 590000 44890 38430 31960 25490 19410 16170 12940 0
590000 593000 45440 38980 32510 26050 19680 16450 13210 0
593000 596000 46000 39530 33060 26600 20130 16720 13490 0
596000 599000 46550 40080 33610 27150 20690 17000 13760 0
599000 602000 47100 40640 34160 27700 21240 17280 14040 0
602000 605000 47650 41190 34710 28250 21790 17550 14310 0
605000 608000 48200 41740 35270 28800 22340 17830 14590 0
608000 611000 48750 42290 35820 29350 22890 18100 14870 0
611000 614000 49300 42840 36370 29910 23440 18380 15140 0
614000 617000 49860 43390 36920 30460 23990 18650 15420 0
617000 620000 50410 43940 37470 31010 24540 18930 15690 0
620000 623000 50960 44500 38020 31560 25100 19210 15970 0
623000 626000 51510 45050 38570 32110 25650 19480 16240 0
626000 629000 52060 45600 39120 32660 26200 19760 16520 0
629000 632000 52610 46150 39680 33210 26750 20280 16800 0
632000 635000 53160 46700 40230 33760 27300 20830 17070 0
635000 638000 53710 47250 40780 34320 27850 21380 17350 0
638000 641000 54270 47800 41330 34870 28400 21930 17620 0
641000 644000 54820 48350 41880 35420 28960 22480 17900 0
644000 647000 55370 48910 42430 35970 29510 23030 18170 0
647000 650000 55920 49460 42980 36520 30060 23590 18450 0
650000 653000 56470 50010 43540 37070 30610 24140 18730 0
653000 656000 57020 50560 44090 37620 31160 24690 19000 0
656000 659000 57570 51110 44640 38180 31710 25240 19280 0
659000 662000 58130 51660 45190 38730 32260 25790 19550 0
662000 665000 58680 52210 45740 39280 32810 26340 19880 0
665000 668000 59230 52770 46290 39830 33370 26890 20430 0
668000 671000 59780 53320 46840 40380 33920 27440 20980 0
671000 674000 60330 53870 47390 40930 34470 28000 21530 0
674000 677000 60880 54420 47950 41480 35020 28550 22080 0
677000 680000 61430 54970 48500 42030 35570 29100 22640 0
680000 683000 61980 55520 49050 42590 36120 29650 23190 0
683000 686000 62540 56070 49600 43140 36670 30200 23740 0
686000 689000 63090 56620 50150 43690 37230 30750 24290 0
689000 692000 63640 57180 50700 44240 37780 31300 24840 0
692000 695000 64190 57730 51250 44790 38330 31860 25390 0
695000 698000 64740 58280 51810 45340 38880 32410 25940 0
698000 701000 65290 58830 52360 45890 39430 32960 26490 0
701000 704000 65840 59380 52910 46450 39980 33510 27050 0
704000 707000 66400 59930 53460 47000 40530 34060 27600 0
707000 710000 66960 60480 54020 47550 41090 34620 28150 0
710000 713000 67570 61100 54630 48160 41700 35230 28760 0
713000 716000 68180 61710 55250 48770 42310 35850 29370 0
716000 719000 68790 62320 55860 49390 42920 36460 29990 0
719000 722000 69410 62930 56470 50000 43540 37070 30600 0
722000 725000 70020 63550 57080 50610 44150 37690 31210 0
725000 728000 70630 64160 57700 51220 44760 38300 31820 0
728000 731000 71250 64770 58310 51840 45370 38910 32440 0
731000 734000 71860 65380 58920 52450 45990 39520 33050 0
734000 737000 72470 66000 59530 53060 46600 40140 33660 0
737000 740000 73080 66610 60150 53670 47210 40750 34270 0
740000 780000 73390 66920 60450 53980 47520 41050 34580 0.2042
780000 950000 81560 75090 68620 62150 55690 49220 42750 0.23483
950000 1700000 121480 115010 108540 102070 95610 89140 82670 0.33693
1700000 2170000 374180 367710 361240 354770 348310 341840 335370 0.4084
2170000 2210000 571570 565090 558630 552160 545690 539230 532760 0.4084
2210000 2250000 593340 586870 580410 573930 567470 561010 554540 0.4084
2250000 3500000 615120 608650 602190 595710 589250 582790 576310 0.4084
3500000 9999999999 1125620 1119150 1112690 1106210 1099750 1093290 1086810 0.45945
", header=FALSE)