Provenance and authority

Where PaycheckCalc's tax numbers come from

By Barron Hansen, Founder · Updated July 12, 2026

PaycheckCalc pulls every rate, bracket, wage base, and limit from the authority that issues it. Federal numbers come from the IRS (Revenue Procedures, Notices, Publication 15 and 15-T, and the printed Form W-4), from the Social Security Administration for the wage base, and from the United States Code where a figure is fixed by statute. State numbers come from each state's department of revenue or taxation, or from the statute a legislature enacted. Aggregators like the Tax Foundation are used only to locate a primary document, never as the citation itself. Two dates travel with each figure. The tax year is the year the figure describes. The verified date is the day we last read the source. A number can be verified this month and still describe an earlier tax year, and when that happens we say so instead of hiding a stale value behind a fresh read date. Some figures are not yet on a clean, current-year primary source. We do not drop them or round them off. They stay in the calculator at their best available value and appear in the Known gaps section below, with the source we do have and the work that will close each one.

Federal sources

Federal credits, contribution limits, pre-tax fringe caps, supplemental-wage rates, the Pub 15-T withholding schedules, the W-4 Step 3 multipliers, and the OBBBA overtime and tips deductions. Each value renders from the same figure the calculator applies.

FigureValueIssuing authorityDocumentTax yearLast verifiedTierStatus
Child Tax Credit (per qualifying child under 17)$2,200Internal Revenue Serviceirs.gov20262026-07-10primaryCurrent
Additional Child Tax Credit refundable cap (per child)$1,700Internal Revenue Serviceirs.gov20262026-07-10primaryCurrent
Credit for Other Dependents (per dependent)$500Office of the Law Revision Counseluscode.house.gov20262026-07-10primaryCurrent
CTC / ODC phase-out threshold, married filing jointly$400,000Office of the Law Revision Counseluscode.house.gov20262026-07-10primaryCurrent
CTC / ODC phase-out threshold, all other statuses$200,000Office of the Law Revision Counseluscode.house.gov20262026-07-10primaryCurrent
CTC / ODC phase-out rate$50 per $1,000 over thresholdOffice of the Law Revision Counseluscode.house.gov20262026-07-10primaryCurrent
W-4 Step 3 credit for qualifying children (per child)$2,200Internal Revenue Serviceirs.gov20262026-07-10primaryCurrent
W-4 Step 3 credit for other dependents (per dependent)$500Internal Revenue Serviceirs.gov20262026-07-10primaryCurrent
401(k) / 403(b) / 457(b) elective deferral limit$24,500 (+$8,000 age 50+)Internal Revenue Serviceirs.gov20262026-07-10primaryCurrent
HSA contribution limit$4,400 self / $8,750 familyInternal Revenue Serviceirs.gov20262026-07-10primaryCurrent
Health FSA salary-reduction limit$3,400/yearInternal Revenue Serviceirs.gov20262026-06-23primaryCurrent
Health FSA carryover maximum$680/yearInternal Revenue Serviceirs.gov20262026-06-23primaryCurrent
Dependent-care FSA (DCAP) limit$7,500/year26 U.S.C. §129 (OBBBA, P.L. 119-21)uscode.house.gov20262026-06-23primaryCurrent
Dependent-care FSA (DCAP), married filing separately$3,750/year26 U.S.C. §129 (OBBBA, P.L. 119-21)uscode.house.gov20262026-06-23primaryCurrent
Commuter transit benefit (monthly exclusion)$340/monthInternal Revenue Serviceirs.gov20262026-06-23primaryCurrent
Commuter parking benefit (monthly exclusion)$340/monthInternal Revenue Serviceirs.gov20262026-06-23primaryCurrent
Federal supplemental (bonus) flat rate22%Internal Revenue Serviceirs.gov20262026-06-23primaryCurrent
Federal supplemental mandatory rate (above the high-rate threshold)37%Internal Revenue Serviceirs.gov20262026-06-23primaryCurrent
Federal supplemental high-rate threshold$1,000,000Internal Revenue Serviceirs.gov20262026-06-23primaryCurrent
Federal income tax withholding schedules (Pub 15-T percentage method)2026 tablesInternal Revenue Serviceirs.gov20262026-06-25primaryCurrent
OBBBA overtime deduction cap$12,500 single / $25,000 MFJInternal Revenue Serviceirs.gov20262026-06-24primaryCurrent
OBBBA overtime / tips deduction MAGI phase-out threshold$150,000 single / $300,000 MFJInternal Revenue Serviceirs.gov20262026-06-24primaryCurrent
OBBBA tips deduction cap (per return)$25,000Internal Revenue Serviceirs.gov20262026-06-24primaryCurrent
OBBBA deduction phase-out rate$100 per $1,000 over thresholdInternal Revenue Serviceirs.gov20262026-06-24primaryCurrent
OBBBA deduction effective tax years2025 to 2028Internal Revenue Serviceirs.gov20262026-06-24primaryCurrent

State income tax

One row per jurisdiction. Each state anchors to its own id, so a state calculator page can cite its schedule here directly (for example, this page's Georgia row is at /sources#georgia). States whose 2026 bracket schedule is not yet on a structured primary source are marked pending verification and linked to the gap below.

StateValueIssuing authorityDocumentTax yearLast verifiedTierStatus
AlabamaGraduated (3 brackets)Alabama Department of Revenuerevenue.alabama.gov20262026-05-27primaryCurrent
AlaskaNo state income tax on wages-----Current
ArizonaFlat 2.5%Arizona Department of Revenueazdor.gov20262026-05-27primaryCurrent
ArkansasGraduated (5 brackets)Arkansas Department of Finance and Administrationdfa.arkansas.gov20262026-07-10primaryCurrent
CaliforniaGraduated (9 brackets)California Franchise Tax Boardftb.ca.gov20252026-06-25primaryPending verification
ColoradoFlat 4.4%Colorado Department of Revenuetax.colorado.gov20262026-05-27primaryCurrent
ConnecticutGraduated (7 brackets)Connecticut Department of Revenue Servicesportal.ct.gov20262026-05-27primaryCurrent
DelawareGraduated (7 brackets)Delaware Division of Revenuerevenue.delaware.gov20262026-06-25primaryCurrent
FloridaNo state income tax on wages-----Current
GeorgiaFlat 4.99%Georgia Department of Revenuedor.georgia.gov20262026-07-10primaryCurrent
HawaiiGraduated (12 brackets)Hawaii Department of Taxationtax.hawaii.gov20262026-06-25primaryCurrent
IdahoFlat 5.3%Idaho State Tax Commissiontax.idaho.gov20262026-06-23primaryCurrent
IllinoisFlat 4.95%Illinois Department of Revenuetax.illinois.gov20262026-05-27primaryCurrent
IndianaFlat 2.95%Indiana Department of Revenuein.gov20262026-05-27primaryCurrent
IowaFlat 3.8%Iowa Department of Revenuetax.iowa.gov20262026-05-27primaryCurrent
KansasGraduated (2 brackets)Kansas Department of Revenue (Notice 24-08)ksrevenue.gov20262026-07-10primaryCurrent
KentuckyFlat 3.5%Kentucky Department of Revenuerevenue.ky.gov20262026-05-27primaryCurrent
LouisianaFlat 3%Louisiana Department of Revenuerevenue.louisiana.gov20262026-05-27primaryCurrent
MaineGraduated (3 brackets)Maine Revenue Servicesmaine.gov20262026-06-25primaryCurrent
MarylandGraduated (10 brackets)Comptroller of Marylandmarylandcomptroller.gov20262026-06-23primaryCurrent
MassachusettsFlat 5%Massachusetts Department of Revenuemass.gov20262026-05-27primaryCurrent
MichiganFlat 4.25%Michigan Department of Treasurymichigan.gov20262026-05-27primaryCurrent
MinnesotaGraduated (4 brackets)Minnesota Department of Revenuerevenue.state.mn.us20262026-06-25primaryCurrent
MississippiFlat 4%Mississippi Department of Revenuedor.ms.gov20262026-05-27primaryCurrent
MissouriGraduated (8 brackets)Missouri Department of Revenuedor.mo.gov20262026-06-25primaryCurrent
MontanaGraduated (2 brackets)Montana Legislature (enrolled HB 337, 69th Legislature, Ch. 227); corroborated by MT DOR 2026 Publication 1, p.16archive.legmt.gov20262026-07-12primaryCurrent
NebraskaGraduated (3 brackets)Nebraska Department of Revenuerevenue.nebraska.gov20262026-07-10primaryCurrent
NevadaNo state income tax on wages-----Current
New HampshireNo state income tax on wages-----Current
New JerseyGraduated (7 brackets)New Jersey Division of Taxationnj.gov20262026-07-10primaryCurrent
New MexicoGraduated (6 brackets)New Mexico Taxation and Revenue Departmenttax.newmexico.gov20252026-06-25primaryPending verification
New YorkGraduated (9 brackets)New York State Department of Taxation and Finance (Form IT-201-I)tax.ny.gov20252026-06-25primaryPending verification
North CarolinaFlat 3.99%North Carolina Department of Revenuencdor.gov20262026-05-27primaryCurrent
North DakotaGraduated (3 brackets)North Dakota Office of State Tax Commissioner (2026 Form ND-1ES, SFN 28709)tax.nd.gov20262026-07-12primaryCurrent
OhioGraduated (2 brackets)Ohio Laws / Legislative Service Commission (ORC 5747.02, HB 96)codes.ohio.gov20262026-07-10primaryCurrent
OklahomaGraduated (4 brackets)Oklahoma Tax Commissionoklahoma.gov20262026-06-23primaryCurrent
OregonGraduated (4 brackets)Oregon Department of Revenueoregon.gov20262026-07-10primaryCurrent
PennsylvaniaFlat 3.07%Pennsylvania Department of Revenuerevenue.pa.gov20262026-05-27primaryCurrent
Rhode IslandGraduated (3 brackets)Rhode Island Division of Taxation (ADV 2025-22)tax.ri.gov20262026-06-25primaryCurrent
South CarolinaGraduated (2 brackets)South Carolina General Assembly (H. 4216, Act 110, S.C. Code 12-6-510(C))scstatehouse.gov20262026-07-12primaryCurrent
South DakotaNo state income tax on wages-----Current
TennesseeNo state income tax on wages-----Current
TexasNo state income tax on wages-----Current
UtahFlat 4.45%Utah State Legislature (SB 60, 2026)le.utah.gov20262026-07-10primaryCurrent
VermontGraduated (4 brackets)Vermont Joint Fiscal Officeljfo.vermont.gov20262026-07-10primaryCurrent
VirginiaGraduated (4 brackets)Virginia Department of Taxationtax.virginia.gov20262026-05-27primaryCurrent
WashingtonNo state income tax on wages-----Current
Washington D.C.Graduated (7 brackets)District of Columbia Office of Tax and Revenueotr.cfo.dc.gov20262026-06-25primaryCurrent
West VirginiaGraduated (5 brackets)West Virginia Legislaturewvlegislature.gov20262026-06-25primaryCurrent
WisconsinGraduated (4 brackets)Wisconsin Department of Revenue (2026 Form 1-ES Instructions, D-101A R. 1-26)revenue.wi.gov20262026-07-12primaryCurrent
WyomingNo state income tax on wages-----Current

State standard deductions

Per-state standard deductions subtracted from the state bracket base. States that relieve income through a personal exemption instead are in the next table. A few states, Pennsylvania and West Virginia among them, offer neither and tax from the first dollar.

StateValueIssuing authorityDocumentTax yearLast verifiedTierStatus
Arizona$15,750 single / $31,500 MFJArizona Department of Revenueazdor.gov20252026-06-25primaryPending verification
Arkansas$2,470 single / $4,940 MFJArkansas Department of Finance and Administrationdfa.arkansas.gov20262026-06-25primaryCurrent
California$5,706 single / $11,412 MFJCalifornia Franchise Tax Boardftb.ca.gov20262026-06-25primaryCurrent
Colorado$16,100 single / $32,200 MFJColorado Department of Revenuetax.colorado.gov20262026-06-25primaryCurrent
Delaware$3,250 single / $6,500 MFJDelaware Division of Revenuerevenue.delaware.gov20262026-06-25primaryCurrent
Georgia$15,000 single / $30,000 MFJGeorgia Department of Revenuedor.georgia.gov20262026-06-25primaryCurrent
Hawaii$8,000 single / $16,000 MFJHawaii Department of Taxationfiles.hawaii.gov20262026-06-25primaryCurrent
Idaho$16,100 single / $32,200 MFJIdaho State Tax Commissiontax.idaho.gov20262026-06-25primaryCurrent
Iowa$16,100 single / $32,200 MFJIowa Department of Revenuerevenue.iowa.gov20262026-06-25primaryCurrent
Kansas$3,605 single / $8,240 MFJKansas Office of Revisor of Statutes (K.S.A. 79-32,119)ksrevisor.gov20262026-07-10primaryCurrent
Kentucky$3,360 single / $3,360 MFJKentucky Department of Revenuerevenue.ky.gov20262026-06-25primaryCurrent
Louisiana$12,500 single / $25,000 MFJLouisiana Department of Revenuerevenue.louisiana.gov20262026-06-25primaryCurrent
Maine$15,300 single / $30,600 MFJMaine Revenue Servicesmaine.gov20262026-06-25primaryCurrent
Maryland$3,350 single / $6,700 MFJComptroller of Marylandmarylandcomptroller.gov20262026-06-25primaryCurrent
Minnesota$15,300 single / $30,600 MFJMinnesota Department of Revenuerevenue.state.mn.us20262026-06-25primaryCurrent
Mississippi$2,300 single / $4,600 MFJMississippi Department of Revenuedor.ms.gov20262026-06-25primaryCurrent
Missouri$16,100 single / $32,200 MFJMissouri Department of Revenuedor.mo.gov20262026-06-25primaryCurrent
Montana$14,600 single / $29,200 MFJMontana Department of Revenuerevenue.mt.gov20262026-06-25primaryCurrent
Nebraska$16,100 single / $32,200 MFJNebraska Legislature (Neb. Rev. Stat. §77-2715.03)nebraskalegislature.gov20262026-06-25primaryCurrent
New Mexico$15,000 single / $30,000 MFJNew Mexico Taxation and Revenue Departmenttax.newmexico.gov20262026-06-25primaryCurrent
New York$8,000 single / $16,050 MFJNew York State Department of Taxation and Financetax.ny.gov20262026-06-25primaryCurrent
North Carolina$12,750 single / $25,500 MFJNorth Carolina Department of Revenuencdor.gov20252026-06-25primaryPending verification
North Dakota$16,100 single / $32,200 MFJNorth Dakota Office of State Tax Commissionertax.nd.gov20262026-06-25primaryCurrent
Oklahoma$7,350 single / $14,700 MFJOklahoma Tax Commissionoklahoma.gov20262026-06-25primaryCurrent
Oregon$2,910 single / $5,820 MFJOregon Department of Revenueoregon.gov20262026-07-10primaryCurrent
Rhode Island$11,200 single / $22,400 MFJRhode Island Division of Taxationtax.ri.gov20262026-06-25primaryCurrent
Vermont$7,650 single / $15,300 MFJVermont Department of Taxestax.vermont.gov20252026-07-10primaryPending verification
Virginia$8,750 single / $17,500 MFJVirginia Department of Taxationtax.virginia.gov20262026-06-25primaryCurrent
Washington D.C.$16,100 single / $32,200 MFJDistrict of Columbia Office of Tax and Revenueotr.cfo.dc.gov20262026-06-25primaryCurrent

State income-based deductions

Three states publish a deduction that shrinks as income rises rather than a fixed amount. Wisconsin calls it the standard deduction and prints it as a schedule; South Carolina calls it the Income Adjusted Deduction and writes it into statute as a fraction. Both work the same way: a maximum at low income, reduced by a set share of every dollar earned above a threshold, until it runs out entirely. Alabama publishes a chart instead, and its deduction behaves differently in one way that matters: it steps down to a floor and stops there. An Alabama single filer keeps $2,500 of deduction at every income, however high. Because no single figure is true at more than one income, the table below gives the maximum and, depending on the state, either the income at which the deduction disappears or the floor it settles at.

StateValueIssuing authorityDocumentTax yearLast verifiedTierStatus
Alabama$3,000 single, stepping down to a $2,500 floor; $8,500 MFJ, stepping down to a $5,000 floorAlabama Department of Revenue (TY2025 Form 40 booklet, page 9; identical schedule restated in the January 2026 withholding booklet, whbooklet_0126.pdf)revenue.alabama.gov20252026-07-12primaryCurrent
South Carolina$15,000 single, phasing to $0 at $95,000; $30,000 MFJ, phasing to $0 at $190,000South Carolina General Assembly (H. 4216, Act 110, S.C. Code 12-6-1140(15))scstatehouse.gov20262026-07-12primaryCurrent
Wisconsin$13,960 single, phasing to $0 at $136,453; $25,840 MFJ, phasing to $0 at $159,690Wisconsin Department of Revenue (2026 Form 1-ES Instructions, D-101A R. 1-26)revenue.wi.gov20262026-07-12primaryCurrent

Federal income tax as a state deduction

Alabama lets residents subtract the federal income tax they pay before calculating what they owe the state, and it is by far the largest thing Alabama does for a filer. A single filer earning $100,000 gets a $2,500 standard deduction and a $1,500 personal exemption from the state, then deducts roughly $14,000 of federal tax on top. It is a separate line on Form 40, not an alternative to the standard deduction, so a filer takes both. The amount is different for every person because it is their own federal bill, which is why the row below states the rule rather than a dollar figure.

StateValueIssuing authorityDocumentTax yearLast verifiedTierStatus
AlabamaFull federal income tax liability, uncapped, deducted from the state tax baseAlabama Department of Revenue (Form 40, line 12; Federal Income Tax Deduction Worksheet, Form 40 booklet page 31; 2026 Form 40ES worksheet line 3)revenue.alabama.gov20252026-07-12primaryCurrent
MissouriA percentage of federal income tax liability by state AGI (35% to $25,000, 25% to $50,000, 15% to $100,000, 5% to $125,000, 0% above $125,000), then capped at $5,000 ($10,000 married filing combined)Missouri Revisor of Statutes (RSMo 143.171.2(1) - the percentage table and the $5,000 / $10,000 caps), corroborated by the Missouri Department of Revenue (2025 Form MO-1040 Instructions, lines 9-13)revisor.mo.gov20262026-07-13primaryCurrent
OregonFederal income tax liability, capped at $8,750 and stepped down by federal AGI above $125,000, to $0 at $145,000 and above (single)Oregon Department of Revenue (2026 Oregon Withholding Tax Formulas 150-206-436, Rev. 12-31-25 - the $8,750 cap and the [S]/[M] phase-out ladders), on the authority of ORS 316.680(1)(b) and ORS 316.695(3) (Oregon Legislative Assembly, ORS 2025 Edition)oregon.gov20262026-07-13primaryCurrent

State personal exemptions

Six states relieve income with a personal exemption rather than a standard deduction, and Vermont applies both. The amount comes off before the brackets, so it lowers the bill the same way a deduction does. States publish these two different ways. Most set one amount per person, counting the filer, a spouse on a joint return, and each dependent. Massachusetts instead publishes a single figure per filing status that already accounts for the spouse. Additional exemptions that depend on age, blindness, veteran status, or adoption are not applied here, because the calculator does not ask for those details; where that is the case, the estimate errs toward a slightly higher tax bill rather than a lower one.

StateValueIssuing authorityDocumentTax yearLast verifiedTierStatus
Alabama$1,500 single / $3,000 HoH / $3,000 MFJAlabama Department of Revenue (TY2025 Form 40 booklet, lines 1-4 and page 10; identical dependent tiers restated in the January 2026 withholding booklet)revenue.alabama.gov20252026-07-12primaryCurrent
Connecticut$15,000 single / $19,000 HoH / $24,000 MFJ; stepping down to $0 above $44,000 singleConnecticut Department of Revenue Services (IP 2026(7), Table A, Personal Exemptions)portal.ct.gov20262026-07-12primaryCurrent
Illinois$2,925 per person; $2,925 per dependent; disallowed above $250,000 single / $500,000 MFJIllinois Department of Revenue (Bulletin FY-2026-15)tax.illinois.gov20262026-07-12primaryCurrent
Indiana$1,000 per person; $1,000 per dependent; +$1,500 per qualifying childIndiana Department of Revenue (Departmental Notice #1)in.gov20262026-07-12primaryCurrent
Massachusetts$4,400 single / $6,800 HoH / $8,800 MFJ; $1,000 per dependentMassachusetts Department of Revenue (Form 1 instructions)mass.gov20252026-07-12primaryPending verification
Michigan$5,900 per person; $5,900 per dependentMichigan Department of Treasury (Form 446)michigan.gov20262026-07-12primaryCurrent
New Jersey$1,000 per person; $1,500 per dependentNew Jersey Division of Taxation (2026 NJ-1040-ES instructions)nj.gov20262026-07-12primaryCurrent
Ohio$2,400 per person to $40,000; $2,150 per person to $80,000; $1,900 per person above $80,000; none at or above $500,000Ohio Laws / Legislative Service Commission (ORC 5747.025); Ohio Department of Taxation (TY2025 IT-1040 instructions)codes.ohio.gov20252026-07-12primaryPending verification
Vermont$5,400 per person; $5,400 per dependentVermont Department of Taxes (2026 withholding chart, derived)tax.vermont.gov20262026-07-12secondaryPending verification

State benefit recapture

Everything else on this page reduces a tax bill. These two add to one, and Connecticut is the only state that has them. Connecticut taxes your first dollars at low rates like every other graduated state, then takes that benefit back as income rises, so a high earner ends up paying its top rate on everything rather than a cheaper rate on the way up. The 2% add-back reclaims the low rate on the bottom of the scale. The tax recapture reclaims the rest, and it is not small: up to $3,400 for a single filer and $6,800 for a couple filing jointly. Both are added to the tax before Connecticut's personal tax credit is applied, which is the order the state's own worksheet uses.

ProvisionValueIssuing authorityDocumentTax yearLast verifiedTierStatus
Connecticut 2% tax rate phase-out add-backadded to state tax, from $56,500 single; up to $250 single / $500 MFJConnecticut Department of Revenue Services (IP 2026(7), Table C, 2% Tax Rate Phase-Out Add-Back)portal.ct.gov20262026-07-12primaryCurrent
Connecticut tax recaptureadded to state tax, from $105,000 single; up to $3,400 single / $6,800 MFJConnecticut Department of Revenue Services (IP 2026(7), Table D, Tax Recapture)portal.ct.gov20262026-07-12primaryCurrent

State nonrefundable credits

A credit is not a deduction, and the difference is worth stating plainly. A deduction comes off your income, so it saves you its face value multiplied by your tax rate. A credit comes off the tax itself, so it saves you its face value. Utah is the clearest case: it has no standard deduction and no personal exemption at all, taxes wages from the first dollar, and gives the money back through the Taxpayer Tax Credit. Ohio layers two credits on top of its exemption. Connecticut's works differently again: it is a percentage of the tax, reaching 75% at the bottom of the scale, and it applies to a bill that already includes the recapture above. Nonrefundable means a credit can wipe out a state tax bill but never turn it into a refund, so the figure is floored at zero. Credits that depend on age or retirement income are not applied, because the calculator does not ask for those details.

CreditValueIssuing authorityDocumentTax yearLast verifiedTierStatus
Connecticut personal tax credit75% of state tax at the bottom of the scale, stepping down to zero above $64,500 singleConnecticut Department of Revenue Services (IP 2026(7), Table E, Personal Tax Credits)portal.ct.gov20262026-07-12primaryCurrent
Ohio personal exemption credit$20 per exemption, below $30,000Ohio Laws / Legislative Service Commission (ORC 5747.022)codes.ohio.gov20262026-07-12primaryCurrent
Ohio joint filing credit20% to $25,000 / 15% to $50,000 / 10% to $75,000 / 5% above of state tax, max $650Ohio Laws / Legislative Service Commission (ORC 5747.05(E))codes.ohio.gov20262026-07-12primaryCurrent
Utah Taxpayer Tax Credit6% of (federal standard deduction + $2,111 per dependent), less 1.3% of income over $18,213 single / $36,426 MFJUtah State Tax Commission (Form TC-40, lines 11-20)files.tax.utah.gov20252026-07-12primaryPending verification

State payroll programs

Employee-funded state programs that show up as per-paycheck lines: state disability insurance, paid family and medical leave, and the Washington Cares Fund among them. One row per program.

ProgramValueIssuing authorityDocumentTax yearLast verifiedTierStatus
California SDI1.3%California Employment Development Department (EDD)edd.ca.gov20262026-05-27primaryCurrent
Colorado FAMLI0.44%Colorado FAMLI Division (CDLE)famli.colorado.gov20262026-07-10primaryCurrent
Connecticut Paid Leave0.5%Connecticut Paid Leave Authorityctpaidleave.org20262026-05-12primaryCurrent
Delaware Paid Leave0.4%Delaware Department of Laborlabor.delaware.gov20262026-05-12primaryCurrent
Hawaii TDI0.5%Hawaii DLIR - Disability Compensation Divisionlabor.hawaii.gov20262026-07-10primaryCurrent
Maine PFML0.5%Maine Department of Labormaine.gov20262026-05-12primaryCurrent
Massachusetts PFML0.46%Massachusetts Department of Family and Medical Leave (DFML)mass.gov20262026-05-12primaryCurrent
Minnesota PFML0.44%Minnesota Paid Leave (MN DEED)pl.mn.gov20262026-07-10primaryCurrent
New Jersey TDI0.19%New Jersey Dept of Labor & Workforce Developmentnj.gov20262026-07-10primaryCurrent
New Jersey FLI0.23%New Jersey Dept of Labor & Workforce Developmentnj.gov20262026-07-10primaryCurrent
New Jersey UI/WF/SWF0.425%New Jersey Dept of Labor & Workforce Developmentnj.gov20262026-07-10primaryCurrent
New York Paid Family Leave0.432%New York State (rate set by NY DFS)paidfamilyleave.ny.gov20262026-07-10primaryCurrent
New York SDI (employee contribution)$31/yearNew York State Department of Labor (WCL §218)dol.ny.gov20262026-05-27primaryCurrent
Oregon Paid Leave0.6%Oregon Employment Department (Paid Leave Oregon)paidleave.oregon.gov20262026-05-12primaryCurrent
Rhode Island TDI1.1%Rhode Island Dept of Labor & Trainingdlt.ri.gov20262026-07-10primaryCurrent
WA Cares Fund0.58%Washington Cares Fund (WA DSHS)wacaresfund.wa.gov20262026-05-12primaryCurrent
Washington PFML0.8072%Washington Employment Security Departmentesd.wa.gov20262026-07-10primaryCurrent

Supplemental (bonus) withholding

How each state withholds on bonuses and other supplemental wages: a flat rate, the regular tables, a federal-linked method, or no state tax at all. Rows whose source document carries a prior-year date or could not be confirmed for 2026 are marked to verify.

StateValueIssuing authorityDocumentTax yearLast verifiedTierStatus
AlabamaFlat 5% (optional)Alabama Department of Revenue, Withholding Tax Tables and Instructions for Employersrevenue.alabama.gov20262026-06-24primaryCurrent
AlaskaNo state income tax on wagesAlaska Department of Revenue, Tax Divisiontax.alaska.gov20262026-06-24primaryCurrent
ArizonaRegular tables / formulaArizona Department of Revenueazdor.gov20262026-06-24primaryCurrent
ArkansasFlat 3.9% (mandatory)Arkansas Department of Finance and Administration, Withholding Tax Employer's Instructionsdfa.arkansas.gov20262026-06-24primaryVerifyRate is current for 2026; the source instruction document is dated 2024.
CaliforniaFlat 10.23% (optional)California Employment Development Department, DE 231PSedd.ca.gov20262026-06-24primaryVerifyRate is current; the EDD information sheet (DE 231PS) predates 2026.
ColoradoRegular tables / formulaColorado Department of Revenue, DR 1098tax.colorado.gov20262026-06-24primaryCurrent
ConnecticutRegular tables / formulaConnecticut Department of Revenue Services, Form TPG-211portal.ct.gov20262026-06-24primaryCurrent
DelawareRegular tables / formulaDelaware Division of Revenue, Employer's Guiderevenue.delaware.gov20262026-06-24primaryCurrent
District of ColumbiaRegular tables / formulaDC Office of Tax and Revenue, Form FR-230otr.cfo.dc.gov20262026-06-24primaryVerifyThe only DC employer booklet (FR-230) is the 2018 edition; a 2026-dated confirmation could not be retrieved.
FloridaNo state income tax on wagesFlorida Department of Revenuefloridarevenue.com20262026-06-24primaryCurrent
GeorgiaFlat 5.19% (mandatory)Georgia Department of Revenuedor.georgia.gov20262026-06-24primaryPending verification
HawaiiRegular tables / formulaHawaii Department of Taxation, Booklet A Employer's Tax Guidefiles.hawaii.gov20262026-06-24primaryCurrent
IdahoFlat 5.3% (optional)Idaho State Tax Commissiontax.idaho.gov20262026-06-24primaryCurrent
IllinoisRegular tables / formulaIllinois Department of Revenue, Booklet IL-700-Ttax.illinois.gov20262026-06-24primaryCurrent
IndianaRegular tables / formulaIndiana Department of Revenue, Departmental Notice #1in.gov20262026-06-24primaryCurrent
IowaFlat 3.8% (conditional)Iowa Department of Revenue, Iowa Individual Income Tax Withholding Formularevenue.iowa.gov20262026-06-24primaryCurrent
KansasFlat 5% (conditional)Kansas Department of Revenue, KW-100 Withholding Tax Guideksrevenue.gov20262026-06-24primaryCurrent
KentuckyRegular tables / formulaKentucky Department of Revenue, 2026 Withholding Tax Formularevenue.ky.gov20262026-06-24primaryCurrent
LouisianaRegular tables / formulaLouisiana Department of Revenue, R-1306 Withholding Tables and Formulasdam.ldr.la.gov20262026-06-24primaryCurrent
MaineFlat 5% (optional)Maine Revenue Services, Withholding Tables for Individual Income Taxmaine.gov20262026-06-24primaryCurrent
MarylandFlat 8.75% (mandatory)Comptroller of Maryland, Employer Withholding Guidemarylandcomptroller.gov20262026-06-24primaryVerifyMaryland's combined rate is set per county of residence and ranges from about 3.30% to 8.90%. 8.75% is a representative value; verify your county.
MassachusettsFlat 5% (mandatory)Massachusetts Department of Revenue, Circular Mmass.gov20262026-06-24primaryCurrent
MichiganFlat 4.25% (mandatory)Michigan Department of Treasury, Form 446michigan.gov20262026-06-24primaryCurrent
MinnesotaFlat 6.25% (mandatory)Minnesota Department of Revenuerevenue.state.mn.us20262026-06-24primaryCurrent
MississippiRegular tables / formulaMississippi Department of Revenue, Withholding Tax FAQsdor.ms.gov20262026-06-24primaryCurrent
MissouriFlat 4.7% (optional)Missouri Department of Revenue, Form 4282 Employer's Tax Guidedor.mo.gov20262026-06-24primaryCurrent
MontanaFlat 5% (optional)Montana Department of Revenue, Publication 1revenuefiles.mt.gov20262026-06-24primaryCurrent
NebraskaFlat 3.5% (optional)Nebraska Department of Revenue, Circular ENrevenue.nebraska.gov20262026-06-24primaryCurrent
NevadaNo state income tax on wagesNevada Department of Taxationtax.nv.gov20262026-06-24primaryCurrent
New HampshireNo state income tax on wagesNew Hampshire Department of Revenue Administrationrevenue.nh.gov20262026-06-24primaryCurrent
New JerseyRegular tables / formulaNew Jersey Division of Taxation, NJ-WTnj.gov20262026-06-24primaryCurrent
New MexicoFlat 5.9% (conditional)New Mexico Taxation and Revenue Department, FYI-104realfile.tax.newmexico.gov20262026-06-24primaryCurrent
New YorkFlat 11.7% (optional)New York State Department of Taxation and Finance, NYS-50-T-NYStax.ny.gov20262026-06-24primaryVerifyThis is the New York State rate only. New York City residents add a 4.25% city supplemental rate and Yonkers residents add 1.95975%.
North CarolinaFlat 4.09% (optional)North Carolina Department of Revenue, NC-30ncdor.gov20262026-06-24primaryCurrent
North DakotaFlat 1.5% (optional)North Dakota Office of State Tax Commissionertax.nd.gov20262026-06-24primaryCurrent
OhioFlat 2.75% (mandatory)Ohio Administrative Code / Ohio Department of Taxationcodes.ohio.gov20262026-06-24primaryCurrent
OklahomaRegular tables / formulaOklahoma Tax Commission, Packet OW-2oklahoma.gov20262026-06-24primaryCurrent
OregonFlat 8% (optional)Oregon Department of Revenue, Form 150-206-436oregon.gov20262026-06-24primaryCurrent
PennsylvaniaRegular tables / formulaPennsylvania Department of Revenuepa.gov20262026-06-24primaryCurrent
Rhode IslandFlat 5.99% (mandatory)Rhode Island Division of Taxationtax.ri.gov20262026-06-24primaryCurrent
South CarolinaRegular tables / formulaSouth Carolina Department of Revenue, Form WH-1603Fdor.sc.gov20262026-06-24primaryVerifySouth Carolina's published 2026 withholding formula still applies the pre-2026 rates. The estimate here uses the enacted 2026 law, so a real SC paystub may show more tax withheld than is owed.
South DakotaNo state income tax on wagesSouth Dakota Department of Revenuedor.sd.gov20262026-06-24primaryCurrent
TennesseeNo state income tax on wagesTennessee Department of Revenue, GEN-34revenue.support.tn.gov20262026-06-24primaryCurrent
TexasNo state income tax on wagesTexas Comptroller of Public Accountscomptroller.texas.gov20262026-06-24primaryCurrent
UtahRegular tables / formulaUtah State Tax Commission, Publication 14tax.utah.gov20262026-06-24primaryCurrent
Vermont30% of federal withholdingVermont Department of Taxes, GB-1210tax.vermont.gov20262026-06-24primaryCurrent
VirginiaFlat 5.75% (optional)Virginia Tax, Income Tax Withholding Guide for Employerstax.virginia.gov20262026-06-24primaryVerifyRate is current and in effect for 2026; the source guide is a 2025 publication (Rev. 05/25).
WashingtonNo state income tax on wagesWashington Department of Revenuedor.wa.gov20262026-06-24primaryCurrent
West VirginiaRegular tables / formulaWest Virginia Tax Division, IT-100.2Atax.wv.gov20262026-06-24primaryCurrent
WisconsinRegular tables / formulaWisconsin Department of Revenue, Publication W-166revenue.wi.gov20262026-06-24primaryCurrent
WyomingNo state income tax on wagesWyoming Department of Revenuerevenue.wyo.gov20262026-06-24primaryCurrent

Income surtaxes

Income-conditioned surtaxes layered on top of the regular schedule: California's Mental Health Services Tax and the Massachusetts millionaire surtax.

SurtaxValueIssuing authorityDocumentTax yearLast verifiedTierStatus
California Mental Health Services Tax (Prop 63)1% above $1,000,000California Franchise Tax Boardftb.ca.gov20262026-05-27primaryCurrent
Massachusetts Millionaire Surtax (Question 1)4% above $1,107,750Massachusetts Department of Revenuemass.gov20262026-05-12primaryCurrent

Local (city and county) taxes

The 231 city and county wage taxes the calculator applies, each mapped to the authority that publishes it: the Ohio municipal network, the Pennsylvania Earned Income Tax, Indiana's county rates, Maryland's county piggyback tax, Kentucky's occupational license fees, and the New York City and Yonkers schedules. Rows marked to verify are ones whose rate we could not confirm from a current-year primary source, and we say so rather than presenting them as settled. For how a local rate stacks on top of federal and state tax, see the methodology.

JurisdictionValueIssuing authorityDocumentTax yearLast verifiedTierStatus
New York City, NY3.078% to $12,000, 3.762% to $25,000, 3.819% to $50,000, 3.876% above $50,000NYS Department of Taxation and Finance (IT-2105-I)tax.ny.gov20262026-06-23primaryCurrent
Yonkers, NY16.75% of NY state income tax owedNYS Department of Taxation and Finance (IT-2105-I)tax.ny.gov20262026-06-23primaryCurrent
Philadelphia, PA3.735%Philadelphia Department of Revenuephila.gov20262026-06-23primaryCurrent
Pittsburgh, PA3%PA DCED Municipal Statistics (PSD/EIT list)dced.pa.gov20252026-06-23primaryPending verification
Erie, PA1.18%PA DCED Municipal Statistics (PSD/EIT list)dced.pa.gov20252026-06-23primaryPending verification
Allentown, PA1.975%PA DCED Municipal Statistics (PSD/EIT list)dced.pa.gov20252026-06-23primaryPending verification
Wilkes-Barre, PA3%PA DCED Municipal Statistics (PSD/EIT list)dced.pa.gov20252026-06-23primaryPending verification
Johnstown, PA1.3%PA DCED Municipal Statistics (PSD/EIT list)dced.pa.gov20252026-06-23primaryPending verification
McKeesport, PA1.7%PA DCED Municipal Statistics (PSD/EIT list)dced.pa.gov20252026-06-23primaryPending verification
State College, PA2.25%PA DCED Municipal Statistics (PSD/EIT list)dced.pa.gov20252026-06-23primaryPending verification
Bethel Park, PA1.4%PA DCED Municipal Statistics (PSD/EIT list)dced.pa.gov20252026-06-23primaryPending verification
Millcreek Township, PA1%PA DCED Municipal Statistics (PSD/EIT list)dced.pa.gov20252026-06-23primaryPending verification
Penn Hills Township, PA1.75%PA DCED Municipal Statistics (PSD/EIT list)dced.pa.gov20252026-06-23primaryPending verification
Scranton, PA3.4%City of Scranton (Act 47 distressed)scrantonpa.gov20252026-06-23primaryPending verification
Reading, PA3.6%City of Reading (Act 47 distressed)readingpa.gov20252026-06-23primaryPending verification
Bethlehem, PA1%City of Bethlehembethlehem-pa.gov20252026-06-23primaryPending verification
Lancaster, Pennsylvania1.6%City of Lancastercityoflancasterpa.gov20252026-06-23primaryPending verification
Altoona, PA1.7%Blair County Tax Collection Bureaublairtax.org20252026-06-23primaryPending verification
York, Pennsylvania1.25%York Adams Tax Bureauyatb.com20252026-06-23primaryPending verification
Norristown, PA1.6%Municipality of Norristown (ordinance)ecode360.com20252026-06-23primaryPending verification
Bensalem Township, PA1%Bensalem Townshipbensalempa.gov20252026-06-23primaryPending verification
Abington Township, PA1%Abington Townshipabingtonpa.gov20252026-06-23primaryPending verification
Upper Darby Township, PA1%Upper Darby Township (new EIT eff. 2026-01-01)upperdarby.org20252026-06-23primaryPending verification
Cheltenham Township, PA1.5%Cheltenham Townshipcheltenhamtownship.org20252026-06-23primaryPending verification
Harrisburg, PA2%City of Harrisburg (ordinance; city portion only)ecode360.com20252026-06-23secondaryPending verification
Chester, PA2.75%City of Chester (rate UNVERIFIED; ~2015 source)chestercity.com20252026-06-23secondaryPending verification
New Castle, PA2.1%City of New Castle (rate UNVERIFIED; historical)newcastlepa.org20252026-06-23secondaryPending verification
Lebanon, Pennsylvania1.4%City of Lebanon (ordinance; city portion only)ecode360.com20252026-06-23secondaryPending verification
Columbus, OH2.5%City of Columbus Income Tax Divisioncolumbus.gov20262026-06-23primaryCurrent
Cleveland, OH2.5%CCA (Central Collection Agency)ccaohio.gov20262026-06-23primaryCurrent
Cincinnati, OH1.8%City of Cincinnati (self-administered)cincinnati-oh.gov20262026-06-23primaryCurrent
Toledo, OH2.5%City of Toledo (self-administered)toledo.oh.gov20262026-06-23primaryCurrent
Akron, OH2.5%City of Akron (self-administered)akronohio.gov20262026-06-23primaryCurrent
Dayton, OH2.5%City of Dayton (self-administered)daytonohio.gov20262026-06-23primaryCurrent
Parma, OH2.5%City of Parma (self-administered)cityofparma-oh.gov20262026-06-23primaryCurrent
Canton, OH2.5%City of Canton (self-administered)cantonohio.gov20262026-06-23primaryCurrent
Youngstown, OH2.75%RITAritaohio.com20262026-06-23primaryCurrent
Lorain, OH2.5%City of Lorain (self-administered)cityoflorain.org20262026-06-23primaryCurrent
Hamilton, OH2%CCA (Central Collection Agency)ccaohio.gov20262026-06-23primaryCurrent
Springfield, OH2.4%City of Springfield / RITAspringfieldohio.gov20262026-06-23primaryCurrent
Kettering, OH2.25%City of Kettering (self-administered)ketteringoh.org20262026-06-23primaryCurrent
Elyria, OH2.25%RITAritaohio.com20262026-06-23primaryCurrent
Lakewood, OH1.5%City of Lakewood (self-administered)lakewoodoh.gov20262026-06-23primaryCurrent
Cuyahoga Falls, OH2%RITAritaohio.com20262026-06-23primaryCurrent
Euclid, OH2.85%RITAritaohio.com20262026-06-23primaryCurrent
Dublin, OH2%City of Dublin (self-administered)dublinohiousa.gov20262026-06-23primaryCurrent
Newark, Ohio1.75%City of Newark (self-administered)newarkohio.gov20262026-06-23primaryCurrent
Mentor, OH2%RITAritaohio.com20262026-06-23primaryCurrent
Cleveland Heights, OH2.25%RITAritaohio.com20262026-06-23primaryCurrent
Strongsville, OH2%RITAritaohio.com20262026-06-23primaryCurrent
Fairfield, OH1.5%CCA (Central Collection Agency)ccaohio.gov20262026-06-23primaryCurrent
Findlay, OH1%City of Findlay (self-administered)findlayohio.gov20262026-06-23primaryCurrent
Warren, Ohio2.5%City of Warren (self-administered)warren.org20262026-06-23primaryCurrent
Lancaster, Ohio2.3%City of Lancaster (self-administered)lancasterohio.gov20262026-06-23primaryCurrent
Stow, OH2%City of Stow (self-administered)stowohio.gov20262026-06-23primaryCurrent
Brunswick, OH2%City of Brunswick (self-administered)brunswick.oh.us20262026-06-23primaryCurrent
Reynoldsburg, OH2.5%RITAritaohio.com20262026-06-23primaryCurrent
Grove City, OH2%RITAritaohio.com20262026-06-23primaryCurrent
North Olmsted, OH2%RITAritaohio.com20262026-06-23primaryCurrent
Wadsworth, OH1.4%RITAritaohio.com20262026-06-23primaryCurrent
Barberton, OH2.25%CCA (Central Collection Agency)ccaohio.gov20262026-06-23primaryCurrent
Riverside, OH2.5%CCA (Central Collection Agency)ccaohio.gov20262026-06-23primaryCurrent
Warrensville Heights, OH2.6%CCA (Central Collection Agency)ccaohio.gov20262026-06-23primaryCurrent
Parma Heights, OH3%CCA (Central Collection Agency)ccaohio.gov20262026-06-23primaryCurrent
Norton, OH2%CCA (Central Collection Agency)ccaohio.gov20262026-06-23primaryCurrent
Clayton, OH2.5%CCA (Central Collection Agency)ccaohio.gov20262026-06-23primaryCurrent
Munroe Falls, OH2.25%CCA (Central Collection Agency)ccaohio.gov20262026-06-23primaryCurrent
Highland Hills, OH2.5%CCA (Central Collection Agency)ccaohio.gov20262026-06-23primaryCurrent
Bratenahl, OH2%CCA (Central Collection Agency)ccaohio.gov20262026-06-23primaryCurrent
Obetz, OH2.5%CCA (Central Collection Agency)ccaohio.gov20262026-06-23primaryCurrent
Mansfield, OH2.25%City of Mansfield (rate UNVERIFIED; the doc's table and its notes disagree)mansfieldohio.gov20262026-06-23secondaryPending verification
Baltimore City, MD3.2%Comptroller of Maryland (Withholding Tax Facts, Jan 2026)marylandcomptroller.gov20262026-06-23primaryCurrent
Allegany County, MD3.2%Comptroller of Maryland (Withholding Tax Facts, Jan 2026)marylandcomptroller.gov20262026-06-23primaryCurrent
Baltimore County, MD3.2%Comptroller of Maryland (Withholding Tax Facts, Jan 2026)marylandcomptroller.gov20262026-06-23primaryCurrent
Calvert County, MD3.2%Comptroller of Maryland (Withholding Tax Facts, Jan 2026)marylandcomptroller.gov20262026-06-23primaryCurrent
Caroline County, MD3.2%Comptroller of Maryland (Withholding Tax Facts, Jan 2026)marylandcomptroller.gov20262026-06-23primaryCurrent
Carroll County, MD3.03%Comptroller of Maryland (Withholding Tax Facts, Jan 2026)marylandcomptroller.gov20262026-06-23primaryCurrent
Cecil County, MD2.74%Comptroller of Maryland (Withholding Tax Facts, Jan 2026)marylandcomptroller.gov20262026-06-23primaryCurrent
Charles County, MD3.03%Comptroller of Maryland (Withholding Tax Facts, Jan 2026)marylandcomptroller.gov20262026-06-23primaryCurrent
Dorchester County, MD3.3%Comptroller of Maryland (Withholding Tax Facts, Jan 2026)marylandcomptroller.gov20262026-06-23primaryCurrent
Garrett County, MD2.65%Comptroller of Maryland (Withholding Tax Facts, Jan 2026)marylandcomptroller.gov20262026-06-23primaryCurrent
Harford County, MD3.06%Comptroller of Maryland (Withholding Tax Facts, Jan 2026)marylandcomptroller.gov20262026-06-23primaryCurrent
Howard County, MD3.2%Comptroller of Maryland (Withholding Tax Facts, Jan 2026)marylandcomptroller.gov20262026-06-23primaryCurrent
Kent County, MD3.3%Comptroller of Maryland (Withholding Tax Facts, Jan 2026)marylandcomptroller.gov20262026-06-23primaryCurrent
Montgomery County, MD3.2%Comptroller of Maryland (Withholding Tax Facts, Jan 2026)marylandcomptroller.gov20262026-06-23primaryCurrent
Prince George's County, MD3.2%Comptroller of Maryland (Withholding Tax Facts, Jan 2026)marylandcomptroller.gov20262026-06-23primaryCurrent
Queen Anne's County, MD3.2%Comptroller of Maryland (Withholding Tax Facts, Jan 2026)marylandcomptroller.gov20262026-06-23primaryCurrent
St. Mary's County, MD3.2%Comptroller of Maryland (Withholding Tax Facts, Jan 2026)marylandcomptroller.gov20262026-06-23primaryCurrent
Somerset County, MD3.2%Comptroller of Maryland (Withholding Tax Facts, Jan 2026)marylandcomptroller.gov20262026-06-23primaryCurrent
Talbot County, MD2.4%Comptroller of Maryland (Withholding Tax Facts, Jan 2026)marylandcomptroller.gov20262026-06-23primaryCurrent
Washington County, MD2.95%Comptroller of Maryland (Withholding Tax Facts, Jan 2026)marylandcomptroller.gov20262026-06-23primaryCurrent
Wicomico County, MD3.2%Comptroller of Maryland (Withholding Tax Facts, Jan 2026)marylandcomptroller.gov20262026-06-23primaryCurrent
Worcester County, MD2.25%Comptroller of Maryland (Withholding Tax Facts, Jan 2026)marylandcomptroller.gov20262026-06-23primaryCurrent
Anne Arundel County, MD2.7% to $50,000, 2.94% to $400,000, 3.2% above $400,000Comptroller of Maryland (Withholding Tax Facts, Jan 2026)marylandcomptroller.gov20262026-06-23primaryCurrent
Frederick County, MD2.25% to $25,000, 2.75% to $50,000, 2.96% to $150,000, 3.2% above $150,000Comptroller of Maryland (Withholding Tax Facts, Jan 2026)marylandcomptroller.gov20262026-06-23primaryCurrent
Kansas City, MO1%Kansas City Finance Department, Revenue Divisionkcmo.gov20262026-06-23primaryCurrent
St. Louis, MO1%St. Louis Collector of Revenuestlouis-mo.gov20262026-06-23primaryCurrent
Detroit, MI2.4%MI Dept. of Treasury (City of Detroit Individual Income Tax)michigan.gov20262026-07-15primaryCurrent
Grand Rapids, MI1.5%City of Grand Rapids Income Tax Division (GR-1040)grandrapidsmi.gov20262026-07-15primaryCurrent
Saginaw, MI1.5%City of Saginaw Income Tax Office (S-1040)saginaw-mi.com20262026-07-15primaryCurrent
Lansing, MI1%City of Lansing Income Tax Division (L-1040)lansingmi.gov20262026-07-15primaryCurrent
Flint, MI1%City of Flint Income Tax Division (F-1040)cityofflint.com20262026-07-15primaryCurrent
Pontiac, MI1%City of Pontiac Income Tax Division (P-1040)pontiac.mi.us20262026-07-15primaryCurrent
Port Huron, MI1%City of Port Huron Income Tax Department (PH-1040)porthuron.org20262026-07-15primaryCurrent
Walker, MI1%City of Walker Income Tax Department (W-1040)walkermi.gov20262026-07-15primaryCurrent
Muskegon, MI1%City of Muskegon Income Tax Department (CF-M1040)muskegon-mi.gov20262026-07-15primaryCurrent
East Lansing, MI1%City of East Lansing Income Taxcityofeastlansing.com20262026-07-15primaryCurrent
Highland Park, MI2%MI Dept. of Treasury (city list; special-authorization rate, not city-verified)michigan.gov20262026-06-23secondaryPending verification
Albion, MI1%MI Dept. of Treasury (city list; statutory standard rate, not city-verified)michigan.gov20262026-06-23secondaryPending verification
Battle Creek, MI1%MI Dept. of Treasury (city list; statutory standard rate, not city-verified)michigan.gov20262026-06-23secondaryPending verification
Benton Harbor, MI1%MI Dept. of Treasury (city list; statutory standard rate, not city-verified)michigan.gov20262026-06-23secondaryPending verification
Big Rapids, MI1%MI Dept. of Treasury (city list; statutory standard rate, not city-verified)michigan.gov20262026-06-23secondaryPending verification
Grayling, MI1%MI Dept. of Treasury (city list; statutory standard rate, not city-verified)michigan.gov20262026-06-23secondaryPending verification
Hamtramck, MI1%MI Dept. of Treasury (city list; statutory standard rate, not city-verified)michigan.gov20262026-06-23secondaryPending verification
Hudson, Michigan1%MI Dept. of Treasury (city list; statutory standard rate, not city-verified)michigan.gov20262026-06-23secondaryPending verification
Ionia, MI1%MI Dept. of Treasury (city list; statutory standard rate, not city-verified)michigan.gov20262026-06-23secondaryPending verification
Jackson, Michigan1%MI Dept. of Treasury (city list; statutory standard rate, not city-verified)michigan.gov20262026-06-23secondaryPending verification
Lapeer, MI1%MI Dept. of Treasury (city list; statutory standard rate, not city-verified)michigan.gov20262026-06-23secondaryPending verification
Muskegon Heights, MI1%MI Dept. of Treasury (city list; statutory standard rate, not city-verified)michigan.gov20262026-06-23secondaryPending verification
Portland, Michigan1%MI Dept. of Treasury (city list; statutory standard rate, not city-verified)michigan.gov20262026-06-23secondaryPending verification
Springfield, Michigan1%MI Dept. of Treasury (city list; statutory standard rate, not city-verified)michigan.gov20262026-06-23secondaryPending verification
Louisville/Jefferson County, KY2.2%Louisville Metro Revenue Commissionlouisvilleky.gov20262026-06-23primaryCurrent
Lexington-Fayette, KY2.25%LFUCG Division of Revenuelexingtonky.gov20262026-06-23primaryCurrent
Covington, KY2.45%Kenton County (official 2026 rate sheet)kentoncounty.org20262026-06-23primaryCurrent
Owensboro, KY1.78%City of Owensboroowensboro.org20262026-06-23primaryCurrent
Hopkinsville, KY1.95%City of Hopkinsvillechristiancountyky.gov20262026-06-23primaryCurrent
Frankfort, KY1.95%City of Frankfortfrankfort.ky.gov20262026-06-23primaryCurrent
Elizabethtown, KY1.95%City of Elizabethtownelizabethtownky.org20262026-06-23primaryCurrent
Bowling Green, KY1.85%City of Bowling Green (rate via secondary source per the doc's notes)bgky.org20262026-06-23secondaryPending verification
Florence, KY2%City of Florence (rate UNVERIFIED; commonly cited)florence-ky.gov20262026-06-23secondaryPending verification
Henderson County, KY1%Henderson County (rate UNVERIFIED)hendersoncountyky.gov20262026-06-23secondaryPending verification
Adams County, IN1.6%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Allen County (Fort Wayne), IN1.59%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Bartholomew County, IN1.75%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Benton County, IN1.79%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Blackford County, IN2.5%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Boone County, IN1.7%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Brown County, IN2.5234%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Carroll County, IN2.4733%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Cass County, IN2.95%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Clark County, IN2%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Clay County, IN2.35%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Clinton County, IN2.65%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Crawford County, IN1.65%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Daviess County, IN1.5%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Dearborn County, IN1.4%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Decatur County, IN2.45%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
DeKalb County, IN2.13%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Delaware County, IN1.5%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Dubois County, IN1.2%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Elkhart County, IN2%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Fayette County, IN2.82%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Floyd County, IN1.89%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Fountain County, IN2.1%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Franklin County, IN1.7%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Fulton County, IN2.88%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Gibson County, IN1.3%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Grant County, IN2.75%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Greene County, IN2.35%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Hamilton County, IN1.1%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Hancock County, IN1.94%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Harrison County, IN1%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Hendricks County, IN1.7%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Henry County, IN2.02%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Howard County, IN2.35%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Huntington County, IN1.95%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Jackson County, IN2.1%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Jasper County, IN2.864%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Jay County, IN2.5%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Jefferson County, IN1.03%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Jennings County, IN2.5%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Johnson County, IN1.4%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Knox County, IN1.7%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Kosciusko County, IN1%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
LaGrange County, IN1.65%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Lake County (Gary), IN1.5%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
LaPorte County, IN1.45%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Lawrence County, IN1.75%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Madison County (Anderson), IN2.25%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Marion County (Indianapolis), IN2.02%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Marshall County, IN1.25%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Martin County, IN2.5%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Miami County, IN2.54%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Monroe County (Bloomington), IN2.14%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Montgomery County, IN2.65%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Morgan County, IN2.72%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Newton County, IN1%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Noble County, IN1.75%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Ohio County, IN2%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Orange County, IN1.75%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Owen County, IN2.5%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Parke County, IN2.65%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Perry County, IN1.4%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Pike County, IN1.2%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Porter County, IN0.5%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Posey County, IN1.45%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Pulaski County, IN2.85%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Putnam County, IN2.3%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Randolph County, IN3%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Ripley County, IN2.38%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Rush County, IN2.15%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
St. Joseph County (South Bend), IN1.75%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Scott County, IN2.16%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Shelby County, IN1.7%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Spencer County, IN0.8%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Starke County, IN1.71%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Steuben County, IN1.99%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Sullivan County, IN1.7%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Switzerland County, IN1.45%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Tippecanoe County (Lafayette), IN1.28%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Tipton County, IN2.6%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Union County, IN2.75%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Vanderburgh County (Evansville), IN1.25%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Vermillion County, IN1.5%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Vigo County (Terre Haute), IN2%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Wabash County, IN2.9%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Warren County, IN2.12%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Warrick County, IN1%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Washington County, IN2%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Wayne County, IN1.25%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Wells County, IN2.1%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
White County, IN2.32%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Whitley County, IN1.6829%Indiana DOR (Departmental Notice #1, R46 / 01-26)in.gov20262026-06-23primaryCurrent
Birmingham, AL1%-See known gaps---Pending verification
Gadsden, AL2%-See known gaps---Pending verification
Bessemer, AL1%-See known gaps---Pending verification
Wilmington, DE1.25%-See known gaps---Pending verification
Newark, NJ1%-See known gaps---Pending verification
Multnomah County, OR (SHS Tax)0% to $125,000, 1.5% to $250,000, 3% above $250,000-See known gaps---Pending verification
Portland Metro Area, OR0% to $125,000, 1% above $125,000-See known gaps---Pending verification
Des Moines (DMPS) School District, IA7.5% of IA state income tax owed-See known gaps---Pending verification

Known gaps

These are the figures not yet confirmed from a current-year primary source, plus the modeling simplifications we have chosen to defer. Several describe tax year 2025, whose 2026 values may differ, so we flag them as pending verification rather than as merely missing a citation. Publishing this list is the point: a trustworthy tax reference states plainly what it has not yet confirmed.

Arizona standard deduction (single $15,750 / MFJ $31,500) describes TY2025.

indexing 'annual' with taxYear 2025 behind CURRENT_TAX_YEAR: Arizona conforms to the FEDERAL standard deduction, which indexes up every year, so the carried TY2025 amount is stale for 2026. E1b corrected the taxYear label (the figure and comment both called it a TY2025 fallback while it was stamped 2026).

Source we have:
https://azdor.gov/forms/individual-income-tax-highlights (2025 Highlights)
What closes it:
research (pull the TY2026 federal-conformed AZ standard deduction)

North Carolina standard deduction (single $12,750 / MFJ $25,500) describes TY2025.

indexing 'annual' with taxYear 2025 behind CURRENT_TAX_YEAR: the figure is the TY2025 amount carried into 2026 (docs/state-income-tax-2026.md: 'TY2025; verify 2026'). E1b corrected the taxYear label.

Source we have:
https://www.ncdor.gov/taxes-forms/individual-income-tax/tax-rate-schedules (TY2025)
What closes it:
research (confirm the TY2026 NC standard deduction)

Vermont standard deduction (single $7,650 / MFJ $15,300 / HoH $11,450 / MFS $7,650) describes TY2025.

indexing 'annual' with taxYear 2025 behind CURRENT_TAX_YEAR: Vermont has not published its TY2026 standard deduction, so the labelled prior-year figure is carried.

Source we have:
https://tax.vermont.gov/individuals/personal-income-tax (TY2025)
What closes it:
research (re-pull the TY2026 IN-111 booklet when tax.vermont.gov is reachable)

California's bracket schedule describes TY2025. Single/MFS and MFJ carry the FTB's TY2025 rate schedules (1% band to $11,079 single); the distinct HoH schedule (FTB Schedule Z) is a year older still, at TY2024 ($21,527 first kink).

indexing 'annual' with taxYear 2025 behind CURRENT_TAX_YEAR: the FTB publishes its indexed rate schedules in late summer, so TY2026 does not exist yet. SD-5b refreshed Single and MFJ from TY2024 to TY2025 (a real over-tax fix); no TY2025 Schedule Z row was available, and scaling one by an indexing factor would be fabrication, so HoH stays at TY2024 and its bands are a year narrow (over-taxes HoH, never under-taxes).

Source we have:
https://www.ftb.ca.gov/forms/2025/2025-540-tax-rate-schedules.pdf (FTB, TY2025)
What closes it:
research (pull the FTB TY2026 rate schedules when published, including Schedule Z)

New York's middle-bracket dollar thresholds are carried from the TY2025 Form IT-201 (single 5.5% band to $80,650, 6% band to $215,400).

indexing 'annual' with taxYear 2025 behind CURRENT_TAX_YEAR: the 2026 RATES are confirmed (NYS-50-T-NYS, rev. 1/26, effective 2026-01-01, carries the same nine rates), but the indexed thresholds behind them are the 2025 ones.

Source we have:
https://www.tax.ny.gov/pdf/current_forms/it/it201i.pdf (NY DTF, TY2025)
What closes it:
research (confirm the 2026 IT-201-I thresholds, and whether the 5.5% / 6% middle rates step down for 2026)

New Mexico's 6-bracket schedule (1.5% / 3.2% / 4.3% / 4.7% / 4.9% / 5.9%) describes TY2025.

indexing 'annual' with taxYear 2025 behind CURRENT_TAX_YEAR: the values match what NM Taxation & Revenue currently publishes, but NM has not posted 2026 indexed thresholds. No value is wrong; the label is simply honest about the year.

Source we have:
https://www.tax.newmexico.gov/all-nm-taxes/current-historic-tax-rates-overview/personal-income-tax-rates/ (NM T&RD, TY2025)
What closes it:
research (pull the 2026 NM schedule once posted)

South Carolina's PUBLISHED 2026 withholding tables (WH-1603, Rev. 10/30/25) and withholding formula (WH-1603F, Rev. 11/4/25) do not implement Act 110 at all. They still compute a 6.0% top rate with a standard deduction of 10% of gross wages capped at $7,500, and never mention SCIAD, 1.99%, 5.21%, or the $966. The engine models the ENACTED LAW (1.99% / 5.21% + SCIAD), so our number is what an SC filer OWES - and it is not what their employer is currently withholding.

the state has not caught up with its own statute, and this is confirmed rather than suspected: both documents were read on 2026-07-12 and both are revised LATE 2025, months before the Governor signed the act on 2026-03-30. Section 6 of the act directs SCDOR to 'adjust the withholding tables to reflect the amendments made in this act'; the posted documents still have not been. For TY2026, South Carolina paycheck WITHHOLDING and South Carolina annual LIABILITY are therefore running on two different laws, and SC employees are being materially OVER-withheld. This is not a modeling gap - the engine's standing decision is to model annual liability, so the engine is right and the paystub is the thing that is out of date - but it IS the single most consequential thing an SC user needs told, because their real paycheck will not match our estimate and the reason is neither party's error. It is disclosed on the South Carolina state page rather than silently absorbed. Recheck SCDOR's withholding page before launch and again in the fall; a revised WH-1603/WH-1603F could land at any time and would close this.

Source we have:
https://dor.sc.gov/sites/dor/files/forms/WH1603_2026.pdf (Rev. 10/30/25, 6.0% top rate); https://dor.sc.gov/sites/dor/files/forms/WH1603F_2026.pdf (Rev. 11/4/25, 0%/3%/6.0% subtraction method); both read 2026-07-12
What closes it:
research (recheck dor.sc.gov/withholding for a post-Act-110 revision)

South Carolina's 2026 figures are transcribed from the February 24, 2026 Senate-amended PRINTED text of H.4216, not from the enrolled Act 110 document; and the $30,000 bracket seam's TY2026 indexed value is unconfirmed against any SCDOR publication.

two caveats on an otherwise clean current-year primary, recorded rather than dropped. (1) The enrolled act would not download (scstatehouse.gov returned HTTP 522 repeatedly), so the Feb-24 printed text was used. That text IS the enacted text - the House CONCURRED in the Senate amendments on 2026-03-10, which adopts them as-is with no further changes, and the bill was then ratified R117 and signed - so the confidence is high, but it is an inference from the legislative history rather than a read of the final document. (2) 12-6-510(C)(1) says the brackets are 'indexed in accordance with Section 12-6-520'. Since the act first applies to TY2026, $30,000 should BE the TY2026 figure as enacted, and no SCDOR publication stating a different indexed breakpoint was found - but none stating $30,000 was found either. Neither caveat is gate-required (the ref is primary and current-year), and neither changes a figure. Both are the kind of thing that gets quietly forgotten once the numbers look right.

Source we have:
https://www.scstatehouse.gov/sess126_2025-2026/prever/4216_20260224.htm (S. Printed 2/24/26; House concurred 3/10/26, ratified R117 3/25/26, signed 3/30/26); the SC Code of Laws site has not yet codified Act 110 (normal codification lag)
What closes it:
research (retrieve the ratified Act 110 text and diff it against the Feb-24 version; check SCDOR's annual indexed-bracket information letter)

Four income-keyed state reliefs name FOUR DIFFERENT income measures, and the engine reads all of them against one figure: its household wage proxy (gross minus pre-tax deductions, plus any additional household income). Wisconsin's sliding-scale standard deduction keys on WISCONSIN INCOME; South Carolina's SCIAD fraction keys on FEDERAL AGI; Oregon's federal-tax-subtraction cap ladder keys on FEDERAL AGI (E2f); Missouri's federal-tax percentage ladder keys on MISSOURI AGI (E2f).

four statutes, four income measures, one proxy - and they are NOT equally approximate, which is why this is stated rather than folded into the existing MAGI-proxy entries. For SOUTH CAROLINA and OREGON the proxy is EXACT for the filer this calculator models: both read federal AGI, and for a wage-only filer the engine's base IS federal AGI. Nothing is approximated in either. For WISCONSIN and MISSOURI it is a genuine approximation: each state's own AGI is federal AGI plus that state's additions and minus its subtractions, and the engine models none of them, so a filer with meaningful state-specific adjustments sits on a slightly wrong rung. Drift is bounded by the mechanism: at Wisconsin's 12% single line, $1,000 of income mis-measurement moves the deduction by $120 and the tax by about $5. Missouri is a CLIFF rather than a line, so its drift is not smooth - a filer whose true Missouri AGI sits on the other side of $25,000 / $50,000 / $100,000 / $125,000 from the proxy takes a whole percentage step too many or too few - but the step is bounded too (10 points of a federal bill, so ~$380 of deduction at $50,000, worth ~$18/yr at Missouri's 4.7% rate). The alternative - inventing a second income measure for two states - would let two parts of the same engine disagree about what a filer earns, which is a worse failure than a bounded one. Same class as 'oh.exemption.magi-proxy' and 'ct.tables.magi-proxy'; a true state-AGI model closes all of them at once. Missouri carries a second, separate uncertainty about WHICH measure even governs - see 'mo.federal-deduction.agi-vs-gross-income'.

Source we have:
SC: H.4216 12-6-1140(15)(b) ('federal adjusted gross income'). WI: 2026 Form 1-ES Instructions, D-101A ('If Wisconsin income is:'). OR: ORS 316.695(3)(b)-(c) ('the federal adjusted gross income of the taxpayer'). MO: 2025 Form MO-1040 Instructions, Line 12 ('the Missouri Adjusted Gross Income reported on Line 6'). Every measure is exact in its own statute or form; only our reading of them is a proxy.
What closes it:
a true state-AGI model (out of scope for E2)

Massachusetts' personal exemption ($4,400 single/MFS, $6,800 HoH, $8,800 MFJ, plus $1,000 per dependent) is quoted from the TY2025 Form 1 instructions.

the TY2026 source does not exist yet: these are stable statutory amounts (M.G.L. c. 62 §3(B)) that R4b reads as carried into TY2026, but the TY2026 Form 1 is not published, so we have not READ a 2026 source. E2a labels the SourceRef 'annual' at taxYear 2025 rather than 'statutory-fixed' precisely so the gate demands this entry and forces a re-read, instead of letting a carried figure pass as confirmed.

Source we have:
https://www.mass.gov/doc/2025-form-1-instructions/download (MA DOR, TY2025 Form 1 line 2a, verbatim)
What closes it:
research (confirm the four amounts against the TY2026 Form 1 when published)

Vermont's $5,400-per-person personal exemption is DERIVED, not transcribed: no VT primary table was machine-readable (tax.vermont.gov's document directory is robots-blocked).

tier 'secondary': the figure rests on two independent confirmations rather than a reading of Vermont's own document - the federal NFC 2026 VT withholding bulletin ($5,300 -> $5,400), and a derivation from VT's 2026 withholding chart (each allowance cuts single weekly withholding ~$3.48; 0.0335 x 5,400 / 52 = 3.479, reproducing the chart to the tenth of a cent). Two agreeing derivations are why the figure SHIPS - applying no exemption at all over-taxed every Vermont filer - but 'we derived it' is not 'we read it', so the gap stays open.

Source we have:
USDA NFC 2026 VT withholding bulletin + VT 2026 withholding chart (derivation); https://tax.vermont.gov/individuals/personal-income-tax
What closes it:
research (open the IN-111 booklet or GB-1210 in a browser - they load interactively, only the fetcher is blocked - and transcribe line 5e)

Massachusetts' age-65+ and blindness additional exemptions (blindness $2,200 each; age-65 amount disputed) are not modeled; affected MA filers are over-taxed by ~5% of the omitted amount.

no engine input for the attribute: the calculator has no age or blindness field. R4 and R4b also DISAGREE on the age-65 amount ($700 vs $1,700) and neither captured the Form 1 line 2c/2d verbatim, which is a second reason to hold rather than guess.

Source we have:
https://www.mass.gov/info-details/massachusetts-personal-income-tax-exemptions (blindness $2,200 verbatim); age-65 amount unresolved
What closes it:
research (settle the age-65 amount against Form 1 line 2c/2d), then an engine phase that adds age/blindness inputs

New Jersey's $6,000 veteran exemption and $1,000 college-dependent exemption are not modeled; qualifying NJ filers are over-taxed by roughly the omitted amount times their marginal rate.

no engine input for the attribute, AND both are RETURN-ONLY: R4 confirmed the NJ-W4 has no line for either, so neither appears in withholding at all. A paycheck model that showed them would diverge from the filer's actual paycheck, which is a second, independent reason to defer.

Source we have:
https://www.nj.gov/treasury/taxation/military/vetexemption.shtml; https://www.nj.gov/treasury/taxation/git_over.shtml (both verbatim in R4)
What closes it:
an engine phase that adds veteran / college-dependent inputs (return-mode only)

Indiana's adopted-child ($3,000) and first-time-dependent ($1,500) additional exemptions are not modeled; the engine applies $1,000 per dependent plus $1,500 per qualifying child only.

no engine input for the attribute: the calculator has no adopted-child or first-time-dependent flag. Departmental Notice #1 carries both (WH-4 lines 7 and 8) and both DO appear in withholding, so this is a genuine shortfall - it over-taxes affected Indiana filers - rather than a return-only item.

Source we have:
https://www.in.gov/dor/files/dn01.pdf (IN DOR Departmental Notice #1, Tables B and C, verbatim)
What closes it:
an engine phase that adds adopted-child / first-time-dependent inputs

Ohio's per-person exemption amounts ($2,400 / $2,150 / $1,900 across the three MAGI bands) are the operative TY2025 figures, and only the middle one is verbatim-confirmed.

indexing 'annual' with taxYear 2025 behind CURRENT_TAX_YEAR, plus an inference inside it. ORC 5747.025(B)-(C) indexes the amounts every year (GDP deflator, rounded up to the nearest $50) and ODT re-indexes in AUGUST 2026, so the TY2026 operative amounts do not exist yet. Of the three shipped, only $2,150 is quoted from a primary: the TY2025 IT-1040 worked example reads 'modified adjusted gross income is $75,000. Thus, they claim three exemptions totaling $6,450' ($6,450/3 = $2,150). The outer two are the statutory bases ($2,350 / $1,850) plus the same single $50 indexing step that produced the confirmed middle figure - defensible, but derived rather than read. Shipping them still beats shipping nothing: Ohio applied NO exemption before E2b, which over-taxed every Ohio filer. Note the STRUCTURE is not stale - the $40k/$80k band edges and the $500,000 cap are codified TY2026 figures.

Source we have:
https://codes.ohio.gov/ohio-revised-code/section-5747.025 (ORC 5747.025, statutory bases + band edges + $500k cap, TY2026); ODT TY2025 IT-1040 instructions (the $2,150 worked example, verbatim)
What closes it:
research (re-verify all three tier amounts against ODT's August-2026 indexing release / the TY2026 IT-1040)

Utah's Taxpayer Tax Credit figures - the $2,111 per-dependent base addition and the three phase-out bases ($18,213 single/MFS, $27,320 HoH, $36,426 MFJ) - are the operative TY2025 amounts.

indexing 'annual' with taxYear 2025 behind CURRENT_TAX_YEAR: both are CPI-indexed and the TY2026 TC-40 does not ship until around January 2027, so no TY2026 figure exists to read. The 6% build rate and 1.3% phase-out rate are structural and stable; the RATE the credit runs against (4.45%) is a confirmed TY2026 figure via enacted SB 60. Only the indexed dollar amounts are carried. Modeling the credit at TY2025 amounts is strictly closer to the truth than E2a's alternative, which was not modeling it at all and over-taxing every Utah filer below roughly $92,500. Worth flagging separately: the Tax Commission's own credit webpage still displays the STALE TY2024 bases ($17,652 / $26,478 / $35,304); the TC-40 form is authoritative and the webpage lags it.

Source we have:
https://files.tax.utah.gov/tax/forms/current/tc-40.pdf (UT State Tax Commission, TY2025 TC-40 lines 11-20, verbatim)
What closes it:
research (re-read the TY2026 TC-40 when published, ~January 2027)

Ohio's exemption bands ($40,000 / $80,000 / $500,000) key on Ohio MAGI (federal AGI plus Ohio adjustments); the engine approximates it with the wage-based household income proxy.

no true MAGI in the engine: the calculator's income base is gross wages minus pre-tax deductions, plus any additional household income. That is EXACT for a wage-only filer (the case this calculator is built for) and drifts for one with interest, dividends, capital gains, or Ohio-specific adjustments. The same proxy already backs the federal CTC phase-out and the OBBBA deductions, so E2b reuses it rather than inventing a second income measure that could disagree with the first. Drift is bounded by one band step ($250 of exemption, worth $6.88 of tax) except at the $500,000 cap, where a filer near the line could land on the wrong side of a $1,900-per-person cliff.

Source we have:
https://codes.ohio.gov/ohio-revised-code/section-5747.025 (the bands are exact; only our income measure is approximate)
What closes it:
an engine phase that models non-wage income (interest, dividends, capital gains) and true AGI

Ohio's joint filing credit requires at least $500 of qualifying Ohio AGI from EACH spouse; the engine tests 'filing married AND additionalHouseholdIncome >= $500' instead.

the engine cannot see two spouses' incomes separately. A paycheck calculator models ONE earner's stub; the spouse's wages exist only as the optional additionalHouseholdIncome field. So a joint filer who does not enter a spouse income gets NO joint filing credit even if their spouse in fact earns. That OVER-taxes (the safe direction) and never invents a credit for a genuinely single-earner couple, who are correctly not entitled to one. It also means the credit is only ever visible in a two-income scenario, which is exactly the scenario it exists for. Note the statute's 'qualifying income' also EXCLUDES interest, dividends, royalties, rents, and capital gains - a distinction the engine has no way to draw, and a second reason the proxy is an approximation rather than a translation.

Source we have:
https://codes.ohio.gov/ohio-revised-code/section-5747.05 (ORC 5747.05(E), verbatim on the $500-per-spouse test)
What closes it:
an engine phase that models per-spouse income separately (and non-wage income, for the qualifying-income exclusions)

Ohio's $50 senior citizen credit (age 65+) and its retirement income credit (up to $200, table-based) are not modeled; qualifying Ohio filers are over-taxed by up to the omitted credit.

no engine input for the attribute, AND an unreadable source. Both credits need a filer attribute the calculator does not ask for (age; retirement income), and the retirement credit's tier table is printed as a RASTER IMAGE in the IT-1040 instructions, so R4b could not machine-extract its rows - only the $200 maximum and the 'MAGI less exemptions under $100,000' ceiling. Guessing the tiers to model a $200-maximum credit would be fabrication for very little money. Omitting a credit over-taxes, which is the safe direction. Ohio has NO separate low-income credit to add here: its low-income relief IS the $26,050 zero-tax threshold, which the engine already applies.

Source we have:
ODT Help Center FAQs (the $50 amount, the $200 cap, and both $100,000 ceilings are quoted verbatim in R4b); statutory basis ORC 5747.05(B) and 5747.055; the retirement-credit tier table is not machine-extractable
What closes it:
research (transcribe the retirement-credit tier rows from the IT-1040 booklet by eye), then an engine phase that adds age / retirement-income inputs

Minnesota's head-of-household bracket thresholds ($40,100 / $161,130 / $264,050) describe TY2025; Single and MFJ were refreshed to TY2026 in Phase SD-5b.

the source does not cover it: the MN DOR's 2026 bracket release publishes Single and MFJ only, with no HoH row. Deriving 2026 HoH thresholds from an indexing factor would be fabrication, so the TY2025 HoH bands are carried. They are slightly narrow, which over-taxes (never under-taxes) HoH filers.

Source we have:
https://www.revenue.state.mn.us/press-release/2025-12-16/minnesota-income-tax-brackets-standard-deduction-and-dependent-exemption (Single + MFJ only)
What closes it:
research (pull the MN DOR 2026 HoH rate schedule)

Maine publishes a distinct head-of-household standard deduction ($22,950) that the engine does not carry; ME HoH filers get the single amount ($15,300).

unmodeled figure: Phase SD-5b promoted Maine's HoH BRACKETS to their distinct published schedule but did not ingest the HoH standard deduction (out of scope for a bracket phase). standardDeductionFilingStatusRules on maineConfig pins HoH deduction routing to the single amount so the bracket promotion cannot silently change it. The shortfall over-taxes ME HoH filers by roughly the deduction difference.

Source we have:
docs/state-income-tax-2026.md section 2a (Maine Revenue Services, 2026: HOH $22,950)
What closes it:
an SD standard-deduction phase (ingest the ME HoH figure and flip the rule to 'distinct')

Eight local jurisdictions in five states carry NO SourceRef because no municipal research doc exists for them: Birmingham / Gadsden / Bessemer (AL), Wilmington (DE), Newark (NJ), Multnomah County + Portland Metro (OR), and the Des Moines DMPS school-district surtax (IA).

no source to cite: docs/ has municipal files for PA, OH, MI, KY, MD, IN, MO and NY, and none for AL, DE, NJ, OR or IA. P10 deliberately left these eight BARE rather than attaching a plausible-looking official URL nobody read, which would have been the precise laundering the phase exists to prevent. The rates may well be right - Multnomah's SHS brackets and Wilmington's 1.25% are stable, well-known figures - but 'well-known' is what Toledo's 2.25% was too, and that one was wrong. Note the Iowa figure was ALREADY self-flagged in a code comment ('Verify against the Iowa DOR's annual School District Surtax Rates notice before relying on this') - a comment cannot fail a build, which is why it sat there; this entry can.

Source we have:
none (no docs/municipal-{alabama,delaware,newjersey,oregon,iowa}-2026.md)
What closes it:
research (a municipal source pass for AL, DE, NJ, OR and IA), then a P10-style ingest

Seven Pennsylvania EIT rates - Pittsburgh 3.00%, Allentown 1.975%, Erie 1.18%, Wilkes-Barre 3.00%, Scranton 3.40%, Reading 3.60%, Bethlehem 1.00% - are stamped tax year 2025 and are NOT a live read of the PA DCED register.

indexing 'annual' with taxYear 2025 behind CURRENT_TAX_YEAR. The authoritative source is DCED's real-time tax register at apps.dced.pa.gov, which is a JavaScript ReportViewer the research pass could not fetch; the rates come instead from official city pages plus a DCED-DERIVED PSD list. The doc is blunt about it: 'Treat non-Philadelphia rows as best authoritative available, not a live-register read.' Philadelphia is the only fully authoritative PA row and carries no gap. Three of the seven (Scranton, Reading, Wilkes-Barre) are Act 47 DISTRESSED cities, whose elevated rates change by recovery-plan amendment rather than on an annual cycle - the class most likely to have moved since the 2025 figure was recorded.

Source we have:
https://dced.pa.gov/local-government/local-income-tax-information/psd-codes-and-eit-rates/ (PA DCED, TY2025 list); official city pages for Scranton / Reading / Bethlehem
What closes it:
research (re-confirm each PSD via the DCED address lookup at apps.dced.pa.gov/munstats-public/findlocaltax.aspx, which splits resident/nonresident/LST with effective dates)

Harrisburg's modeled 2.0% resident EIT is the CITY portion only. The combined city + school-district rate an employee actually pays is unconfirmed, so 2.0% is a floor rather than an answer, and the true figure is very likely higher.

tier 'secondary': the research doc flags this row UNVERIFIED. The 2.0% city rate is confirmed by ordinance (ecode360), but Harrisburg is an Act 47/205 distressed city whose EIT is layered with a school-district component and a special Act 205 levy, and neither the combined resident rate nor the nonresident rate could be confirmed from a primary source. An ordinance URL exists, which is exactly why this needed care: it would have been easy to attach it as a clean primary ref and call the number sourced. It is not sourced - it is a component of the number, cited honestly as such.

Source we have:
https://ecode360.com/13741421 (City of Harrisburg ordinance, city portion only; combined rate not confirmed)
What closes it:
research (DCED address lookup for the Harrisburg PSD, which resolves the combined municipal + school-district resident rate)

Fourteen Michigan jurisdictions carry a rate that is the STATUTORY MAXIMUM under MCL 141.503 rather than a figure re-read at the city's own site: the thirteen 1.0%-standard cities Albion, Battle Creek, Benton Harbor, Big Rapids, Grayling, Hamtramck, Hudson, Ionia, Jackson, Lapeer, Muskegon Heights, Portland and Springfield, plus Highland Park at its special 2.0% authorization.

tier 'secondary': a ceiling is not a rate. The MI Treasury page lists which cities levy an income tax but does not restate each city's current rate, so any of these fourteen could levy below the cap, in which case the engine over-taxes them. The v2 verification pass (docs/municipal-michigan-2026-v2.md, 2026-07-15) CLOSED this gap for the six priority standard cities (Lansing, Flint, Pontiac, Port Huron, Walker, Muskegon) plus East Lansing, each read at its own income-tax source and confirmed at the full 1.0% / 0.5%; those seven now carry clean primary own-source refs alongside Detroit (2.4%), Grand Rapids (1.5%) and Saginaw (1.5%). Highland Park (special 2.0%, not re-read this pass) and the thirteen remaining standard cities were NOT re-read and stay here. L2 (this round) deliberately gave the ten own-source-verified cities a nonresident-rate + resident-credit work-location rule and left these fourteen resident-only, so no nonresident scenario is modeled on an unconfirmed base.

Source we have:
https://www.michigan.gov/taxes/questions/iit/accordion/general/what-cities-impose-an-income-tax (MI Treasury city list; MCL 141.503 statutory standard); detail in docs/municipal-michigan-2026-v2.md
What closes it:
research (read each remaining city's own income-tax page, linked from the Treasury list, as the v2 pass did for the ten verified cities)

Bowling Green's 1.85% occupational tax rate reaches us through a secondary source, not a parsed primary rates table.

tier 'secondary': the Kentucky doc's own verification notes list Bowling Green among its 'secondary-source fallbacks' - figures that 'came from search snippets / KACO data briefs / a Warren County PDF rather than a directly parsed primary rates table'. The doc's rate TABLE cites bgky.org, but its NOTES contradict that, and when a source disagrees with itself the honest label is the weaker one. P10 corrected the engine's 1.75% to the doc's 1.85% (no source anywhere supports 1.75%) while keeping the tier honest about how the 1.85% was obtained.

Source we have:
https://www.bgky.org/finance/license (City of Bowling Green; rate via secondary source per the doc's own notes)
What closes it:
research (read the City of Bowling Green occupational-license rate table directly)

Florence, KY is modeled at 2.0%, a rate the research doc explicitly could not confirm ('commonly cited ~2.0%'; the city's 2026 rate PDF would not parse).

tier 'secondary': the doc flags this row UNVERIFIED in as many words. 'Commonly cited' is the same standing that Toledo's wrong 2.25% enjoyed, so the engine keeps the figure (removing Florence's local tax entirely would under-tax by more than the uncertainty) but refuses to call it sourced.

Source we have:
https://florence-ky.gov/businesses/occupational-licenses/ (City of Florence; 2026 PDF not parsed)
What closes it:
research (open the Florence 2026 occupational-license rate PDF)

Three Pennsylvania Act 47 / Act 205 DISTRESSED cities carry a resident EIT the research doc will not vouch for: Chester (2.75%, from a ~2015 source), New Castle (2.1%, 'historically'), and Lebanon (1.40%, the CITY ordinance rate with the school-district component unconfirmed). Harrisburg has the same problem and its own entry.

tier 'secondary'. Distressed-city rates are the least stable in Pennsylvania and the hardest to read: they are ELEVATED by a recovery plan, they change by plan amendment rather than on an annual cycle, and the DCED live register that would settle them is a JavaScript ReportViewer the research pass could not fetch. They are modelled rather than dropped because the direction of the error matters - a distressed city's rate is HIGH (Chester and New Castle both exceed 2%), so omitting them would under-tax their residents by MORE than the uncertainty in the figure. Lebanon's 1.40% is a floor, not an answer: the true combined rate is very likely higher.

Source we have:
https://www.chestercity.com/ (Chester, ~2015); https://www.newcastlepa.org/ (New Castle, historical); https://ecode360.com/31231072 (Lebanon, city ordinance, city portion only) - none confirmed for 2026
What closes it:
research (DCED address lookup at apps.dced.pa.gov/munstats-public/findlocaltax.aspx, which resolves each PSD's combined resident rate with effective dates)

Mansfield, OH is modelled at 2.25%, and OUR OWN RESEARCH DOC DISAGREES WITH ITSELF about the figure: its table row says 2.25%, while its verification notes say the city self-administers, its page was never fetched, and the 'commonly cited' rate is ~2.0% - 'NOT verified here'.

tier 'secondary'. Two of our own numbers, 25 basis points apart, in the same file. Modelled at the table's 2.25% on the same reasoning that keeps Florence KY in: dropping Mansfield entirely would under-tax its residents by the WHOLE rate, which is a far bigger error than the 0.25 points in dispute. But an internal contradiction is not a source, and this figure does not get to look like one. Worth noting the doc was RIGHT to flag itself - a source that records its own uncertainty is doing its job, and the failure mode P10a found was the opposite one, where a confident number had no source at all.

Source we have:
https://mansfieldohio.gov/finance-income-tax-department/ (never fetched); docs/municipal-ohio-2026.md - table row 2.25% vs verification note '~2.0%, NOT verified'
What closes it:
research (open the Mansfield income-tax page and settle it)

Kentucky is the ONE state P10b deliberately did NOT expand. The engine models 10 KY jurisdictions and the research doc holds ~22, but the extra rows cannot be ingested safely: KY occupational license taxes STACK, and LocalTaxConfig models one jurisdiction per filer.

an ENGINE limitation, not a data gap, and ingesting the data anyway would have made the calculator WORSE while making it look better. A Kentucky employee routinely owes a CITY tax AND a COUNTY tax AND a school-district tax on the same wages - the doc's own example is Georgetown 1.0% + Scott County 1.0% + Scott County Board of Education 0.5%, a true burden of 2.5%. Ingest the standalone rows and a Georgetown resident selects 'Georgetown', is charged 1.0%, and is UNDER-TAXED by 60% of their local bill, on a page that now looks more precise than the one before it. The ten existing entries are safe precisely because each is already a COMBINED or genuinely standalone figure verified as such (Louisville's 2.2% = 1.25 Metro + 0.2 TARC + 0.75 school; Lexington's 2.25% is the whole LFUCG rate). Closing this needs a stacked-jurisdiction mechanism, not more rows. See also 'ky.wage-caps.unmodeled': several KY jurisdictions also cap the wage base, which the engine cannot express either.

Source we have:
docs/municipal-kentucky-2026.md (~22 jurisdictions, and its own warning: 'Employees frequently owe city + county + school district simultaneously')
What closes it:
an engine phase that models stacked local jurisdictions (a filer's city AND county AND school district), then a KY ingest

HENDERSON_KY is modeled as 'Henderson County, KY' at 1.0%, an unconfirmed rate - AND the entry is ambiguous about which jurisdiction it represents. Henderson CITY levies 1.65% (verified, effective 2023-01-01); Henderson COUNTY levies a separate tax outside city limits whose 2026 rate the research pass could not confirm.

tier 'secondary', plus a naming problem worth more than the tier. The engine models the unverified COUNTY figure while the city page built on it is the one a user searching 'Henderson KY paycheck' will land on. A resident of the city of Henderson is therefore under-taxed by 0.65 points against a rate that IS verified. Recorded rather than silently reassigned, because switching the entry to the city rate changes which jurisdiction the page describes and is a content decision as much as a data one.

Source we have:
https://www.hendersonky.gov/174/Occupational-License-Tax (CITY, 1.65%, verified); https://www.hendersoncountyky.gov/205/Occupational-Tax-Administration (COUNTY, rate UNVERIFIED)
What closes it:
research (confirm the Henderson County rate), then a conductor call on whether this entry should be the city or the county

TWELVE of Ohio's 43 municipalities cannot be modelled as the RESIDENCE half of a commute, because their credit FACTOR is not published. Ten publish a credit RATE CAP with no factor (Toledo, Dayton, Lorain, Lakewood, Newark, Warren, Lancaster, Brunswick, Parma Heights, Norton - the doc's 'Credit up to 2.5%' rows, as against its 'PERCENT% credit up to 2.5%' rows) and two publish no credit rule at all (Springfield, whose collection moved to RITA mid-2025, and Fairfield, whose row says only 'CCA-administered').

the source does not carry the figure, and the missing one is not guessable. A 100% factor is the LIKELY reading of a bare rate cap - most Ohio cities do grant one - but 'likely' is exactly the standing that Anne Arundel's 2.81% and Toledo's 2.25% enjoyed, and both were wrong. Rule 8 forbids interpolation in those words. So these twelve are offered as WORK cities (their RATE is published, and Ohio charges a nonresident the same rate a resident pays) and refused as RESIDENCES: canModelWorkLocation returns 'residence-credit-rule-not-published', the engine THROWS rather than falling back to a residence-only figure, and the UI never offers the input. The direction of the refusal is the safe one - a resident of these twelve sees exactly the number they saw before L1, with a note saying we will not estimate their commute. Worth stating plainly: the doc's own 'Credit outliers' note is NOT treated as evidence of the others' factors, because that list is demonstrably incomplete (it omits Lorain, Newark, Lancaster, Brunswick and Wadsworth, all of which cap below their own rate). Reasoning from an incomplete list's silence is how a guess becomes a fact.

Source we have:
docs/municipal-ohio-2026.md, Credit Rule column - which distinguishes '100% credit up to X%' (both parameters, modelled) from 'Credit up to X%' (the cap only). Each city's RITA/CCA member page or ordinance prints a 'Credit Factor' and a 'Credit Rate' separately.
What closes it:
research (read the Credit Factor off each of the twelve cities' RITA/CCA member page or income-tax ordinance - one pass closes all twelve, and Toledo and Dayton alone are two of Ohio's largest cities)

The work-location model (Phase L1) allows exactly ONE work jurisdiction, and treats ALL of the filer's wages as earned there. A filer who splits a year across two work cities - or works partly from home in their residence city, which is now common - is not expressible.

a modelling simplification, and it is where the resident credit's rate CAP is approximate rather than exact. Ohio's cap is a rate against the wages the WORK city taxed; with one work city those are all of them, so 'rateCap x wages' is exact. Split the wages and the true credit is computed per work city against that city's share, which the engine cannot represent. It also means an Ohio hybrid worker (three days in Columbus, two at home in Dublin) is modelled as a full Columbus worker, which over-states the work-city line and under-states the residence line. The direction of the net error depends on the pair. Note this is the same shape as the household-income proxy: the engine models ONE person's ONE job, which is what a paycheck calculator is, and the seams show wherever the tax code prices a second one.

Source we have:
docs/municipal-ohio-2026.md (the credit is levied against tax paid to 'the work city', singular in every published rule; the apportionment rules for multi-city wages live in each city's ordinance and were not researched)
What closes it:
an engine phase that models multiple work jurisdictions with a wage split, plus a research pass on municipal apportionment

The engine models ONLY the resident->work pairs docs/reciprocity-2026.md publishes: 58 reciprocity pairs, 3 no-reciprocity credit pairs (NJ->NY, CT->NY, NY->NJ), and the District's structural nonresident exemption (the doc's 62nd row, which is a wildcard rather than a pair). Every other pair is REFUSED - canModelStateCommute returns 'pair-rule-not-published' and calculate2026Paycheck throws. Two that readers will certainly ask for: New Hampshire -> Massachusetts, and Indiana -> Illinois.

the doc enumerates every RECIPROCITY agreement, plus three credit pairs chosen for their commuter volume. It does NOT enumerate every no-reciprocity pair in America. So the absence of a pair from the doc means we have not read its rule - it does not mean the pair has no agreement, and it does not license us to assume the credit mechanism applies. The two directions of guessing are both live: infer reciprocity from geography and a Massachusetts commuter is told New Hampshire's zero income tax is the whole story when Massachusetts in fact taxes them in full; infer a credit rule from a neighbouring pair and we have copied New Jersey's cap onto a state that may cap differently. It is nearly true that every income-tax state credits tax paid to another state - and 'nearly true' is exactly the standing Anne Arundel's 2.81% had. The refusal is the safe direction: a pair we cannot model gets no page, not a page with a plausible number on it.

Source we have:
docs/reciprocity-2026.md (62 published rows). Nothing for NH-MA, IN-IL, or the other ~2,380 ordered pairs.
What closes it:
research (a per-pair pass on the resident-credit statutes and forms of the states with real commuter volume, starting with MA, IL, and the remaining Northeast corridor)

Fixed in Phase P11c. State-administered employee payroll programs (state disability, paid family and medical leave, and the employee share of unemployment and workforce contributions) now follow the WORK state for a cross-state commuter, not the state of residence. A New Jersey resident working in New York has New York's disability and paid-family-leave contributions withheld, not New Jersey's TDI, FLI and UI. What remains open is narrower: the work-state rule is confirmed from each program's own statute or agency guidance for New Jersey, New York, Connecticut, Pennsylvania, Minnesota, Rhode Island, Massachusetts and Delaware, but it is applied to California, Hawaii, Washington, Oregon and Colorado by general inference rather than a read of those five agencies. Washington's WA Cares long-term-care program is the least certain, because it has portability rules that were not checked against the Washington agency in this pass.

The situs rule is now sourced. docs/commute-payroll-situs-2026.md quotes the US Department of Labor localization-of-work cascade and the New Jersey, New York, Connecticut and Pennsylvania statutes and agency guidance, all of which put coverage where the work is performed for a full-time in-person commuter. The same rule for California SDI, Hawaii TDI, Washington PFML and WA Cares, Oregon Paid Leave and Colorado FAMLI was flagged unresolved in that research rather than confirmed, so extending the rule to those five is a safe inference for the in-person commuter (localization test one is dispositive) rather than a read of their own agencies. No published commute page uses any of the five as its work state today, so no live figure depends on the inferred branch.

Source we have:
docs/commute-payroll-situs-2026.md carries a primary, per-program source for New Jersey, New York, Connecticut, Pennsylvania, Rhode Island, Massachusetts, Delaware and Minnesota. The five inferred states are named there under 'unresolved / not primary-sourced'.
What closes it:
research reading each of California SDI, Hawaii TDI, Washington PFML and WA Cares portability, Oregon Paid Leave and Colorado FAMLI from its own agency; only needed before any of those five is published as a commute work state

The engine models ONE work state and treats 100% of the filer's wages as earned there. A commuter who splits the year between two states, or works part of the week from home in their residence state, is not expressible.

the same simplification as 'local.work-location.single-jurisdiction', one level up, and it is what makes the nonresident computation exact rather than approximate. States that prorate a nonresident's deductions and exemptions by the source-income ratio are proroting by 1 when the ratio is 1, so the work state's tax equals the tax it would charge a resident - which is what the engine computes. Split the wages and that stops being true in both limbs: the work state's tax is apportioned, and the resident state's credit cap is the resident tax on the DOUBLY-taxed slice rather than on the whole. The direction of the net error depends on the pair and on the split. Note the hybrid-work case is now the common one, and for NJ/CT residents of New York employers it interacts with the convenience rule below.

Source we have:
docs/reciprocity-2026.md publishes the pair rules; nonresident apportionment lives in each state's nonresident-return instructions and was not researched.
What closes it:
an engine phase modelling a wage split across states, plus a research pass on nonresident apportionment and the doubly-taxed-income credit base

New York's convenience-of-the-employer rule is not modelled. It sources a remote workday to NEW YORK - and taxes it as New York income - when the employee works for a New York employer and works from home for their own convenience rather than the employer's necessity. A New Jersey or Connecticut resident who works two days a week from home for a New York employer is, under this rule, still taxed by New York on all five.

the engine has no concept of a remote workday (see 'commute.credit.all-wages-work-sourced'), so it cannot apply the rule - but the engine's answer happens to LAND on the convenience-rule outcome anyway, because it treats 100% of wages as earned in the work state, which is what the rule produces for the employee it catches. So the number shown to a NJ-resident/NY-employer commuter is right for the wrong reason, and WRONG for the two groups the rule does not catch: someone whose remote days meet the employer-necessity test, and someone who works for a non-New-York employer. Naming it matters more than most gaps because it is the single most misunderstood rule in the country's biggest commute corridor, and the NJ->NY and CT->NY pages say so out loud.

Source we have:
docs/reciprocity-2026.md, verification note: "NY's 'convenience of the employer' rule can additionally source remote workdays to NY for NY employers - relevant to NJ/CT residents of NY employers, beyond pure reciprocity scope."
What closes it:
research (the NY TSB-M convenience-rule guidance and its necessity tests) + the wage-split engine phase above

Philadelphia cannot be modelled as the RESIDENCE half of a commute. A Philadelphia resident who works outside the city still owes the resident wage tax (3.735%) on those wages, but what Philadelphia credits them for a tax paid to another state or locality is not published, so the engine refuses the pair rather than guessing the credit.

docs/municipal-pennsylvania-2026.md carries Philadelphia's rates and its 'no credit for other-state tax vs. nonres. earnings tax' note - which is about the NONRESIDENT earnings tax, not about what a RESIDENT may credit. Reading it as the resident rule would be reasoning from a sentence about the other direction. Exactly the L1 device and the L1 reason: Philadelphia is a valid WORK city (its nonresident rate, 3.425%, IS published, and it is the fact the whole commute cluster turns on) and an invalid commute RESIDENCE. The refusal costs one page - live-in-pennsylvania-work-in-new-jersey is built for a Pennsylvania resident OUTSIDE Philadelphia - and it buys the guarantee that no Philadelphian is shown a fabricated credit.

Source we have:
docs/municipal-pennsylvania-2026.md (Philadelphia row: resident 3.735%, nonresident 3.425%, eff. 7/1/2026, phila.gov - fully authoritative on the RATES).
What closes it:
research (Philadelphia's own credit ordinance for taxes paid to other jurisdictions - one page on phila.gov closes it)

An Indiana county cannot be modelled as the RESIDENCE half of a commute. The county LIT follows the county of residence as of January 1, so an Indiana resident keeps paying it wherever they work - but whether Indiana credits them for a local tax paid to another state's city is not published. The Indiana -> Louisville direction is therefore refused, and there is no live-in-indiana-work-in-kentucky page.

this is a real and populous commute (Clark and Floyd counties into Louisville) and it is the one place the Louisville nonresident rate - 1.45%, against the 2.2% a resident pays - would have been most useful to a reader. The engine declines it anyway. The alternative is to assume Indiana grants no credit (which double-taxes the commuter and over-states their bill by 2.0% of wages) or that it grants a full one (which under-states it); neither is published and the difference between them is about $2,000/yr on a $100,000 salary. The reverse direction, Kentucky -> Indiana, IS modelled and IS published: Kentucky's occupational tax reaches only wages earned in the jurisdiction, so a Kentucky resident owes their home county nothing, and Indiana's nonresident county rate equals its resident rate.

Source we have:
docs/municipal-indiana-2026.md (all 92 county rates; 'nonresident rate = resident rate'; county tax determined by county of residence on Jan. 1) and docs/reciprocity-2026.md (WH-47 does not cover the LIT). Neither carries Indiana's credit rule for out-of-state local tax.
What closes it:
research (Indiana DOR guidance on the county-LIT credit for taxes paid to other jurisdictions)

Whether an Ohio municipality's resident credit extends to a local tax paid to ANOTHER STATE's jurisdiction is not published. So the Ohio -> Kentucky direction is refused as a page: a Cincinnati resident working in Covington is not shown a local-tax total, and there is no live-in-ohio-work-in-kentucky page.

L1 read Ohio's credit rules off RITA/CCA member pages that describe a credit for tax paid to 'another municipality'. Whether Covington, Kentucky is 'another municipality' for Cincinnati's purposes is a question those pages do not answer, and the engine would happily compute an answer if asked - computeWorkLocationLocalTax does not know a state line is being crossed. Applying Cincinnati's 100%-up-to-1.8% credit against Covington's 2.45% occupational tax produces a clean, plausible number that rests entirely on an assumption nobody sourced. The reverse direction, Kentucky -> Ohio, needs no such assumption and IS built: Kentucky's occupational tax reaches only wages earned in the jurisdiction, so the Kentucky home city collects nothing and Cincinnati's published rate is the whole local bill. That is also the far larger commute.

Source we have:
docs/municipal-ohio-2026.md (each city's credit factor and rate cap, for tax paid to 'the work city') and docs/municipal-kentucky-2026.md (the Covington rate). Neither addresses a credit across the state line.
What closes it:
research (Cincinnati's income-tax ordinance on credits for taxes paid to non-Ohio jurisdictions; ORC 718's credit provisions)

A Yonkers-style local surcharge (a multiplier on the resident's STATE tax) is computed from the residence state's own tax, before any cross-state credit is applied. A Yonkers resident who works in New Jersey is not modelled.

the surcharge's base is 'the resident's New York State tax', and for a commuter claiming a credit for New Jersey tax that figure is genuinely ambiguous - it is not published whether Yonkers reads the pre-credit or the post-credit line. No commute page is built for any pair involving Yonkers or the Des Moines school surtax, so nothing published today depends on the answer; this entry exists so that the next person to build one finds the question already asked rather than silently answered.

Source we have:
docs/municipal-newyork-2026.md carries the Yonkers surcharge multiplier; it does not address a resident commuting out of state.
What closes it:
research (NY DTF guidance on the Yonkers surcharge base for a resident claiming an IT-112-R credit)

For an Ohio commuter the engine computes the ANNUAL LIABILITY (work-city tax, plus the residence city's tax net of its credit). That is not what lands on the paycheck: an Ohio employer withholds for the WORK city, and the residence city's residual is normally settled by the resident on an annual municipal return, or through quarterly estimates.

the engine's standing decision is to model annual liability (that is what calculate2026Paycheck is), and this is a place where liability and withholding genuinely diverge for a real, large group of filers. The number is RIGHT - a Findlay resident working in Toledo does owe both cities in full - but a chunk of it may not appear on their stub, and they can owe it in a lump at filing. Some employers do offer courtesy withholding for the residence city, which closes the gap for those employees and not for others; the engine cannot know which. Same class as 'sc.withholding-tables.pre-amendment': the engine models what is owed, and where the paystub disagrees, the disclosure belongs on the page rather than being absorbed silently.

Source we have:
docs/municipal-ohio-2026.md ('Ohio municipal tax is levied on wages where earned (work city); the city of residence typically grants a resident credit for tax paid to the work city')
What closes it:
content (the Ohio city pages disclose it; a withholding-vs-liability toggle would close it properly)

Several Kentucky occupational taxes CAP the wage base; the engine applies every KY local rate uncapped. Covington's cap (the FICA/Social Security wage base) is verified; Kenton County's verified tiered structure (0.6997% up to $88,050, then 0.1097% above) is not modeled at all; Lexington's and Owensboro's commonly-cited caps could not be confirmed on a primary page.

no wage-cap field on LocalTaxConfig. Uncapped application OVER-taxes high earners in a capped jurisdiction, and the error grows without bound as income rises - at Covington's 2.45% a filer earning $300,000 is over-taxed by roughly $2,800 against a $184,500 cap. The Lexington and Owensboro caps are separately UNVERIFIED, so those two carry a second uncertainty: we do not know whether a cap applies, and if it does we could not model it anyway. Kenton County's threshold is pegged to a prior-year/half SS figure rather than the live base and the doc warns it must be re-verified annually.

Source we have:
https://kentoncounty.org/DocumentCenter/View/4143 (Kenton County 2026 rate sheet - Covington FICA cap and the Kenton tiered cap, both verified); Lexington and Owensboro caps UNVERIFIED per docs/municipal-kentucky-2026.md
What closes it:
research (confirm the Lexington and Owensboro caps), then an engine phase that adds a wage cap to LocalTaxConfig

Philadelphia's wage tax steps DOWN every July 1 under a five-year FY26-FY30 reduction plan (3.74% through 2026-06-30, then 3.735%). It is the only rate in local-taxes.ts with a scheduled mid-year change.

a correct figure here goes stale on a KNOWN DATE rather than drifting, which makes it a different kind of risk from everything else in this file - and the engine's pre-P10 value (3.79%, the rate that expired 2025-06-30) is what happens when nobody diarises it. The site models annual liability with a single rate, so it cannot represent a year that straddles the seam; it carries the rate in force TODAY. Philadelphia's 1.5% Schedule SP reduced rate for tax-forgiveness-qualified filers is also unmodeled, which over-taxes low-income Philadelphia residents who qualify.

Source we have:
https://www.phila.gov/services/payments-assistance-taxes/taxes/income-taxes/earnings-tax-employees/ (Philadelphia Dept. of Revenue; 6/11/2026 notice confirming the 7/1/2026 step to 3.735% / 3.425%)
What closes it:
research (re-read the Philadelphia rate each June, before the July 1 step)

Yonkers levies a 0.5% nonresident earnings tax (Form Y-203) on wages earned within the city; the engine models the resident surcharge only.

unmodeled mechanism: the engine keys local tax off residence, so a nonresident who works in Yonkers is charged no Yonkers tax. Under-taxes that filer. Small in absolute terms (0.5%, with no liability at all below $3,000 of Yonkers wages) and already disclosed in the Yonkers city page's pendingDataNotes; formalised here so it is carried in the ledger rather than in one page's prose.

Source we have:
https://www.tax.ny.gov/pdf/current_forms/it/y203i.pdf (NY DTF Form Y-203-I, line 6)
What closes it:
an engine phase that models work-location local tax separately from residence

Georgia supplemental withholding rate 5.19% (STATE_SUPPLEMENTAL_2026.GA).

predates HB 463: the cited 2026 Employer's Tax Guide is stamped 'REVISED: December 2025', five months before HB 463 (signed 2026-05-11) cut the income-tax rate to 4.99%. Correct-as-published but of unknown staleness.

Source we have:
https://dor.georgia.gov/document/document/2026-employers-tax-guide/download (Dec 2025)
What closes it:
research (re-read the post-HB-463 Employer's Tax Guide)

The refundable Additional Child Tax Credit (ACTC, up to $1,700/child; 15% phase-in above $2,500 earned income) is not modeled; calculate2026Paycheck applies only the nonrefundable CTC/ODC (calculator.ts:492-494).

deliberate simplification: the refundable ACTC is a return-time computation deferred to a later module. CREDITS_2026.childTaxCreditRefundableCap records the $1,700 cap for reference but the engine does not refund it.

Source we have:
Rev. Proc. 2025-32 §4.05(2); IRC §24(d)/(h)(5)/(h)(6) (docs/federal-credits-w4-step3-2026.md Q3)
What closes it:
E2 / a future return-time refundable-credit module

Idaho exempts a 0%-rate base band (~$4,811 single / $9,622 MFJ, 2025-posted thresholds) before its 5.3% flat rate; the engine models Idaho as pure-flat (all-states.ts idahoConfig), a slight over-tax.

deliberate simplification: the 0% exemption band is not represented, so low-income Idaho filers are over-taxed by up to the band's value.

Source we have:
https://tax.idaho.gov/taxes/income-tax/individual-income/individual-income-tax-rate-schedule/
What closes it:
E2 (model the 0% base band)

Arkansas Low Income Tax Table and near-edge bracket adjustment are not modeled; the 5-bracket schedule is the base for filers above the low-income table.

known simplification: the tapering credit near the bracket edges is unmodeled.

Source we have:
AR DFA withholding instructions (5-bracket schedule)
What closes it:
E2

Hawaii TDI uses an annualized wage cap ($78,011) in place of the published $1,500.21 WEEKLY cap ($7.50/week max).

modeling limitation: the engine has only an annual cap, so a worker with uneven weekly wages diverges from the true per-week withholding.

Source we have:
https://labor.hawaii.gov/dcd/files/2025/12/2026-Maximum-Weekly-Wage-Base.pdf
What closes it:
E2 (per-period caps)

Nebraska bracket thresholds are transcribed from a DRAFT 1040N-ES stamped 'DRAFT AS OF 11/12/2025 DO NOT FILE'.

unfinalized source: every threshold must be re-checked against the final 1040N-ES or the 2026 Individual Income Tax Booklet (the draft also prints an obvious $1,130-for-$4,130 MFS typo).

Source we have:
NE DOR draft 1040N-ES (11/12/2025)
What closes it:
research (re-read the final form)

Nebraska publishes a distinct HoH schedule ($7,700 / $39,620) the engine does not model; HoH stays on the Single schedule (conservative, over-taxes).

unmodeled mechanism: the distinct HoH bracket schedule is not represented.

Source we have:
NE DOR Form 1040N instructions
What closes it:
SD-4a

Ohio's $26,050 bracket edge and $332 constant are GDP-deflator-indexed under ORC 5747.02(A)(5); ODT re-indexes in August 2026.

pending re-index: the current figures pre-date the August 2026 re-index; re-check against the TY2026 IT-1040 once published.

Source we have:
ORC 5747.02 (current schedule)
What closes it:
research (TY2026 IT-1040)

Connecticut's Tables A, C, D and E are read out of a WITHHOLDING publication (IP 2026(7)), while the engine models annual LIABILITY. The CT-1040 instructions - the definitive source for the annual return - have not been diffed against the ingested rows.

the right document class, not yet the definitive one. IP 2026(7) is the individual-facing publication and its Tax Calculation Schedule is keyed on CONNECTICUT AGI (Worksheet 1, Line 5), which is the annual-liability variable, so it is the correct citation of the two withholding-oriented documents and it is what the engine models against. But it is still a withholding publication, and the CT-1040 booklet is where the annual return's own tax-calculation schedule lives. The two are expected to agree - DRS publishes one set of tables - and the verbatim pass found IP 2026(7) and TPG-211 byte-identical to each other, which is evidence that DRS keeps these tables in sync across publications. Evidence is not a read. This is a smaller residual than the transcription gap it replaces (that one asked whether our ROWS matched the source; this one asks whether the SOURCE is the last word for an annual model), and it is recorded rather than dropped precisely because a clean verification result is the easiest moment to quietly stop asking.

Source we have:
https://portal.ct.gov/-/media/drs/publications/pubsip/2026/ip-2026-7.pdf (CT DRS IP 2026(7), issued 12/12/2025, effective 1/1/2026 - primary, current-year, verified verbatim row by row in docs/connecticut-tables-verbatim-2026.md)
What closes it:
research (diff the CT-1040 instructions' tax-calculation schedule and its Tables A/C/D/E against the ingested rows)

Connecticut's Tables A, C, D and E are read against the engine's household wage proxy, not against true Connecticut AGI (federal AGI plus CT's own additions and subtractions).

income-measure proxy: exact for a wage-only filer, drifting for one with meaningful non-wage income or CT-specific adjustments. The same proxy the federal CTC phase-out, the OBBBA deductions and Ohio's MAGI bands already use, and it is applied consistently - but CT reads it FOUR times (one exemption, two surcharges, one credit), so a filer whose true CT AGI sits on the far side of a band edge can be off by a whole step in four places at once. Same class as oh.exemption.magi-proxy; closing one should close the other.

Source we have:
CT DRS IP 2026(7) (the tables are keyed on CT AGI on the annual CT-1040)
What closes it:
a true state-AGI model (out of scope for E2)

Connecticut Withholding Code D (a $0 personal exemption and a 0.00 credit decimal) is deliberately NOT modeled. The engine maps only Code F -> single, A -> MFS, B -> HoH, C -> MFJ.

deliberate omission, recorded so nobody 'fixes' it. Code D is a WITHHOLDING ELECTION, not a filing status: it is the construct a dual-income married couple selects on the CT-W4 so that two employers do not each withhold as though theirs were the only paycheck. Nobody FILES as Code D, and it has no meaning for annual liability, which is what this engine models. Adding it would hand a real MFJ couple a $0 exemption and a 0.00 credit - a large, silent over-tax on precisely the households most likely to have selected it. There is no FilingStatus for it to attach to, which is the enforcement.

Source we have:
CT DRS IP 2026(7), verbatim: "For Withholding Code 'D', the Personal Exemption is $0."
What closes it:
nothing - this is the correct modeling decision, not a deficiency

Oregon carries the withholding-basis HoH standard deduction ($2,910); the return-side Form OR-40 Table 5 HoH deduction is larger (TY2025 $4,560). Sites: standard-deductions.ts (OR) and all-states.ts (oregonConfig).

modeling choice: the TY2026 Table 5 is unpublished, so the withholding-basis figure is carried, slightly over-taxing HoH filers (never under-taxing).

Source we have:
OR DOR 150-206-436 (withholding basis); OR-40 Table 5 (return basis, TY2025)
What closes it:
research (2026 OR-40 Table 5)

New York SDI employee fee ($0.60/week, $31.20/year, NY_SDI) has no row in the authoritative source (docs/state-income-tax-2026.md section 2c).

unverified for 2026: the figure rests on NY Workers' Compensation Law 218 alone.

Source we have:
https://dol.ny.gov/disability-benefits (WCL 218)
What closes it:
research (confirm the 2026 figure)

Vermont's additional $1,250 standard-deduction add-on for age 65+ and for blindness is not modeled.

unmodeled mechanism: the engine has no per-filer categorical add-on mechanism (E2).

Source we have:
VT Dept. of Taxes (TY2025 standard deduction)
What closes it:
E2

WA Cares Fund premium 0.58% (WA_CARES) was not re-confirmed on wacaresfund.wa.gov this pass; carried at the 2026-05-12 verification.

unconfirmed: an established statutory figure, but not re-read for 2026 (docs/INDEX-tax-data-2026.md section B).

Source we have:
https://wacaresfund.wa.gov/ (2026-05-12)
What closes it:
research (re-confirm on wacaresfund.wa.gov)

Washington PFML (WA_PFML) premium is applied to gross wages; the statute excludes tips, which the engine does not model.

modeling limitation: the engine has no tips-exclusion concept, so a tipped worker's true WA PFML withholding is slightly lower than modeled.

Source we have:
WA ESD PFML 2026 premium notice
What closes it:
E2 (tips-exclusion modeling)

Alabama's standard-deduction chart, its $1,500/$3,000 personal exemption, and its $1,000/$500/$300 dependent-exemption tiers all come from the TY2025 Form 40 booklet, not a TY2026 one.

the TY2026 document does not exist yet: Alabama publishes a tax year's Form 40 booklet in roughly January of the FOLLOWING year, so the TY2026 chart will not exist until ~January 2027. The figures rest on TWO agreeing ADOR documents - the TY2025 Form 40 booklet and the January 2026 withholding booklet, which restates the identical schedule in closed form and is the operative 2026 payroll document. That agreement is also the evidence the amounts are not inflation-indexed: an indexed figure would have moved between the two, and none did. The amounts are fixed by statute (Ala. Code § 40-18-15), so the SourceRefs are labelled 'statutory-fixed' and are acceptable to the provenance gate at taxYear 2025. Confidence is high, not certain - a legislative change before year-end would move them, and the statute text itself was not machine-readable (alison.legislature.state.al.us would not resolve a deep link; law.justia.com returned 403 and would have been a secondary transcription anyway).

Source we have:
https://www.revenue.alabama.gov/wp-content/uploads/2026/01/25f40bk.pdf (TY2025 Form 40 booklet) + https://www.revenue.alabama.gov/wp-content/uploads/2026/01/whbooklet_0126.pdf (January 2026 withholding booklet)
What closes it:
research (re-verify against the TY2026 Form 40 booklet when it publishes, ~January 2027; or read Ala. Code § 40-18-15(b) directly)

Alabama's Federal Income Tax Deduction Worksheet (Form 40 booklet, page 31) was only partially transcribed. The engine deducts the full post-credit federal income tax (Form 1040 line 22) and models none of the worksheet's other terms.

modeling limitation with a known shape: the worksheet's first lines are federal tax from Form 1040 line 22, PLUS Net Investment Income Tax (Form 8960 line 17), LESS refundable credits including the EIC and the Additional Child Tax Credit. For the wage-only, standard-deduction filer this engine computes, both omitted terms are zero - there is no investment income to generate NIIT and no refundable credit is modeled anywhere in the engine. A filer who WOULD claim the EIC has their deductible amount reduced by the worksheet, which would raise their Alabama tax; in practice such a filer's line 22 is normally $0 already, which makes the deduction $0 either way. The remaining worksheet lines were not read.

Source we have:
https://www.revenue.alabama.gov/wp-content/uploads/2026/01/25f40.pdf (Form 40, line 12) + the partially transcribed page-31 worksheet (docs/state-income-based-deductions-2026.md, unable-to-confirm flag 8)
What closes it:
research (transcribe Form 40 booklet page 31 line by line, then confirm the engine's post-CTC federal tax is the worksheet's whole answer for a wage-only filer)

Oregon's federal tax subtraction is fed the engine's federal income tax LIABILITY, and its cap ladder is read against the household income proxy (a federal-AGI stand-in). Oregon's PAYROLL formula does neither: 150-206-436 tells an employer to subtract federal tax WITHHELD and to read the phase-out against annualized WAGES.

Oregon genuinely has two different rules for two different documents, and BOTH are correct in their own context - the state's own DOR warns filers about the gap. Form OR-40 line 10 is liability, on the accrual method (ORS 316.685(1)(a)), phased out on federal AGI (ORS 316.695(3)); the withholding formula is withheld-tax, phased out on wages. This engine models annual LIABILITY - that is what calculate2026Paycheck computes, and what every other state in it computes - so it models the RETURN, and it would be incoherent for one state to switch bases mid-engine. The two answers differ for any filer whose withholding misses their liability: a filer who over-withholds by $1,000 would see Oregon's payroll formula give them $1,000 more of subtraction (up to the cap) than their return will, worth about $88/yr at 8.75%. Bounded, and in the direction of the number the filer will actually settle at in April. Note the separate W-4 path (withholding.ts, Pub 15-T) is unaffected: it computes federal withholding only and never touches state tax.

Source we have:
docs/state-federal-deductibility-2026.md section 2c, quoting ORS 316.685(1)(a), the 2025 Form OR-40 line 10 worksheet, and 150-206-436 (2026) side by side.
What closes it:
a withholding-basis state model (out of scope for E2; it would require the engine to carry a second federal figure - projected withholding - alongside liability, for one state)

Oregon's 2026 married-filing-separately cap ladder ($4,375 / $3,500 / $2,625 / $1,750 / $875 / $0) is COMPUTED as 50% of the published single ladder. DOR has published no 2026 MFS figure.

the figure does not exist yet to be read. DOR's 2026 withholding formula (150-206-436) has [S] and [M] blocks and no MFS row at all, and the TY2026 Form OR-40 instructions - which is where Table 4 and its MFS column live - do not publish until roughly January 2027. The 50% rule is STATUTORY, not inferred: ORS 316.695(3)(d) sets MFS at 'in excess of 50 percent of the amount provided for individual taxpayers', and DOR applied exactly that in both years it published a pair ($8,250/$4,125 for 2024; $8,500/$4,250 for 2025). So this is a statutory computation from a published figure, not an estimate - but it is not a figure we have read on a DOR page, and the difference is worth stating.

Source we have:
ORS 316.695(3)(d) (the 50% rule, T1) + the published 2024 and 2025 pairs, which confirm DOR applies it literally. Oregon 2026 Withholding Tax Formulas 150-206-436 for the single ladder the halving is applied to.
What closes it:
research (re-verify against the TY2026 Form OR-40 instructions, Table 4, when they publish ~January 2027)

Missouri's 35 / 25 / 15 / 5 / 0% percentage ladder is read against the engine's household income proxy, an ADJUSTED-gross-income-shaped figure. RSMo 143.171.2(1) keys the table to 'the Missouri GROSS income on the return'; Form MO-1040's instructions key it to 'the Missouri Adjusted Gross Income reported on Line 6'.

the statute and the state's own form name two different income concepts, and R10 found no DOR regulation or letter ruling reconciling them. The engine follows the FORM, because the form is what DOR processes returns against - a filer who computes their own MO-1040 will land on the engine's answer. The two measures diverge only for a filer with Missouri-specific adjustments between gross income and AGI, which the wage-only filer this calculator models does not have; for that filer the proxy is the same figure under both readings. Where it bites is at a band edge: a filer whose gross and adjusted figures straddle $25,000, $50,000, $100,000 or $125,000 would take a different percentage under each reading, and the bands are CLIFFS, so the whole step moves at once (at $50,000, a 25%-vs-15% swing on roughly $3,800 of federal tax is about $380 of deduction, worth ~$18/yr at Missouri's 4.7% top rate).

Source we have:
RSMo 143.171.2(1) ('the Missouri gross income on the return') and the 2025 Form MO-1040 Instructions, Line 12 ('based on the Missouri Adjusted Gross Income reported on Line 6'). Both quotes verified; the reconciliation between them is not.
What closes it:
research (a DOR regulation, letter ruling, or the TY2026 MO-1040 instructions resolving which measure governs)

The claim 'exactly three states allow a federal income tax deduction for 2026 (AL, MO, OR)' rests on a primary-source read of the six states HISTORICALLY known to have one, not on a certified 50-state negative sweep.

R10 says so in its own words rather than letting the summary imply more than it checked: 'this was not an exhaustive 50-state primary-source sweep. It is "no other state encountered," not a certified negative.' The six historical states (AL, IA, LA, MO, MT, OR) were each read at T1 or T2 and are settled. The risk this leaves is a state that NEWLY ADOPTED a federal-tax deduction, which no state was found to have done and which would be a large, well-reported tax change. The failure mode is over-taxing that state's filers - the same direction the engine has always erred, and the safe one - not under-taxing them.

Source we have:
docs/state-federal-deductibility-2026.md, 'Other states encountered that still allow federal-tax deductibility' + the stated caveat.
What closes it:
research (a subtraction/deduction-schedule pass over all 41 income-tax states, if the conductor ever wants a certified negative)

Neither Missouri nor Oregon has published a TY2026 individual return or instruction booklet as of 2026-07-13. Everything TY2026-specific in both ingests rests on (a) unamended statute and (b) each DOR's TY2026 WITHHOLDING publication.

the documents do not exist yet. Missouri's figures are statutory and carry no indexed amount at all (RSMo 143.171 is unamended since its 7/1/2021 version and is open-ended: 'for all tax years beginning on or after January 1, 2019'), so there is nothing in the MO ingest that a 2026 form could re-index. Oregon's cap IS indexed annually, and its 2026 value ($8,750) is published - in the 2026 withholding formulas, effective January 1, 2026, which is an operative TY2026 DOR document. So both ingests are on 2026-valid ground. What is NOT ruled out is a mid-year enactment: both legislatures were in session in 2026, and R10 confirmed only that Oregon's 2026 session did not touch ORS 316.680 / 316.685 / 316.695.

Source we have:
RSMo 143.171 (Missouri Revisor, effective 7-01-21, no later version listed) + Oregon 2026 Withholding Tax Formulas 150-206-436 (Rev. 12-31-25) + the 2026 Oregon 'ORS Sections Amended, Repealed or Added To' list, which shows chapter 316 untouched apart from ORS 316.012 / 316.147 / 316.157.
What closes it:
research (re-verification pass in December 2026, when both TY2026 booklets release)

Rhode Island phases its standard deduction out between $261,000 and $290,800 of income; the engine applies the full amount at every income.

known simplification: a slight under-tax for high earners in that band; not // GAP:-tagged before E1a.

Source we have:
RI Division of Taxation ADV 2025-22
What closes it:
SD-4a (or a dedicated phase)

Reviewed

How This Page Is Reviewed

The source register is regenerated from the tax engine on every build and reviewed against the primary documents below whenever a figure changes.

Reviewed by

PaycheckCalc Research Desk

Last reviewed

2026-07-12