QuantCalc QuantCalc State tax engine docs

State tax docs / States / West Virginia

West Virginia state income tax: engine rules, 2026

How the QuantCalc engine computes West Virginia tax for tax year 2026, rule by rule, with the official source for each rule. Verification status: Worksheet-tested (what this means).

On this page: How the tax is computed · Rate schedule · Deductions, exemptions and credits · Age 65+ subtractions and credits · Social Security · IRA, 401(k) and private pensions · Public pensions · Military retirement pay · Roth conversions · Capital gains · Blindness and disability · Part-year and nonresident returns · Worked examples · After 2026 · Not calculated · Verification. Machine-readable: this state's entry in the engine config and the provenance file (key WV).

How the tax is computed

Every step the engine takes for West Virginia, in the order it takes them. Steps marked with a filing status or household type apply only there. Each step links the section below that carries West Virginia's figures and the official sources for it; the calculation order page describes every step for all jurisdictions.

What each filing status gets, read back from the engine for a household with $1 of income (so below every phase-out and income test):

SingleMarried filing jointlyMarried filing separatelyHead of household
Rate schedule usedsingle schedulejoint schedulejoint schedule, thresholds halvedsingle schedule
Top rate4.58% from $60,0004.58% from $60,0004.58% from $30,0004.58% from $60,000
Standard deduction, under 65$2,000$4,000$2,000$2,000
Standard deduction at 70 (joint: both 70)$2,000$4,000$2,000$2,000
Personal exemptionnonenonenonenone
Age subtractions at 70 (joint: both 70)$8,000$16,000$8,000$8,000
  1. Per-person mode joint returns with the spouse's age given On a joint return with the spouse's age given, every age test the state applies per taxpayer is evaluated for each spouse at their own age. Without it one household age applies to both.
    engine step (compute_state_tax_detail). Engine convention, no external source: The engine cannot know the second spouse's age unless told.
  2. Blindness and disability, per person only when the caller says a person is blind or disabled The filer is person one; the spouse counts only on a joint return and only when the caller says so (there is no household convention as for age). Where a state lets a disabled person (and, where it says so, a blind one, or one whose spouse is disabled) qualify for its general retirement exclusion before the age, that person is treated as having reached the age for that exclusion only. Of the 42 taxing jurisdictions, these have a blind amount: Arizona, Arkansas, California, Colorado, Delaware, the District of Columbia, Hawaii, Idaho, Illinois, Indiana, Iowa, Kansas, Kentucky, Maine, Maryland, Massachusetts, Michigan, Minnesota, Mississippi, Missouri, Montana, Nebraska, New Jersey, New Mexico, North Dakota, Oklahoma, Oregon, Utah, Vermont and Virginia; these have none: Alabama, Connecticut, Georgia, Louisiana, New York, North Carolina, Ohio, Pennsylvania, Rhode Island, South Carolina, West Virginia and Wisconsin. A disability route is calculated in Arkansas, the District of Columbia, Georgia, Hawaii, Idaho, Iowa, Maryland, Michigan, New Jersey, Oregon and West Virginia.
    engine step (compute_state_tax_detail). Engine convention, no external source: Who is blind or disabled is the caller's statement; the engine has no household convention for it.
  3. Rate schedule and standard deduction by filing status Single uses the single schedule and deduction; married filing jointly the joint ones. Head of household and married filing separately follow the two steps below.
    West Virginia's values · engine step (select_brackets). Sources (Rate schedule): Enrolled Committee Substitute for Senate Bill 392 (2026 Regular Session), enacting W. Va. Code §11-21-4j (checked 2026-10-12)
  4. Married filing separately Where the state publishes its own separate schedule, that one (with half the joint deduction unless a separate deduction is set). Where one schedule applies to every status, that schedule unscaled with the single deduction. Otherwise the joint schedule with every threshold and the deduction halved (computed as the joint tax on twice the income, halved).
    West Virginia's values · engine step (select_brackets). Sources (Rate schedule): Enrolled Committee Substitute for Senate Bill 392 (2026 Regular Session), enacting W. Va. Code §11-21-4j (checked 2026-10-12)
  5. Head of household The state's head-of-household schedule where it has one, else the single schedule; the head-of-household deduction where set, else the single deduction.
    West Virginia's values · engine step (select_brackets). Sources (Rate schedule): Enrolled Committee Substitute for Senate Bill 392 (2026 Regular Session), enacting W. Va. Code §11-21-4j (checked 2026-10-12)
  6. The income total every income test uses Other ordinary income + retirement distributions (before any exclusion) + conversion + federally taxable Social Security + long-term gains + Railroad Retirement Tier 2. It stands in for federal adjusted gross income in every threshold, cliff and phase-out below; state subtractions do not reduce it.
    engine step (compute_state_tax_detail). Engine convention, no external source: The inputs are the federal AGI components, so their sum is federal AGI for these income types.
  7. Attributing income to each spouse joint returns with each spouse's own amounts given With a caller's split (the API's spouse object), each spouse's own distributions (employer-plan money included), pension, public pension, conversion, wages and military pay; spouse 2's shares are clamped into the household totals and spouse 1 gets the rest. Without a split, in per-person mode, every item is divided 50/50. Social Security is divided by each spouse's own gross benefits where the caller gives spouse.socialSecurityGross, else 50/50; other ordinary income and gains are always divided 50/50 where a rule needs a per-person amount. The split is used only where a state's rule is per taxpayer; household totals stay authoritative for the base and the income tests.
    engine step (compute_state_tax_detail). Engine convention, no external source: Equal attribution is the neutral split when the owner of a dollar is not known.
  8. Keeping the per-spouse shares inside the household joint returns with each spouse's own amounts given After the public-pension and employer-pension carve-outs, if the two spouses' remaining shares add up to more than the household's exclusion-eligible distributions (an inconsistent split), spouse 1's share is reduced so they do not.
    engine step (compute_state_tax_detail). Engine convention, no external source: Input normalisation.
  9. Military retirement pay The state's military rule runs first, on military pay alone, per taxpayer: each spouse's own pay at their own age when attributed, otherwise half each at the household age on a joint return. Exempt dollars leave the base; the rest become pension dollars for the general retirement rules. Where the state lets a disabled retiree qualify at any age, a disabled person is treated as having reached the rule's age.
    West Virginia's values · engine step (compute_state_tax_detail). Sources (Military retirement pay): 11 21 12 (checked 2026-09-28)
  10. One taxpayer's military exemption Exempt: all of it (below the age split, up to the younger cap). Capped: up to the cap for the age tier, plus the earned-income bonus below the age split when the taxpayer's own wages exceed the threshold, less the taxpayer's own Social Security where the rule says so. Percentage: the percentage (below the age split, up to the younger cap). Then the income limit: above it the exemption is lost, or phased out over the range where one is set.
    West Virginia's values · engine step (military_exempt_one). Sources (Military retirement pay): 11 21 12 (checked 2026-09-28)
  11. Military exclusion reduces other caps Where the statute says so, the military amount a taxpayer excluded reduces that taxpayer's general retirement-exclusion cap, their age-65 subtraction, or both. A survivor's military pay (a surviving-spouse military deduction) reduces neither, where the state says so.
    West Virginia's values · engine step (compute_state_tax_detail). Sources (Military retirement pay): 11 21 12 (checked 2026-09-28)
  12. Capital-loss deduction off the base The deduction comes off the other ordinary income (negative income, as Form 1040 line 7a is), so the base and every state-AGI figure summed from it carry it; WI no more than Wisconsin ordinary income (Schedule WD line 28(c)). States whose base is federal taxable income (with the caller's figure) already have it there and take it only once. Engine 1.13.1: the allowed rental loss comes off the same way, on its own line (rental_loss_deduction).
    West Virginia's values · engine step (compute_state_tax_detail). Sources (Capital gains): Enrolled Committee Substitute for House Bill 4880 (2024 Regular Session), reenacting W. Va. Code §11-21-12 (checked 2026-10-12); 2025 IT-140 Personal Income Tax Forms and Instructions (archived) (checked 2026-10-12); 2025 Schedule D (Form 1040), Capital Gains and Losses (checked 2026-10-12)
  13. Public pension exemption Public-pension dollars leave the base, uncapped or up to the per-taxpayer cap (each spouse's own public pension against their own cap when attributed), without using up the general exclusion the remaining distributions may claim. Capped-out public dollars stay taxable and cannot draw the private exclusion.
    West Virginia's values · engine step (compute_state_tax_detail). Sources (Public pensions): Enrolled Committee Substitute for House Bill 4880 (2024 Regular Session), reenacting W. Va. Code §11-21-12 (checked 2026-10-12); 11 21 12 (checked 2026-09-28)
  14. Social Security exempt None of the federally taxable benefit enters the base.
    West Virginia's values · engine step (ss_amount_in_state_base). Sources (Social Security): Enrolled Committee Substitute for House Bill 4880 (2024 Regular Session), reenacting W. Va. Code §11-21-12 (checked 2026-10-12)
  15. Retirement exclusion (household) The distributions eligible for the exclusion go through the exclusion below. Taxable public-pension dollars left by a cap are not eligible; below the IRA age only employer-plan dollars are.
    West Virginia's values · engine step (compute_state_tax_detail). Sources (IRA, 401(k) and private pensions): Enrolled Committee Substitute for House Bill 4880 (2024 Regular Session), reenacting W. Va. Code §11-21-12 (checked 2026-10-12); It140.PersonalIncomeTaxFormsAndInstructions.2025 (checked 2026-09-27)
  16. Conversion taxed or exempt In full-exclusion states a conversion is exempt at the qualifying age (at any age where the state says so). Elsewhere, unless pooled above, it is ordinary income taxed in full.
    West Virginia's values · engine step (compute_state_tax_detail). Sources (Roth conversions): Enrolled Committee Substitute for House Bill 4880 (2024 Regular Session), reenacting W. Va. Code §11-21-12 (checked 2026-10-12)
  17. Long-term gains in the base Where gains are taxed as ordinary income: net long-term gain less the flat exclusion (never below zero), times the inclusion share. Elsewhere none enters.
    West Virginia's values · engine step (compute_state_tax_detail). Sources (Capital gains): Enrolled Committee Substitute for House Bill 4880 (2024 Regular Session), reenacting W. Va. Code §11-21-12 (checked 2026-10-12); 2025 IT-140 Personal Income Tax Forms and Instructions (archived) (checked 2026-10-12); 2025 Schedule D (Form 1040), Capital Gains and Losses (checked 2026-10-12)
  18. Dependent exemptions and deductions only when the caller lists dependents An amount per dependent subtracted like the personal exemption: the state's flat amount, or the stepped per-exemption amount the filer gets, or the state's own income steps; nothing above an income limit where there is one; a percentage phase-out per income step where there is one; one more for a dependent in an age band or a student up to an age, for a dependent born in the year, and for a disabled dependent; a deduction per dependent beyond the first on joint and head-of-household returns; and a child deduction by an income table for dependents under an age. A head of household's status exemption that already holds one dependent's amount counts one fewer. Where the state says so, the phase-out is measured on the state AGI (the base before deductions).
    West Virginia's values · engine step (compute_state_tax_detail). Sources (Deductions, exemptions and credits): 2025 IT-140 forms and instructions (archived copy) (checked 2026-10-12)
  19. Age subtraction At or above the age: the single amount, or the joint amount on a joint return (both spouses at the household age). In per-person mode, half the joint amount (or the single amount) per qualifying spouse. Plus the low-income amount below the income test; less the military exclusion where the statute says so; limited to the spouse's own income where the statute says so. Where the statute counts income from any source, the taxable remainder of the spouse's own public pension is part of that own income. Where the state says so, the Social Security that offsets a person's amount is that person's own.
    West Virginia's values · engine step (compute_state_tax_detail). Sources (Age 65+ subtractions and credits): Enrolled Committee Substitute for House Bill 4880 (2024 Regular Session), reenacting W. Va. Code §11-21-12 (checked 2026-10-12); 11 21 12 (checked 2026-09-28); It140.PersonalIncomeTaxFormsAndInstructions.2025 (checked 2026-09-27); W. Va. Code §11-21-12 (archived copy) (checked 2026-09-28)
  20. Age subtraction for a disabled person only when the caller says a person is blind or disabled Where the state gives its age subtraction to a permanently and totally disabled person at any age: per disabled spouse in per-person mode; on the household path below the age, one amount per disabled person, reduced as at the age.
    West Virginia's values · engine step (compute_state_tax_detail). Sources (Blindness and disability): W. Va. Code 11-21-12 (archived copy) (checked 2026-09-28)
  21. Age subtraction reduced by Social Security and public pension Each qualifying taxpayer's amount is reduced by their own taxable Social Security (half each on a joint return) and their own public-pension exemption. On the household path, a disabled filer under the age is reduced by that person's own half of the household amounts where the statute says so.
    West Virginia's values · engine step (compute_state_tax_detail). Sources (Age 65+ subtractions and credits): Enrolled Committee Substitute for House Bill 4880 (2024 Regular Session), reenacting W. Va. Code §11-21-12 (checked 2026-10-12); 11 21 12 (checked 2026-09-28); It140.PersonalIncomeTaxFormsAndInstructions.2025 (checked 2026-09-27); W. Va. Code §11-21-12 (archived copy) (checked 2026-09-28)
  22. State taxable income Other ordinary income + Social Security, retirement income, conversion and gains left in the base − standard deduction − personal exemption − age subtractions.
    engine step (compute_state_tax_detail). Engine convention, no external source: The order of subtraction follows the state forms; each amount is sourced at its own step.
  23. No tax at or below zero State taxable income at or below zero returns a tax of 0 (credits are not refundable), unless the state has a tax computed apart from taxable income that still applies (next step).
    engine step (compute_state_tax_detail). Engine convention, no external source: Every credit the engine carries is nonrefundable, so nothing below can make a zero tax negative; each credit is sourced at its own step.
  24. Separate-return scaling married filing separately For the halved-joint rule, taxable income is doubled before the schedule and the result halved.
    West Virginia's values · engine step (compute_state_tax_detail). Sources (Rate schedule): Enrolled Committee Substitute for Senate Bill 392 (2026 Regular Session), enacting W. Va. Code §11-21-4j (checked 2026-10-12)
  25. The rate schedule Each bracket's rate on the part of taxable income inside it, summed. No rounding: the result is carried in full precision.
    West Virginia's values · engine step (apply_state_brackets). Sources (Rate schedule): Enrolled Committee Substitute for Senate Bill 392 (2026 Regular Session), enacting W. Va. Code §11-21-4j (checked 2026-10-12)
  26. Family size and household credits Family size credits: a share of the tax left after the personal credits, by family size (the filer, the spouse on a joint return, and the dependents — every dependent, or only qualifying children, as the state says; at most the state's largest size) and the income total, from the state's table (separate returns: half every limit where the state says so). Household credits: an amount by income (single) or by income and household size (joint and head of household; separate returns their own table).
    West Virginia's values · engine step (compute_state_tax_detail). Sources (Deductions, exemptions and credits): 2025 IT-140 forms and instructions (archived copy) (checked 2026-10-12)
  27. Credits cannot make the tax negative The credits are subtracted and the result floored at zero.
    engine step (compute_state_tax_detail). Engine convention, no external source: Every credit the engine carries is nonrefundable; each credit is sourced at its own step.
  28. Qualifying surviving spouse qualifying surviving spouse returns A qualifying surviving spouse (filingStatus qss) is one person on the return, taxed from the single figures with the state's own treatment of the status laid over them: where the state says so, the joint rate schedule, the joint standard deduction, the joint personal exemption, the joint income limits and phase-outs (only those the state sets for joint returns), the married 65+ and blindness amounts, or the head-of-household return; where the state gives the status nothing of its own, the single return. The federal figures the engine derives for the status are the federal qualifying-surviving-spouse ones (the joint standard deduction, the married 65+ amount).
    West Virginia's values · engine step (state_tax_effective_config). Sources (Rate schedule): Enrolled Committee Substitute for Senate Bill 392 (2026 Regular Session), enacting W. Va. Code §11-21-4j (checked 2026-10-12)
  29. Railroad Retirement benefits only when the caller gives Railroad Retirement benefits Railroad Retirement benefits are never taxed by a state (45 U.S.C. §231m). Tier 2 (railroadRetirementTier2) is in the income total the tests use but never in the base. Tier 1 (railroadRetirementTier1) is a part of the gross benefits (socialSecurityGross); its share of the taxable benefits is taken out of the Social Security every state rule sees, so a state that taxes Social Security never reaches it. Where a state's worksheet says so, the benefits reduce a retirement cap or subtraction (ID, IN, MD, ME, MN: both tiers; MI: the taxable railroad benefits); Minnesota's and Utah's Social Security rules test an income without them, Minnesota's, New Jersey's and California's retirement income tests an income without Tier 2; Ohio and Delaware test their own AGI everywhere, which never holds the benefits.
    West Virginia's values · engine step (compute_state_tax_detail). Sources (Social Security): Enrolled Committee Substitute for House Bill 4880 (2024 Regular Session), reenacting W. Va. Code §11-21-12 (checked 2026-10-12)
  30. The capital-loss deduction the state allows With a net capital loss (capitalLoss): the smaller of the loss and the state's limit (the federal $3,000 / $1,500 where the state follows the federal return; MA $2,000, and no more than the interest and dividends); AL the loss less the part carried in, unlimited; PA and NJ none. It comes off the income total the income tests use (and the Social Security worksheets' income); the gross-income filing test (LA) reads the total before it. Engine 1.13.1: with a rental loss (rentalNetIncome below 0, the federal Schedule E line 26 amount) the state allows, the whole loss where the state starts from federal AGI or follows the federal schedule, none in PA and NJ (rental_loss_no_offset): it comes off the same income the same way; a rental profit is other ordinary income.
    West Virginia's values · engine step (compute_state_tax_detail). Sources (Capital gains): Enrolled Committee Substitute for House Bill 4880 (2024 Regular Session), reenacting W. Va. Code §11-21-12 (checked 2026-10-12); 2025 IT-140 Personal Income Tax Forms and Instructions (archived) (checked 2026-10-12); 2025 Schedule D (Form 1040), Capital Gains and Losses (checked 2026-10-12)
  31. Each spouse's own Social Security joint returns On a joint return, each spouse's own Social Security is the spouse's share of the benefits by spouse.socialSecurityGross when the caller gives it (Tier 1 railroad benefits left out), else half each. It is what the per-spouse rules read: Colorado's per-spouse subtraction, Rhode Island's per-spouse modification, and the Maine, Maryland and other retirement caps reduced by the benefits each spouse received (with each spouse's own railroad benefits where the state counts them).
    West Virginia's values · engine step (compute_state_tax_detail). Sources (Social Security): Enrolled Committee Substitute for House Bill 4880 (2024 Regular Session), reenacting W. Va. Code §11-21-12 (checked 2026-10-12)
  32. Refundable state credits The credits paid beyond the tax (reported in refundableCredits; netTax = totalTax less them): earned income credits as a share of the federal EIC with each state's own age band (OK on the 2020 federal credit, DC's own childless schedule, the CalEITC table, MN's Working Family Credit), the NYC EIC and school tax credits, and the property-tax, renter, grocery and senior credits of MA, MI, NJ, ID, HI, NM, OK, AZ, NY, RI, WV, ME, DC, MN, MO, WI, IN and MT, each on its own income measure. Engine 1.13.1: a part-year NYC resident's school tax credits (the Table 2 proration chart and the rate-reduction amount on IT-360.1 line 47; IT-203 lines 60 / 60a for a part-year state resident).
    West Virginia's values · engine step (state_tax_refundable_credits). Sources (Deductions, exemptions and credits): 2025 IT-140 forms and instructions (archived copy) (checked 2026-10-12)

Rate schedule

Single

Taxable income fromtoRate
$0$10,0002.11%
$10,000$25,0002.81%
$25,000$40,0003.16%
$40,000$60,0004.22%
$60,000and up4.58%

Married filing jointly uses the same thresholds as single.

Head of household uses the single schedule.

Married filing separately: the engine computes the MFJ tax on twice the income and halves it, which is the same as halving every MFJ threshold and the MFJ deduction.

Deductions, exemptions and credits

  • Standard deduction (or the exemption the engine carries in its place): $2,000 single, $4,000 married filing jointly, and the single amount for head of household.

Age 65+ subtractions and credits

  • At age 65 or older: $8,000 is subtracted from the base ($16,000 for a married couple filing jointly when both qualify), against any income. With the spouse's age given, each spouse qualifies on their own age, and each subtraction is limited to that spouse's own income.
  • Each taxpayer's age subtraction is reduced by that taxpayer's own taxable Social Security and public-pension subtractions.

Social Security

Social Security benefits are fully exempt: none of the federally taxable amount enters the state base.

API value: socialSecurityRule: "exempt". The engine's input is the federally taxable amount; income tests use the sum of the income components as the adjusted-gross-income proxy.

IRA, 401(k) and private pensions

  • No exclusion: pension, annuity and IRA/401(k) distributions are taxed as ordinary income.

Source review notes (what the sources do not state outright, or what the engine does not carry):

Public pensions

Public (government) pension dollars, entered as pensionPublic, are exempt up to $2,000 per person receiving it; dollars above the cap are taxed. On a joint return each spouse's own pensionPublic gets its own $2,000 when the spouse object gives the spouses' own amounts; without it the engine assumes the household's public pension is split between the spouses (up to $4,000 together). They do not use up the capped exclusion that other retirement income may claim.

Military retirement pay

  • Military retirement pay is fully exempt, at any age.
  • The military amount excluded reduces that taxpayer's age-65 subtraction.
  • Rules are applied per taxpayer at that person's own age when the spouse's age is given. API value: rules.militaryRetirement.treatment: "exempt".

Roth conversions

A conversion is taxed as ordinary income in full. It does not draw any retirement-income exclusion.

Source review notes (what the sources do not state outright, or what the engine does not carry):

Capital gains

  • Net long-term gain is taxed as ordinary income.
  • Short-term gains are ordinary income.

Source review notes (what the sources do not state outright, or what the engine does not carry):

Blindness and disability

  • The age subtraction above also goes to a person who is permanently and totally disabled, at any age, reduced the same way.
  • The API applies these through its blind, disabled, spouse.blind and spouse.disabled fields; absent means false.

Part-year and nonresident returns

  • Part-year resident (IT-140 Schedule A): the tax a full-year resident would owe on all the year's income, times the state's income ratio.
  • Nonresident (IT-140 Schedule A): the tax a full-year resident would owe on all the year's income, times the state's income ratio.
  • The ratio: the federal AGI of the state's income over the federal AGI of the whole year, rounded to 4 places, which may exceed 1.
  • A nonresident's retirement income is not taxable by the state (4 U.S.C. §114); the API refuses it in residency.stateIncome. The credit for tax paid to another state and the earned income credits on these returns are not computed.

Married couples whose residency differs (engine 1.13.0)

With residency.spouse on a joint request, each allowed treatment is calculated and reported in residency.couple; tax is the required one, else the state's default, else the couple's residency.election, else the joint return the request's mfj names. Each rule is quoted from the state's instructions (engine 1.14.0: and its statutes, regulations, bulletins and other official guidance) in the sources below.

SpousesWest Virginia's rule
One spouse a full-year resident, the other a part-year residentseparate returns is required.
One spouse a full-year resident, the other a nonresidentthe couple's choice: a joint part-year / nonresident return or separate returns or a joint resident return (both taxed as full-year residents).
One spouse a part-year resident, the other a nonresidentseparate returns is required.
Both part-year residents, different resident periodsthe couple's choice: a joint part-year / nonresident return or separate returns.
Both nonresidents, only one with income from the statethe couple's choice: a joint part-year / nonresident return or separate returns.

Worked examples

Computed by the engine for the fixed households below (the same ones for every state, so states compare directly). Federal tax is not supplied, so a federal-tax deduction is not taken; the income tests use the sum of the components as income.

Household (engine inputs)State tax
Single, 67: $30,000 private pension, $20,000 IRA, $10,000 interest, $24,000 Social Security ($17,000 federally taxable), $5,000 long-term gain$2,087.90
Married filing jointly, 70: $40,000 public pension, $40,000 IRA, $20,000 interest, $40,000 Social Security ($34,000 federally taxable), $10,000 long-term gain$3,874.10
Single, 60: $60,000 other ordinary income and a $50,000 Roth conversion$4,148.90
Married filing jointly, 66: $30,000 IRA, a $40,000 Roth conversion, $30,000 Social Security ($25,500 federally taxable)$2,225.30
Single, 58: $36,000 military retirement pay and $30,000 wages$727.30
Married filing jointly, ages 67 and 61: $50,000 IRA, $10,000 interest, $30,000 Social Security ($25,500 federally taxable), each spouse's age given$1,781.70

Line by line

The intermediate lines the engine records while it computes each example (its detail record, printed as it comes out; lines that are zero are left out). The engine's documentation build checks that the lines add up to the taxable income and the tax, for every state, filing status and a grid of households. Each line links the engine step that produces it.

Single, 67: $30,000 private pension, $20,000 IRA, $10,000 interest, $24,000 Social Security ($17,000 federally taxable), $5,000 long-term gain: $2,087.90
Married filing jointly, 70: $40,000 public pension, $40,000 IRA, $20,000 interest, $40,000 Social Security ($34,000 federally taxable), $10,000 long-term gain: $3,874.10
Single, 60: $60,000 other ordinary income and a $50,000 Roth conversion: $4,148.90
Married filing jointly, 66: $30,000 IRA, a $40,000 Roth conversion, $30,000 Social Security ($25,500 federally taxable): $2,225.30
Single, 58: $36,000 military retirement pay and $30,000 wages: $727.30
Married filing jointly, ages 67 and 61: $50,000 IRA, $10,000 interest, $30,000 Social Security ($25,500 federally taxable), each spouse's age given: $1,781.70

After 2026: how the amounts move

A request with projection (API) estimates a later tax year from these rules: every dollar amount and age test below moves the way West Virginia's law moves it. Rates and the rules themselves stay the 2026 ones (how projection works).

Amounts (engine fields)After 2026What the law says, and the source
brackets_single (the single rate schedule's thresholds), brackets_mfj (the mfj rate schedule's thresholds)Fixed in law: held at the rules-year amount in every later year.W. Va. Code 11-21-4e as amended by SB 392 (2026): one schedule for taxable years beginning on and after January 1, 2026 with fixed brackets at $10,000 / $25,000 / $40,000 / $60,000; no inflation adjustment of the brackets (rates may fall under the revenue trigger of 11-21-4h, see enacted_changes_not_modelled).
std_deduction_single, std_deduction_mfj, dep_exemptionFixed in law: held at the rules-year amount in every later year.W. Va. Code 11-21-16: $2,000 per federal exemption for taxable years beginning on or after January 1, 1987; fixed.
senior_subtraction_single, senior_subtraction_mfjFixed in law: held at the rules-year amount in every later year.W. Va. Code 11-21-12(c)(9): $8,000 of income of a person 65 or older (or permanently disabled) is subtracted; fixed.
senior_subtraction_min_ageAttained age: the same age in every year.Attained 65 on or before the last day of the taxable year: a fixed attained age.
public_pension_exclusion_cap_single, public_pension_exclusion_cap_mfjFixed in law: held at the rules-year amount in every later year.W. Va. Code 11-21-12(c)(5): PERS/TRS benefits subtracted up to the first $2,000; fixed.
fsc_limitIndexed: HHS federal poverty guideline for the family size (42 U.S.C. 9902(2)), as available on June 30; not rounded (the statute states no rounding).W. Va. Code 11-21-22 / 22a: the low-income family tax credit tables are indexed to the HHS federal poverty guidelines (as available each June 30) for the family size, plus a fixed $2,700 ($1,350 MFS) band; the Tax Commissioner publishes indexed tables annually (11-21-22b). Rounding of the published rows is not stated in the sections read.
  • W. Va. Code § 11-21-22a (Wayback copy of code.wvlegislature.gov) (West Virginia Legislature, statute): Poverty-guideline index and indexed tables. Quoted: "means the U. S. Department of Health and Human Services poverty guidelines updated periodically in the Federal Register"; ""Indexed tax credit tables" means the two tables annually developed and published by the Tax Commissioner". Checked 2026-09-30.
cap_loss_limit, cap_loss_limit_mfsFixed in law: held at the rules-year amount in every later year.The state follows the federal net capital loss limit of IRC 1211(b): $3,000 ($1,500 MFS), a fixed amount with no inflation adjustment.
  • 26 U.S.C. 1211 (limitation on capital losses) (Cornell LII (U.S. Code), federal): The capital-loss deduction against ordinary income is a fixed $3,000 ($1,500 MFS); section 1211 contains no inflation adjustment. Quoted: "$3,000 ($1,500 in the case of a married individual filing a separate return), or". Checked 2026-10-12.
wv-heptc (a table held in code)Not established from an official source: held, and a projected API result that depends on it is refused (400).The HEPTC income test is 300% of the federal poverty guideline for the household size, which the U.S. Department of Health and Human Services sets each year; the engine carries the 2025 figures and how later years move is the guideline's, not a CPI rule.
  • 2025 West Virginia Personal Income Tax Forms and Instructions (IT-140) (West Virginia Tax Division, agency_page): Homestead Excess Property Tax Credit (Schedule HEPTC-1) Quoted: "There is a personal income tax credit for OWNER-OCCUPIED residential real property taxes paid in excess of 4% of your income."; "If there is only 1 person living in your home, your federal adjusted gross income must be $46,950 or less.". Checked 2026-10-12.

Enacted for later years, not applied by the projection

What the engine does not calculate, and known approximations

What the engine does not calculate for any state (itemized deductions, credits beyond those listed, part-year residents, and more) is listed on the calculation order page.

Verification

Worksheet-tested A unit test follows the IT-140 Rate Schedule II for married filing separately; engine 1.8.0 (S5) tests follow §11-21-12(c)(9) per person (own public-pension remainder, own half of the household offsets).