Alabama State Income Tax Calculator

This Alabama income tax calculator lets residents and workers quickly estimate state tax owed, effective and marginal rates, and after‑tax income. It’s designed for individuals, families, and professionals who need a fast, accurate, and accessible computation using Alabama’s current marginal rate schedule.

Data Source and Methodology

Authoritative source: Alabama Department of Revenue — Individual Income Tax, Rate Schedules and Guidance (effective tax years 2024–2025). Official DOR page.

All calculations strictly follow the formulas and data provided by this source.

The Formula Explained

For Single, Married Filing Separately, and Head of Family:
Tax(TI) = 0.02 · min(TI, 500)
        + 0.04 · min(max(TI - 500, 0), 2500)
        + 0.0495 · max(TI - 3000, 0)
          
LaTeX:
\[
\text{Tax}(TI)=0.02\cdot\min(TI,500)\;+\;0.04\cdot\min(\max(TI-500,0),2500)\;+\;0.0495\cdot\max(TI-3000,0)
\]
          
For Married Filing Jointly:
Tax(TI) = 0.02 · min(TI, 1000)
        + 0.04 · min(max(TI - 1000, 0), 5000)
        + 0.0495 · max(TI - 6000, 0)
          
LaTeX:
\[
\text{Tax}(TI)=0.02\cdot\min(TI,1000)\;+\;0.04\cdot\min(\max(TI-1000,0),5000)\;+\;0.0495\cdot\max(TI-6000,0)
\]
          
where TI = Alabama taxable income.

Glossary of Variables

  • Tax year: Calendar year the rates apply to (2024–2025 supported here).
  • Filing status: Single, Married Filing Jointly (MFJ), Married Filing Separately (MFS), or Head of Family (HoF).
  • Gross income: Total income before pre‑tax deductions.
  • Pre‑tax contributions: Amounts like traditional 401(k), 403(b), HSA that reduce taxable base.
  • Alabama adjustments: State‑specific subtractions from income, if applicable.
  • Standard/Itemized deduction: Alabama deduction amount (varies by status and income).
  • Exemptions: Personal and dependent exemptions allowed by Alabama (subject to phase‑outs).
  • Taxable income (TI): Approx. TI = Gross − Pre‑tax − AL adjustments − Deductions − Exemptions (lower bounded at 0).
  • Alabama state tax: Tax computed from TI using the marginal rate schedule.
  • Effective tax rate: State tax divided by TI (0% if TI = 0).
  • Marginal tax rate: The highest bracket rate that applies to the last dollar of TI.
  • After‑tax income: TI − Alabama state tax (for display; your actual take‑home also depends on other taxes/credits).

How It Works: A Step‑by‑Step Example

Suppose you file as Single and your Alabama taxable income is $50,000.

  1. First $500 at 2% → $500 × 0.02 = $10
  2. Next $2,500 at 4% → $2,500 × 0.04 = $100
  3. Remaining $46,? Wait: 50,000 − 3,000 = $47,000 at 4.95% → $47,000 × 0.0495 = $2,326.50
  4. Total Alabama state tax = $10 + $100 + $2,326.50 = $2,436.50

Effective rate ≈ $2,436.50 ÷ $50,000 = 4.87%. Marginal rate = 4.95%.

Frequently Asked Questions (FAQ)

What income should I enter?

Enter Alabama taxable income if you have it. Otherwise use the estimator and input your gross income and any deductions and exemptions per Alabama rules. The tool will compute an estimated taxable income for you.

Which tax year is supported?

2024–2025. Alabama’s top marginal rate is 4.95% starting in 2024. We monitor DOR announcements and update promptly when thresholds or rates change.

Does this include federal or payroll taxes?

No. This calculator estimates Alabama state individual income tax only. Federal tax and FICA (Social Security and Medicare) are separate.

Are local/municipal taxes included?

No. Some jurisdictions may levy additional local taxes. Consult your local authority.

How accurate is the estimate?

Bracket math follows Alabama DOR schedules exactly. Your final liability can differ based on deductions, exemptions, credits, and specific adjustments. Always review against official tables or consult a professional.

How do I find my deduction and exemption amounts?

Refer to the Alabama Department of Revenue deduction and exemption tables for your filing status and income. Enter those values into the estimator for best results.


Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\text{Tax}(TI)=0.02\cdot\min(TI,500)\;+\;0.04\cdot\min(\max(TI-500,0),2500)\;+\;0.0495\cdot\max(TI-3000,0)\]
\text{Tax}(TI)=0.02\cdot\min(TI,500)\;+\;0.04\cdot\min(\max(TI-500,0),2500)\;+\;0.0495\cdot\max(TI-3000,0)
Formula (extracted LaTeX)
\[\text{Tax}(TI)=0.02\cdot\min(TI,1000)\;+\;0.04\cdot\min(\max(TI-1000,0),5000)\;+\;0.0495\cdot\max(TI-6000,0)\]
\text{Tax}(TI)=0.02\cdot\min(TI,1000)\;+\;0.04\cdot\min(\max(TI-1000,0),5000)\;+\;0.0495\cdot\max(TI-6000,0)
Formula (extracted LaTeX)
\[= (sel, root=document) => Array.from(root.querySelectorAll(sel)); const fmtCurrency = (v) => new Intl.NumberFormat(undefined,{style:'currency',currency:'USD',maximumFractionDigits:2}).format(v||0); const fmtPct = (v) => `${(v*100).toFixed(2)}%`; const clamp0 = (n) => Math.max(0, Number.isFinite(n)? n : 0); // Elements const modeTaxable = $("#mode-taxable"); const modeEstimate = $("#mode-estimate"); const panelTaxable = $("#panel-taxable"); const panelEstimate = $("#panel-estimate"); const taxableIncome = $("#taxableIncome"); const errTaxable = $("#err-taxable"); const grossIncome = $("#grossIncome"); const errGross = $("#err-gross"); const pretax = $("#pretax"); const alAdjustments = $("#alAdjustments"); const stdDeduction = $("#stdDeduction"); const personalExemption = $("#personalExemption"); const dependents = $("#dependents"); const depExemptionAmt = $("#depExemptionAmt"); const estimatedTaxable = $("#estimatedTaxable"); // Results const resTaxable = $("#res-taxable"); const resTax = $("#res-tax"); const resEffRate = $("#res-effRate"); const resMarginal = $("#res-marginal"); const resAfter = $("#res-after"); const resMonthly = $("#res-monthly"); const resultsContainer = $(".results-container"); // Tooltips const tooltipButtons =\]
= (sel, root=document) => Array.from(root.querySelectorAll(sel)); const fmtCurrency = (v) => new Intl.NumberFormat(undefined,{style:'currency',currency:'USD',maximumFractionDigits:2}).format(v||0); const fmtPct = (v) => `${(v*100).toFixed(2)}%`; const clamp0 = (n) => Math.max(0, Number.isFinite(n)? n : 0); // Elements const modeTaxable = $("#mode-taxable"); const modeEstimate = $("#mode-estimate"); const panelTaxable = $("#panel-taxable"); const panelEstimate = $("#panel-estimate"); const taxableIncome = $("#taxableIncome"); const errTaxable = $("#err-taxable"); const grossIncome = $("#grossIncome"); const errGross = $("#err-gross"); const pretax = $("#pretax"); const alAdjustments = $("#alAdjustments"); const stdDeduction = $("#stdDeduction"); const personalExemption = $("#personalExemption"); const dependents = $("#dependents"); const depExemptionAmt = $("#depExemptionAmt"); const estimatedTaxable = $("#estimatedTaxable"); // Results const resTaxable = $("#res-taxable"); const resTax = $("#res-tax"); const resEffRate = $("#res-effRate"); const resMarginal = $("#res-marginal"); const resAfter = $("#res-after"); const resMonthly = $("#res-monthly"); const resultsContainer = $(".results-container"); // Tooltips const tooltipButtons =
Formula (extracted LaTeX)
\[("input[name='inputMode']").forEach(r => r.addEventListener('change', updateModePanels));\]
("input[name='inputMode']").forEach(r => r.addEventListener('change', updateModePanels));
Formula (extracted text)
For Single, Married Filing Separately, and Head of Family: Tax(TI) = 0.02 · min(TI, 500) + 0.04 · min(max(TI - 500, 0), 2500) + 0.0495 · max(TI - 3000, 0) LaTeX: \[ \text{Tax}(TI)=0.02\cdot\min(TI,500)\;+\;0.04\cdot\min(\max(TI-500,0),2500)\;+\;0.0495\cdot\max(TI-3000,0) \] For Married Filing Jointly: Tax(TI) = 0.02 · min(TI, 1000) + 0.04 · min(max(TI - 1000, 0), 5000) + 0.0495 · max(TI - 6000, 0) LaTeX: \[ \text{Tax}(TI)=0.02\cdot\min(TI,1000)\;+\;0.04\cdot\min(\max(TI-1000,0),5000)\;+\;0.0495\cdot\max(TI-6000,0) \] where TI = Alabama taxable income.
Variables and units
  • T = property tax (annual or monthly depending on input) (currency)
Sources (authoritative):
Changelog
Version: 0.1.0-draft
Last code update: 2026-01-19
0.1.0-draft · 2026-01-19
  • Initial audit spec draft generated from HTML extraction (review required).
  • Verify formulas match the calculator engine and convert any text-only formulas to LaTeX.
  • Confirm sources are authoritative and relevant to the calculator methodology.
Verified by Ugo Candido on 2026-01-19
Profile · LinkedIn
, ', svg: { fontCache: 'global' } };

Alabama State Income Tax Calculator

This Alabama income tax calculator lets residents and workers quickly estimate state tax owed, effective and marginal rates, and after‑tax income. It’s designed for individuals, families, and professionals who need a fast, accurate, and accessible computation using Alabama’s current marginal rate schedule.

Data Source and Methodology

Authoritative source: Alabama Department of Revenue — Individual Income Tax, Rate Schedules and Guidance (effective tax years 2024–2025). Official DOR page.

All calculations strictly follow the formulas and data provided by this source.

The Formula Explained

For Single, Married Filing Separately, and Head of Family:
Tax(TI) = 0.02 · min(TI, 500)
        + 0.04 · min(max(TI - 500, 0), 2500)
        + 0.0495 · max(TI - 3000, 0)
          
LaTeX:
\[
\text{Tax}(TI)=0.02\cdot\min(TI,500)\;+\;0.04\cdot\min(\max(TI-500,0),2500)\;+\;0.0495\cdot\max(TI-3000,0)
\]
          
For Married Filing Jointly:
Tax(TI) = 0.02 · min(TI, 1000)
        + 0.04 · min(max(TI - 1000, 0), 5000)
        + 0.0495 · max(TI - 6000, 0)
          
LaTeX:
\[
\text{Tax}(TI)=0.02\cdot\min(TI,1000)\;+\;0.04\cdot\min(\max(TI-1000,0),5000)\;+\;0.0495\cdot\max(TI-6000,0)
\]
          
where TI = Alabama taxable income.

Glossary of Variables

  • Tax year: Calendar year the rates apply to (2024–2025 supported here).
  • Filing status: Single, Married Filing Jointly (MFJ), Married Filing Separately (MFS), or Head of Family (HoF).
  • Gross income: Total income before pre‑tax deductions.
  • Pre‑tax contributions: Amounts like traditional 401(k), 403(b), HSA that reduce taxable base.
  • Alabama adjustments: State‑specific subtractions from income, if applicable.
  • Standard/Itemized deduction: Alabama deduction amount (varies by status and income).
  • Exemptions: Personal and dependent exemptions allowed by Alabama (subject to phase‑outs).
  • Taxable income (TI): Approx. TI = Gross − Pre‑tax − AL adjustments − Deductions − Exemptions (lower bounded at 0).
  • Alabama state tax: Tax computed from TI using the marginal rate schedule.
  • Effective tax rate: State tax divided by TI (0% if TI = 0).
  • Marginal tax rate: The highest bracket rate that applies to the last dollar of TI.
  • After‑tax income: TI − Alabama state tax (for display; your actual take‑home also depends on other taxes/credits).

How It Works: A Step‑by‑Step Example

Suppose you file as Single and your Alabama taxable income is $50,000.

  1. First $500 at 2% → $500 × 0.02 = $10
  2. Next $2,500 at 4% → $2,500 × 0.04 = $100
  3. Remaining $46,? Wait: 50,000 − 3,000 = $47,000 at 4.95% → $47,000 × 0.0495 = $2,326.50
  4. Total Alabama state tax = $10 + $100 + $2,326.50 = $2,436.50

Effective rate ≈ $2,436.50 ÷ $50,000 = 4.87%. Marginal rate = 4.95%.

Frequently Asked Questions (FAQ)

What income should I enter?

Enter Alabama taxable income if you have it. Otherwise use the estimator and input your gross income and any deductions and exemptions per Alabama rules. The tool will compute an estimated taxable income for you.

Which tax year is supported?

2024–2025. Alabama’s top marginal rate is 4.95% starting in 2024. We monitor DOR announcements and update promptly when thresholds or rates change.

Does this include federal or payroll taxes?

No. This calculator estimates Alabama state individual income tax only. Federal tax and FICA (Social Security and Medicare) are separate.

Are local/municipal taxes included?

No. Some jurisdictions may levy additional local taxes. Consult your local authority.

How accurate is the estimate?

Bracket math follows Alabama DOR schedules exactly. Your final liability can differ based on deductions, exemptions, credits, and specific adjustments. Always review against official tables or consult a professional.

How do I find my deduction and exemption amounts?

Refer to the Alabama Department of Revenue deduction and exemption tables for your filing status and income. Enter those values into the estimator for best results.


Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\text{Tax}(TI)=0.02\cdot\min(TI,500)\;+\;0.04\cdot\min(\max(TI-500,0),2500)\;+\;0.0495\cdot\max(TI-3000,0)\]
\text{Tax}(TI)=0.02\cdot\min(TI,500)\;+\;0.04\cdot\min(\max(TI-500,0),2500)\;+\;0.0495\cdot\max(TI-3000,0)
Formula (extracted LaTeX)
\[\text{Tax}(TI)=0.02\cdot\min(TI,1000)\;+\;0.04\cdot\min(\max(TI-1000,0),5000)\;+\;0.0495\cdot\max(TI-6000,0)\]
\text{Tax}(TI)=0.02\cdot\min(TI,1000)\;+\;0.04\cdot\min(\max(TI-1000,0),5000)\;+\;0.0495\cdot\max(TI-6000,0)
Formula (extracted LaTeX)
\[= (sel, root=document) => Array.from(root.querySelectorAll(sel)); const fmtCurrency = (v) => new Intl.NumberFormat(undefined,{style:'currency',currency:'USD',maximumFractionDigits:2}).format(v||0); const fmtPct = (v) => `${(v*100).toFixed(2)}%`; const clamp0 = (n) => Math.max(0, Number.isFinite(n)? n : 0); // Elements const modeTaxable = $("#mode-taxable"); const modeEstimate = $("#mode-estimate"); const panelTaxable = $("#panel-taxable"); const panelEstimate = $("#panel-estimate"); const taxableIncome = $("#taxableIncome"); const errTaxable = $("#err-taxable"); const grossIncome = $("#grossIncome"); const errGross = $("#err-gross"); const pretax = $("#pretax"); const alAdjustments = $("#alAdjustments"); const stdDeduction = $("#stdDeduction"); const personalExemption = $("#personalExemption"); const dependents = $("#dependents"); const depExemptionAmt = $("#depExemptionAmt"); const estimatedTaxable = $("#estimatedTaxable"); // Results const resTaxable = $("#res-taxable"); const resTax = $("#res-tax"); const resEffRate = $("#res-effRate"); const resMarginal = $("#res-marginal"); const resAfter = $("#res-after"); const resMonthly = $("#res-monthly"); const resultsContainer = $(".results-container"); // Tooltips const tooltipButtons =\]
= (sel, root=document) => Array.from(root.querySelectorAll(sel)); const fmtCurrency = (v) => new Intl.NumberFormat(undefined,{style:'currency',currency:'USD',maximumFractionDigits:2}).format(v||0); const fmtPct = (v) => `${(v*100).toFixed(2)}%`; const clamp0 = (n) => Math.max(0, Number.isFinite(n)? n : 0); // Elements const modeTaxable = $("#mode-taxable"); const modeEstimate = $("#mode-estimate"); const panelTaxable = $("#panel-taxable"); const panelEstimate = $("#panel-estimate"); const taxableIncome = $("#taxableIncome"); const errTaxable = $("#err-taxable"); const grossIncome = $("#grossIncome"); const errGross = $("#err-gross"); const pretax = $("#pretax"); const alAdjustments = $("#alAdjustments"); const stdDeduction = $("#stdDeduction"); const personalExemption = $("#personalExemption"); const dependents = $("#dependents"); const depExemptionAmt = $("#depExemptionAmt"); const estimatedTaxable = $("#estimatedTaxable"); // Results const resTaxable = $("#res-taxable"); const resTax = $("#res-tax"); const resEffRate = $("#res-effRate"); const resMarginal = $("#res-marginal"); const resAfter = $("#res-after"); const resMonthly = $("#res-monthly"); const resultsContainer = $(".results-container"); // Tooltips const tooltipButtons =
Formula (extracted LaTeX)
\[("input[name='inputMode']").forEach(r => r.addEventListener('change', updateModePanels));\]
("input[name='inputMode']").forEach(r => r.addEventListener('change', updateModePanels));
Formula (extracted text)
For Single, Married Filing Separately, and Head of Family: Tax(TI) = 0.02 · min(TI, 500) + 0.04 · min(max(TI - 500, 0), 2500) + 0.0495 · max(TI - 3000, 0) LaTeX: \[ \text{Tax}(TI)=0.02\cdot\min(TI,500)\;+\;0.04\cdot\min(\max(TI-500,0),2500)\;+\;0.0495\cdot\max(TI-3000,0) \] For Married Filing Jointly: Tax(TI) = 0.02 · min(TI, 1000) + 0.04 · min(max(TI - 1000, 0), 5000) + 0.0495 · max(TI - 6000, 0) LaTeX: \[ \text{Tax}(TI)=0.02\cdot\min(TI,1000)\;+\;0.04\cdot\min(\max(TI-1000,0),5000)\;+\;0.0495\cdot\max(TI-6000,0) \] where TI = Alabama taxable income.
Variables and units
  • T = property tax (annual or monthly depending on input) (currency)
Sources (authoritative):
Changelog
Version: 0.1.0-draft
Last code update: 2026-01-19
0.1.0-draft · 2026-01-19
  • Initial audit spec draft generated from HTML extraction (review required).
  • Verify formulas match the calculator engine and convert any text-only formulas to LaTeX.
  • Confirm sources are authoritative and relevant to the calculator methodology.
Verified by Ugo Candido on 2026-01-19
Profile · LinkedIn
]], displayMath: [['\\[','\\]']] }, svg: { fontCache: 'global' } };, svg: { fontCache: 'global' } };

Alabama State Income Tax Calculator

This Alabama income tax calculator lets residents and workers quickly estimate state tax owed, effective and marginal rates, and after‑tax income. It’s designed for individuals, families, and professionals who need a fast, accurate, and accessible computation using Alabama’s current marginal rate schedule.

Data Source and Methodology

Authoritative source: Alabama Department of Revenue — Individual Income Tax, Rate Schedules and Guidance (effective tax years 2024–2025). Official DOR page.

All calculations strictly follow the formulas and data provided by this source.

The Formula Explained

For Single, Married Filing Separately, and Head of Family:
Tax(TI) = 0.02 · min(TI, 500)
        + 0.04 · min(max(TI - 500, 0), 2500)
        + 0.0495 · max(TI - 3000, 0)
          
LaTeX:
\[
\text{Tax}(TI)=0.02\cdot\min(TI,500)\;+\;0.04\cdot\min(\max(TI-500,0),2500)\;+\;0.0495\cdot\max(TI-3000,0)
\]
          
For Married Filing Jointly:
Tax(TI) = 0.02 · min(TI, 1000)
        + 0.04 · min(max(TI - 1000, 0), 5000)
        + 0.0495 · max(TI - 6000, 0)
          
LaTeX:
\[
\text{Tax}(TI)=0.02\cdot\min(TI,1000)\;+\;0.04\cdot\min(\max(TI-1000,0),5000)\;+\;0.0495\cdot\max(TI-6000,0)
\]
          
where TI = Alabama taxable income.

Glossary of Variables

  • Tax year: Calendar year the rates apply to (2024–2025 supported here).
  • Filing status: Single, Married Filing Jointly (MFJ), Married Filing Separately (MFS), or Head of Family (HoF).
  • Gross income: Total income before pre‑tax deductions.
  • Pre‑tax contributions: Amounts like traditional 401(k), 403(b), HSA that reduce taxable base.
  • Alabama adjustments: State‑specific subtractions from income, if applicable.
  • Standard/Itemized deduction: Alabama deduction amount (varies by status and income).
  • Exemptions: Personal and dependent exemptions allowed by Alabama (subject to phase‑outs).
  • Taxable income (TI): Approx. TI = Gross − Pre‑tax − AL adjustments − Deductions − Exemptions (lower bounded at 0).
  • Alabama state tax: Tax computed from TI using the marginal rate schedule.
  • Effective tax rate: State tax divided by TI (0% if TI = 0).
  • Marginal tax rate: The highest bracket rate that applies to the last dollar of TI.
  • After‑tax income: TI − Alabama state tax (for display; your actual take‑home also depends on other taxes/credits).

How It Works: A Step‑by‑Step Example

Suppose you file as Single and your Alabama taxable income is $50,000.

  1. First $500 at 2% → $500 × 0.02 = $10
  2. Next $2,500 at 4% → $2,500 × 0.04 = $100
  3. Remaining $46,? Wait: 50,000 − 3,000 = $47,000 at 4.95% → $47,000 × 0.0495 = $2,326.50
  4. Total Alabama state tax = $10 + $100 + $2,326.50 = $2,436.50

Effective rate ≈ $2,436.50 ÷ $50,000 = 4.87%. Marginal rate = 4.95%.

Frequently Asked Questions (FAQ)

What income should I enter?

Enter Alabama taxable income if you have it. Otherwise use the estimator and input your gross income and any deductions and exemptions per Alabama rules. The tool will compute an estimated taxable income for you.

Which tax year is supported?

2024–2025. Alabama’s top marginal rate is 4.95% starting in 2024. We monitor DOR announcements and update promptly when thresholds or rates change.

Does this include federal or payroll taxes?

No. This calculator estimates Alabama state individual income tax only. Federal tax and FICA (Social Security and Medicare) are separate.

Are local/municipal taxes included?

No. Some jurisdictions may levy additional local taxes. Consult your local authority.

How accurate is the estimate?

Bracket math follows Alabama DOR schedules exactly. Your final liability can differ based on deductions, exemptions, credits, and specific adjustments. Always review against official tables or consult a professional.

How do I find my deduction and exemption amounts?

Refer to the Alabama Department of Revenue deduction and exemption tables for your filing status and income. Enter those values into the estimator for best results.


Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\text{Tax}(TI)=0.02\cdot\min(TI,500)\;+\;0.04\cdot\min(\max(TI-500,0),2500)\;+\;0.0495\cdot\max(TI-3000,0)\]
\text{Tax}(TI)=0.02\cdot\min(TI,500)\;+\;0.04\cdot\min(\max(TI-500,0),2500)\;+\;0.0495\cdot\max(TI-3000,0)
Formula (extracted LaTeX)
\[\text{Tax}(TI)=0.02\cdot\min(TI,1000)\;+\;0.04\cdot\min(\max(TI-1000,0),5000)\;+\;0.0495\cdot\max(TI-6000,0)\]
\text{Tax}(TI)=0.02\cdot\min(TI,1000)\;+\;0.04\cdot\min(\max(TI-1000,0),5000)\;+\;0.0495\cdot\max(TI-6000,0)
Formula (extracted LaTeX)
\[= (sel, root=document) => Array.from(root.querySelectorAll(sel)); const fmtCurrency = (v) => new Intl.NumberFormat(undefined,{style:'currency',currency:'USD',maximumFractionDigits:2}).format(v||0); const fmtPct = (v) => `${(v*100).toFixed(2)}%`; const clamp0 = (n) => Math.max(0, Number.isFinite(n)? n : 0); // Elements const modeTaxable = $("#mode-taxable"); const modeEstimate = $("#mode-estimate"); const panelTaxable = $("#panel-taxable"); const panelEstimate = $("#panel-estimate"); const taxableIncome = $("#taxableIncome"); const errTaxable = $("#err-taxable"); const grossIncome = $("#grossIncome"); const errGross = $("#err-gross"); const pretax = $("#pretax"); const alAdjustments = $("#alAdjustments"); const stdDeduction = $("#stdDeduction"); const personalExemption = $("#personalExemption"); const dependents = $("#dependents"); const depExemptionAmt = $("#depExemptionAmt"); const estimatedTaxable = $("#estimatedTaxable"); // Results const resTaxable = $("#res-taxable"); const resTax = $("#res-tax"); const resEffRate = $("#res-effRate"); const resMarginal = $("#res-marginal"); const resAfter = $("#res-after"); const resMonthly = $("#res-monthly"); const resultsContainer = $(".results-container"); // Tooltips const tooltipButtons =\]
= (sel, root=document) => Array.from(root.querySelectorAll(sel)); const fmtCurrency = (v) => new Intl.NumberFormat(undefined,{style:'currency',currency:'USD',maximumFractionDigits:2}).format(v||0); const fmtPct = (v) => `${(v*100).toFixed(2)}%`; const clamp0 = (n) => Math.max(0, Number.isFinite(n)? n : 0); // Elements const modeTaxable = $("#mode-taxable"); const modeEstimate = $("#mode-estimate"); const panelTaxable = $("#panel-taxable"); const panelEstimate = $("#panel-estimate"); const taxableIncome = $("#taxableIncome"); const errTaxable = $("#err-taxable"); const grossIncome = $("#grossIncome"); const errGross = $("#err-gross"); const pretax = $("#pretax"); const alAdjustments = $("#alAdjustments"); const stdDeduction = $("#stdDeduction"); const personalExemption = $("#personalExemption"); const dependents = $("#dependents"); const depExemptionAmt = $("#depExemptionAmt"); const estimatedTaxable = $("#estimatedTaxable"); // Results const resTaxable = $("#res-taxable"); const resTax = $("#res-tax"); const resEffRate = $("#res-effRate"); const resMarginal = $("#res-marginal"); const resAfter = $("#res-after"); const resMonthly = $("#res-monthly"); const resultsContainer = $(".results-container"); // Tooltips const tooltipButtons =
Formula (extracted LaTeX)
\[("input[name='inputMode']").forEach(r => r.addEventListener('change', updateModePanels));\]
("input[name='inputMode']").forEach(r => r.addEventListener('change', updateModePanels));
Formula (extracted text)
For Single, Married Filing Separately, and Head of Family: Tax(TI) = 0.02 · min(TI, 500) + 0.04 · min(max(TI - 500, 0), 2500) + 0.0495 · max(TI - 3000, 0) LaTeX: \[ \text{Tax}(TI)=0.02\cdot\min(TI,500)\;+\;0.04\cdot\min(\max(TI-500,0),2500)\;+\;0.0495\cdot\max(TI-3000,0) \] For Married Filing Jointly: Tax(TI) = 0.02 · min(TI, 1000) + 0.04 · min(max(TI - 1000, 0), 5000) + 0.0495 · max(TI - 6000, 0) LaTeX: \[ \text{Tax}(TI)=0.02\cdot\min(TI,1000)\;+\;0.04\cdot\min(\max(TI-1000,0),5000)\;+\;0.0495\cdot\max(TI-6000,0) \] where TI = Alabama taxable income.
Variables and units
  • T = property tax (annual or monthly depending on input) (currency)
Sources (authoritative):
Changelog
Version: 0.1.0-draft
Last code update: 2026-01-19
0.1.0-draft · 2026-01-19
  • Initial audit spec draft generated from HTML extraction (review required).
  • Verify formulas match the calculator engine and convert any text-only formulas to LaTeX.
  • Confirm sources are authoritative and relevant to the calculator methodology.
Verified by Ugo Candido on 2026-01-19
Profile · LinkedIn