How Much Will BPJS Ketenagakerjaan Actually Pay You at Retirement? The Real JHT and JP Math
6 min read
6 min read
Every payslip in Indonesia carries a line for BPJS Ketenagakerjaan, and most people never look past it. Earn Rp10,000,000 a month and Rp200,000 comes straight out of your take-home pay for it, with your employer quietly adding more on top. That is a mandatory, government-run retirement system you are already funding. The question this retirement payout calculation actually answers is simple: what does all of that turn into once you retire?
The honest answer needs two separate calculations, because BPJS Ketenagakerjaan runs two different retirement programs, not one, and they pay out in completely different ways.
JHT (Jaminan Hari Tua) works like a mandatory savings account. Every month, a fixed percentage of your wage goes into a balance with your name on it. That balance grows with contributions plus an annual "hasil pengembangan," the investment return BPJS Ketenagakerjaan credits to your account each year. When you qualify to withdraw, you get the whole thing as one lump sum.
JP (Jaminan Pensiun) works like a small state pension. A separate, smaller percentage of your wage goes toward it, and once you reach the JP retirement age with enough years contributed, BPJS Ketenagakerjaan pays you a fixed amount every month for the rest of your life, not a lump sum.
Most explainers stop at "there are two programs." The part that actually matters is what each one pays, and for that you need the real contribution rates and the real formulas.
| Program | Total rate | You pay | Employer pays | Wage used |
|---|---|---|---|---|
| JHT | 5.7% | 2% | 3.7% | Your full actual wage, no cap |
| JP | 3% | 1% | 2% | Capped at Rp11,086,300/month |
Combined, 8.7% of a capped wage goes into these two programs every month, most of it from your employer rather than your own paycheck (Talenta, 2026; BPJS Ketenagakerjaan circular letter B/1226/022026, 25 February 2026).
That JP wage cap matters and it changes over time. It sat at Rp10,547,400 from March 2025 until BPJS Ketenagakerjaan raised it to Rp11,086,300, effective March 2026, tied to Indonesia's GDP growth under the formula in Government Regulation (PP) No. 45 of 2015. Older calculators and articles still online quote the previous figure. If you find a JP number anywhere that does not match this cap, it is stale.
Your JHT balance is simply every contribution you and your employer ever made, plus whatever "hasil pengembangan" got credited on top each year.
JHT balance = sum of all monthly contributions + annual investment return credited on the balance
BPJS Ketenagakerjaan does not publish a single guaranteed annual rate; the actual credited return moves with how the fund performs. Financial explainers commonly run their illustrations at a 5% annual assumption, so this example does the same, and it should be read as an illustration, not a promise.
Take a worker earning a flat Rp10,000,000 a month for 25 years, ignoring raises to keep the math simple. JHT contributions are Rp570,000 a month, or Rp6,840,000 a year. Compounded once a year at that 5% assumption, the balance after 25 years works out to roughly Rp326,000,000, paid out as a single lump sum whenever the worker qualifies to withdraw it. A real raise every few years would push that final number higher, since more money would be compounding for longer.
JP uses a completely different formula, fixed in PP No. 45 of 2015.
Monthly JP benefit = 1% × years of contributions × average monthly wage (capped)
Using the same Rp10,000,000 wage, which sits under the Rp11,086,300 cap so the full amount counts, and the same 25 years of contributions: 1% × 25 × Rp10,000,000 = Rp2,500,000 a month, for life, starting once the worker reaches the JP retirement age. A published BPJS-adjacent worked example confirms the same formula at a different income level: 22 years of contributions on a Rp5,000,000 wage lands close to Rp1,100,000 a month, which is exactly what 1% × 22 × Rp5,000,000 predicts.
Two conditions gate that monthly payment. First, at least 15 years (180 months) of contributions; fall short and you get your JP contributions back as a lump sum instead of a monthly benefit. Second, the JP retirement age itself, which is not fixed. PP No. 45 of 2015 set it at 56 starting in 2015 and raises it by one year every three years: 57 in 2019, 58 in 2022, 59 in 2025, on its way to 65 by 2043. Anyone reaching JP retirement age in 2026 needs to be 59.
JHT and JP release on different schedules, and mixing them up is the most common mistake.
JHT pays out in full at age 56, or earlier if you resign or are laid off and wait one month while staying out of work (BPJS Ketenagakerjaan itself has confirmed you no longer need a paklaring, an old employment-separation letter, to file that claim). If you are still employed and have been a participant for at least 10 years, you can also withdraw a partial amount early: either 10% for general pre-retirement needs or 30% for a home purchase, whichever you pick, not both.
JP only starts once you hit the JP retirement age described above, and only pays monthly if you have 15+ years of contributions by then. There is no early or partial JP withdrawal option the way JHT has one.
Put the two together for the Rp10,000,000-a-month example above: Rp2,500,000 a month for life from JP, plus a Rp326,000,000 lump sum from JHT that could stretch to roughly Rp1,360,000 a month if spread evenly over 20 years of retirement. That is about Rp3,860,000 a month against a Rp10,000,000 working salary, an income replacement of well under half.
That gap is not a flaw in the math. BPJS Ketenagakerjaan was never designed to fully replace a working income on its own; it is a mandatory floor, not a full retirement plan. What closes the rest of the gap is whatever you save and invest separately.
Run your own wage through the two formulas above to see your own floor. Then check it against what you are actually on track to have by comparing it with your NetWort Dashboard, which tracks your real portfolio value over time, so you can see exactly how much of the gap between that BPJS floor and the retirement you actually want is still unfunded.