Computes US federal income tax owed on taxable income using the published IRS tax rate table for a chosen tax year and filing status.
Published for review. The Founder is checking every card himself; anything he strikes comes down the same hour.
Disclaimer: General federal tax formula only, using the officially published IRS brackets for the chosen tax year. Not tax advice. State tax, credits, alternative minimum tax, and other adjustments are not included. Consult a licensed tax professional or the IRS for your actual return.
Try it
Inputs
filing_status (string, required) one of: single, married_filing_jointly, head_of_household : Filing status
taxable_income (number, currency units, required) min 0 : Taxable income for the chosen tax year (after deductions)
tax_year (string, required) one of: 2026 : Which year's published IRS bracket table to use. Only 2026 is built into this method today; a later year requires adding its table.
tax_year_source (string, required) : Citation for the tax_year bracket table (for example the IRS revenue procedure); change it together with tax_year when a newer year is added.
tax_year_date (string, ISO date, required) : The date the cited tax_year table was retrieved or published.
Outputs
tax_owed (currency units): Total federal income tax owed for the chosen tax year
Steps
The visitor supplies tax_year (which published IRS bracket table to use) plus tax_year_source and tax_year_date, the citation for that table; this method never looks up or fetches a table itself.
Select the bracket table for tax_year and filing_status.
Find the bracket row where taxable_income falls between the row's lower and upper bounds. Boundaries are inclusive of the upper bound: income exactly at a bracket's upper threshold is taxed in that (lower) bracket, matching the IRS table's 'not over' wording; the next bracket applies only to income strictly greater than the threshold.
tax_owed = the row's base amount plus its marginal rate times (taxable_income minus the row's lower bound).
Round tax_owed to 2 decimals (money to cents).
Constants
single_2026_brackets = 10% to $12,400; 12% to $50,400; 22% to $105,700; 24% to $201,775; 32% to $256,225; 35% to $640,600; 37% above rate schedule (source)
married_filing_jointly_2026_brackets = 10% to $24,800; 12% to $100,800; 22% to $211,400; 24% to $403,550; 32% to $512,450; 35% to $768,700; 37% above rate schedule (source)
head_of_household_2026_brackets = 10% to $17,700; 12% to $67,450; 22% to $105,700; 24% to $201,750; 32% to $256,200; 35% to $640,600; 37% above rate schedule (source)
Sources
Rev. Proc. 2025-32, Section 4.01 (2026 Tax Rate Tables, Tables 1-3) (Internal Revenue Service, 2026-09-30T19:31:29Z) - Official 2026 tax year inflation-adjusted tax rate tables for Married Filing Jointly, Head of Household, and Unmarried Individuals (Single); documented source of the tax_year_source/tax_year_date default values prefilled below.
Worked example and test vectors
Name
Inputs
Answer
worked example
{"filing_status":"single","taxable_income":75000,"tax_year":"2026","tax_year_source":"IRS Rev. Proc. 2025-32, Section 4.01","tax_year_date":"2026-09-30"}
$11,212.00
test vector: married filing jointly top bracket
{"filing_status":"married_filing_jointly","taxable_income":900000,"tax_year":"2026","tax_year_source":"IRS Rev. Proc. 2025-32, Section 4.01","tax_year_date":"2026-09-30"}
$255,164.50
test vector: single filer exactly at a bracket boundary
{"filing_status":"single","taxable_income":50400,"tax_year":"2026","tax_year_source":"IRS Rev. Proc. 2025-32, Section 4.01","tax_year_date":"2026-09-30"}