Calculation catalog › Social Security

Social security OASDI paid in

Employee (or self-employed) OASDI payroll tax paid over the earnings history, and on the projected work the PIA counts, each year at that year's effective statutory rate and wage base, restated in today's dollars by CPI-U; the employer's share beside each as context.

Field: OASDI paid in Unit: US dollars Basis: today's dollars (real) Computed by: UI-native Status: Complete chain

Appears in: ss-page (Paid-in table "Paid in so far (OASDI, YEAR dollars)", "What your projected work will pay (FIRST–LAST, YEAR dollars)", "Employer paid so far (context)" and "Employer's share of the projected work (context)")

Calculation records

  • Social Security tax paid in, in today's dollars Formula record, justified by derivation

    Purpose: Sum the Social Security tax paid over an earnings history, and the tax the projected work the benefit estimate counts will pay, at each year's rate and wage base, restated in today's dollars by consumer prices.

    Statement: socialSecurity/analysis/oasdiReturn.ts#oasdiPaidIn adds the history's rows by calendar year, and for each year from 1937 to the start year taxes the year's earnings capped at its contribution and benefit base (socialSecurity/ssaWageData.ts#WAGE_BASE_BY_YEAR, the latest base for a later year) at the year's effective rate (socialSecurity/oasdiTaxRates.ts#OASDI_TAX_RATE_BY_YEAR: the employee's, or the self-employed rate; the 2026 row for a later year), and restates the tax by I(y) = CPI(L)/CPI(y) x (1 + i)^(start year - L) for a year up to L, the latest year with a published CPI-U annual average (socialSecurity/cpiU.ts), and (1 + i)^(start year - y) after it, with i the plan's inflation. An entered year through the start year is paid in so far; the projected work, the years the PIA computation's earnings projection fills (passed by #oasdiReturnForPerson from socialSecurity/piaFromEarnings.ts#computePiaFromEarnings) and any entered year after the start, is taxed the same way and restated from the start year at the latest, a factor of 1 after it, since the PIA computation counts a later year at its face amount on the latest base and wage index. It publishes the person's tax and the employer's on each part, the one paid so far also as paid, and names the years it did not count: before 1937, or self-employed before 1951. Units: start-year dollars and dollars as paid. Rounding: none.

    Formula: paidInToday = sum over entered y <= start of min(E(y), base(y)) x rate(y) / 100 x I(y); projectedToday = sum over projected y of min(E(y), base(y)) x rate(y) / 100 x I(min(y, start)); I(y) = CPI(L)/CPI(y) x (1 + i)^(start - L) for y <= L, else (1 + i)^(start - y)

    • E(y): Covered earnings in year y, the rows for the year added (unit: usd/year) (domain: nonnegative)
    • base(y): Contribution and benefit base for year y (unit: usd/year) (domain: positive from 1937)
    • rate(y): Effective OASDI rate for year y: the employee's, or the self-employed rate (unit: percent) (domain: 1 to 12.4)
    • CPI(y), L: CPI-U annual average for year y; the latest year published (unit: index, year) (domain: positive; 2025)
    • i: The plan's yearly inflation (unit: rate/year) (domain: above -1)

    Timing: calendar years from 1937 to the start year, and the projected years after it

    Rounding: none; the page prints whole dollars

    Limits:

    • Restated for prices only: no interest is credited on the tax paid, while the benefits it is compared with are discounted at a real rate
    • The self-employed credits of 2.7, 2.3 and 2.0 percent in 1984, 1985 and 1986 to 1989 were allowed against the combined OASDI and HI tax and are not allocated to OASDI by the source, so the self-employed figure for those years is high by at most those credits
    • The employer exemption of 2010 for certain new hires is employer-specific and not modeled
    • Years after the latest published CPI-U annual average, and the step from it to the start year, use the plan's inflation
    • The history is taken as taxed Social Security earnings: for a self-employed year, net earnings from self-employment, with no separate self-employment deduction
    • The projected work is the PIA computation's: its assumed earnings at their face amount on the latest published base and today's rates, and only the years its window counts, through the year the person turns 61; with an entered PIA there is no projected work

    Provenance: derived by claude, implemented by claude.

    Independent review: codex

    Gates (6 of 6 pass): fixture registers a test: pass; pins resolve: pass; families exist: pass; worksheet exists: pass; mutation receipt exists: pass; provenance independent: pass

    Worksheet: oasdi-paid-in-today-dollars.md Mutation receipt: oasdi-paid-in-today-dollars.mutation.md

    Evidence tests: oasdiReturn.paidIn.evidence.test.ts

    Implemented in: oasdiReturn.ts; oasdiTaxRates.ts; cpiU.ts; ssaWageData.ts

    Is the number of: social-security-oasdi-paid-in

    Feeds: social-security-fica-return-ratio

Records that feed this number

  • Consumer Price Index annual averages Data record, justified by derivation

    Purpose: The yearly consumer price level used to restate past Social Security taxes in today's dollars.

    Statement: socialSecurity/cpiU.ts#CPI_U_ANNUAL_AVERAGE carries the annual average of the Consumer Price Index for All Urban Consumers, U.S. city average, all items, not seasonally adjusted (BLS series CUUR0000SA0, 1982-84 = 100), for each year from 1937 through 2025, #CPI_U_LATEST_YEAR. Units: index points. Rounding: none; one decimal before 2007 and three after, as published.

    Limits:

    • October 2025 was not collected; the 2025 average is the one published
    • A year after 2025 has no average, and the paid-in figure uses the plan's inflation from 2025 on

    Provenance: derived by claude, implemented by claude.

    Independent review: codex

    Gates (6 of 6 pass): fixture registers a test: pass; pins resolve: pass; families exist: pass; worksheet exists: pass; mutation receipt exists: pass; provenance independent: pass

    Worksheet: cpi-u-annual-average.md Mutation receipt: cpi-u-annual-average.mutation.md

    Evidence tests: cpiU.evidence.test.ts

    Implemented in: cpiU.ts

    Feeds: social-security-oasdi-paid-in

  • Social Security tax rates by year Data record, justified by derivation

    Purpose: The general Social Security tax rate each payer paid in each year since 1937.

    Statement: socialSecurity/oasdiTaxRates.ts#OASDI_TAX_RATE_BY_YEAR carries, for every year from 1937 through 2026, the employee's, the employer's and the self-employed OASDI tax rate in percent of taxable earnings, from the SSA table of tax rates: the trust-fund rate, except the employee's 5.4 percent in 1984 and 4.2 percent in 2011 and 2012 and the self-employed 10.4 percent in 2011 and 2012, which the table's footnotes give as the effective rates; there is no self-employed rate before 1951. Units: percent. Rounding: none; the published figures.

    Limits:

    • The self-employed credits of 1984 to 1989, which the source gives against the combined OASDI and HI tax, are not applied
    • A year after 2026 uses the 2026 rates, current law, until the table is extended
    • The rates are the general schedule, not every payer's own: for 2010 most employers were exempt from the employer's OASDI share on wages paid to certain qualified individuals hired after February 3, 2010 (the source's footnote c; 26 U.S.C. 3111(d), added by the HIRE Act, Pub. L. 111-147, section 101, and struck out in 2018), which the table does not model, so the 2010 employer rate is 6.2 percent where such wages bore 0. The same footnote's 2011 and 2012 two-point reduction for employees and the self-employed is applied: 4.2 and 10.4 percent

    Provenance: derived by claude, implemented by claude.

    Independent review: codex

    Gates (6 of 6 pass): fixture registers a test: pass; pins resolve: pass; families exist: pass; worksheet exists: pass; mutation receipt exists: pass; provenance independent: pass

    Worksheet: oasdi-tax-rate-history.md Mutation receipt: oasdi-tax-rate-history.mutation.md

    Evidence tests: oasdiTaxRates.evidence.test.ts

    Implemented in: oasdiTaxRates.ts

    Feeds: social-security-oasdi-paid-in

Transformations

  • socialSecurity/analysis/oasdiReturn.ts#oasdiPaidIn: for each entered year from 1937 to the start year, the year's earnings capped at its contribution and benefit base, times its effective rate (socialSecurity/oasdiTaxRates.ts), times CPI-U(latest)/CPI-U(year) and the plan's inflation from the latest CPI-U year to the start year (paid in so far); the projected years the PIA computation fills, and entered years after the start, taxed the same way at their face amount (the projected work); years before 1937, or self-employed before 1951, are named and not counted.

The evidence links on this page (each record's worksheet, mutation receipt, evidence tests and implementation, and the source links) are pinned to engine commit 2624dbdba9fd, committed 2026-10-11. The live calculation index and output-family census links point at the repository's main branch, so you can check this snapshot against them.