Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions changelog.d/wi-itemized-credit-2021-charity.fixed.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Wisconsin's itemized deduction credit now uses only the Schedule 1 medical, interest, charitable, and casualty components, excluding miscellaneous deductions and SALT, and subtracts the charitable deduction actually claimed above the line in 2020.
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,16 @@ metadata:
period: year
unit: /1
reference:
- title: Wisconsin Statutes 71.07(5)(c)
href: https://docs.legis.wisconsin.gov/statutes/statutes/71/i/07/5
- title: 2019 Wisconsin Statutes 71.07(5)(c)
href: https://docs.legis.wisconsin.gov/2019/statutes/statutes/71/i/07/5
- title: 2020 Wisconsin Form 1, Schedule 1
href: https://www.revenue.wi.gov/TaxForms2020/2020-Form1.pdf#page=5
- title: 2021 Wisconsin Form 1, Schedule 1
href: https://www.revenue.wi.gov/TaxForms2021/2021-Form1f.pdf#page=4
href: https://www.revenue.wi.gov/TaxForms2021/2021-Form1.pdf#page=4
- title: 2022 Wisconsin Form 1, Schedule 1
href: https://www.revenue.wi.gov/TaxForms2022/2022-Form1f.pdf#page=4
href: https://www.revenue.wi.gov/TaxForms2022/2022-Form1.pdf#page=4
- title: 2023 Wisconsin Form 1, Schedule 1
href: https://www.revenue.wi.gov/TaxForms2023/2023-Form1.pdf#page=4
- title: 2024 Wisconsin Form 1, Schedule 1
Expand All @@ -15,4 +21,4 @@ metadata:
href: https://www.revenue.wi.gov/TaxForms2025/2025-Form1.pdf#page=4

values:
2021-01-01: 0.05
2020-01-01: 0.05
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,226 @@
output:
wi_itemized_deduction_credit_potential: 0

# 2020 Form 1 instructions, PDF p. 17 (printed p. 15), line 11:
# https://www.revenue.wi.gov/TaxForms2020/2020-Form1-inst.pdf#page=17
# Schedule 1, PDF p. 5, lines 3 and 8-9:
# https://www.revenue.wi.gov/TaxForms2020/2020-Form1.pdf#page=5
# Eligible charity = 10,000 - 300 = 9,700; credit = 9,700 * .05 = 485.
- name: Wisconsin 2020 credit excludes gifts already deducted above the line
period: 2020
absolute_error_margin: 0.01
input:
state_code: WI
tax_unit_itemizes: false
charitable_deduction: 10_000
charitable_contributions_ald: 300
wi_standard_deduction: 0
medical_expense_deduction: 0
interest_deduction: 0
deductible_mortgage_insurance_premiums: 0
casualty_loss_deduction: 0
output:
wi_itemized_deduction_credit_charitable_deduction: 9_700
wi_itemized_deduction_credit_potential: 485

- name: Wisconsin 2020 credit retains gifts for federal itemizers
period: 2020
absolute_error_margin: 0.01
input:
state_code: WI
tax_unit_itemizes: true
charitable_deduction: 10_000
charitable_cash_donations: 10_000
wi_standard_deduction: 0
medical_expense_deduction: 0
interest_deduction: 0
deductible_mortgage_insurance_premiums: 0
casualty_loss_deduction: 0
output:
charitable_contributions_ald: 0
wi_itemized_deduction_credit_charitable_deduction: 10_000
wi_itemized_deduction_credit_potential: 500

# 2020 instructions, PDF p. 37: the standard deduction is zero at 126,499 or over.
# https://www.revenue.wi.gov/TaxForms2020/2020-Form1-inst.pdf#page=37
# ALD = min(10,000, 300) = 300; AGI = 150,000 - 300 = 149,700.
# Eligible charity = 10,000 - 300 = 9,700; potential credit = 9,700 * .05 = 485.
- name: Wisconsin 2020 non-itemizer credit computes the claimed deduction from gifts
period: 2020
absolute_error_margin: 0.01
input:
people:
person:
age: 40
employment_income: 150_000
charitable_cash_donations: 10_000
tax_units:
tax_unit:
members: [person]
tax_unit_itemizes: false
households:
household:
members: [person]
state_code: WI
output:
charitable_contributions_ald: 300
adjusted_gross_income: 149_700
charitable_deduction: 10_000
wi_itemized_deduction_credit_charitable_deduction: 9_700
wi_standard_deduction: 0
wi_itemized_deduction_credit_potential: 485

# Schedule A is at most 10,000 gifts + 10,000 SALT = 20,000, below the
# 24,800 joint standard deduction, so the computed federal choice is not to itemize.
# ALD = 300; AGI = 130,000 - 300 = 129,700; WI standard deduction = 0.
# Eligible charity = 9,700; potential credit = 9,700 * .05 = 485.
- name: Wisconsin 2020 joint credit computes federal non-itemization and the claimed deduction
period: 2020
absolute_error_margin: 0.01
input:
people:
head:
age: 40
employment_income: 130_000
charitable_cash_donations: 10_000
spouse:
age: 40
tax_units:
tax_unit:
members: [head, spouse]
marital_units:
marital_unit:
members: [head, spouse]
households:
household:
members: [head, spouse]
state_code: WI
output:
filing_status: JOINT
tax_unit_itemizes: false
charitable_contributions_ald: 300
adjusted_gross_income: 129_700
charitable_deduction: 10_000
wi_itemized_deduction_credit_charitable_deduction: 9_700
wi_standard_deduction: 0
wi_itemized_deduction_credit_potential: 485

# Wis. Stat. 71.07(5)(a)-(c):
# https://docs.legis.wisconsin.gov/statutes/statutes/71/i/07/5
# 2021 Schedule 1 instructions (hypothetical Schedule A):
# https://www.revenue.wi.gov/TaxForms2021/2021-Form1-Inst.pdf#page=16
# 2021 Form 1, Schedule 1, lines 3 and 5-9:
# https://www.revenue.wi.gov/TaxForms2021/2021-Form1.pdf#page=4
# Cash gifts = 10,000; WI standard deduction = 0 at this income.
# 2021 standard-deduction table, final row: all statuses zero above 128,113.
# https://www.revenue.wi.gov/TaxForms2021/2021-Form1-Inst.pdf#page=36
# The same gift is counted once: (10,000 - 0) * .05 = 500.
# The federal 300 nonitemizer allowance is not an additional contribution.
- name: Wisconsin 2021 credit counts each charitable gift once
period: 2021
absolute_error_margin: 0.01
input:
people:
person:
age: 40
employment_income: 150_000
charitable_cash_donations: 10_000
tax_units:
tax_unit:
members: [person]
households:
household:
members: [person]
state_code: WI
output:
wi_standard_deduction: 0
wi_itemized_deduction_credit_potential: 500
wi_itemized_deduction_credit: 500

# Before 2020 the base formula applies: the federal charitable deduction, unchanged.
- name: Wisconsin 2019 credit counts the federal charitable deduction
period: 2019
absolute_error_margin: 0.01
input:
people:
person:
age: 40
employment_income: 150_000
charitable_cash_donations: 10_000
tax_units:
tax_unit:
members: [person]
households:
household:
members: [person]
state_code: WI
output:
wi_standard_deduction: 0
wi_itemized_deduction_credit_potential: 500
wi_itemized_deduction_credit: 500

# 2022 has no federal nonitemizer allowance, and should already pass.
- name: Wisconsin 2022 charitable credit control
period: 2022
absolute_error_margin: 0.01
input:
people:
person:
age: 40
employment_income: 150_000
charitable_cash_donations: 10_000
tax_units:
tax_unit:
members: [person]
households:
household:
members: [person]
state_code: WI
output:
wi_standard_deduction: 0
wi_itemized_deduction_credit_potential: 500
wi_itemized_deduction_credit: 500

# 2022 Schedule 1, lines 1-9:
# https://www.revenue.wi.gov/TaxForms2022/2022-Form1.pdf#page=4
# Medical deduction = 15,000 - (150,000 * .075) = 3,750.
# Credit = (3,750 + 10,000 interest + 10,000 charity - 0) * .05.
- name: Wisconsin 2022 medical interest and charitable credit control
period: 2022
absolute_error_margin: 0.01
input:
people:
person:
age: 40
employment_income: 150_000
charitable_cash_donations: 10_000
other_medical_expenses: 15_000
deductible_interest_expense: 10_000
tax_units:
tax_unit:
members: [person]
households:
household:
members: [person]
state_code: WI
output:
medical_expense_deduction: 3_750
wi_standard_deduction: 0
wi_itemized_deduction_credit_potential: 1_187.50
wi_itemized_deduction_credit: 1_187.50

# Wis. Stat. 71.07(5)(a)2 and 7 exclude SALT and miscellaneous deductions.
- name: Wisconsin credit excludes miscellaneous deductions and SALT
period: 2022
absolute_error_margin: 0.01
input:
state_code: WI
wi_standard_deduction: 0
misc_deduction: 5_000
salt_deduction: 8_000
output:
wi_itemized_deduction_credit_potential: 0

- name: WI excludes mortgage insurance premiums in 2021.
period: 2021
input:
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
# 2020 Form 1 instructions, PDF p. 17 (printed p. 15), line 11:
# https://www.revenue.wi.gov/TaxForms2020/2020-Form1-inst.pdf#page=17
# Gifts used for the federal line 10b deduction cannot also count for this credit.
- name: Wisconsin 2020 charitable component excludes the claimed federal allowance
period: 2020
input:
state_code: WI
tax_unit_itemizes: false
charitable_deduction: 10_000
charitable_contributions_ald: 300
output:
wi_itemized_deduction_credit_charitable_deduction: 9_700

- name: Wisconsin 2020 federal itemizers retain their full charitable component
period: 2020
input:
state_code: WI
tax_unit_itemizes: true
charitable_deduction: 10_000
charitable_cash_donations: 10_000
output:
charitable_contributions_ald: 0
wi_itemized_deduction_credit_charitable_deduction: 10_000

- name: Wisconsin 2020 subtracts the actual allowance below the federal cap
period: 2020
input:
state_code: WI
tax_unit_itemizes: false
charitable_deduction: 1_000
charitable_contributions_ald: 100
output:
wi_itemized_deduction_credit_charitable_deduction: 900

- name: Wisconsin 2020 charitable component cannot be negative
period: 2020
input:
state_code: WI
tax_unit_itemizes: false
charitable_deduction: 200
charitable_contributions_ald: 300
output:
wi_itemized_deduction_credit_charitable_deduction: 0

- name: Wisconsin 2021 retains the full gift without adding the federal allowance
period: 2021
input:
state_code: WI
tax_unit_itemizes: false
charitable_deduction: 10_000
charitable_deduction_for_non_itemizers: 300
output:
wi_itemized_deduction_credit_charitable_deduction: 10_000
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
from policyengine_us.model_api import *


class wi_itemized_deduction_credit_charitable_deduction(Variable):
value_type = float
entity = TaxUnit
label = "Charitable deduction for Wisconsin's itemized deduction credit"
unit = USD
definition_period = YEAR
reference = (
"https://docs.legis.wisconsin.gov/statutes/statutes/71/i/07/5",
# PDF pages 2, 17
"https://www.revenue.wi.gov/TaxForms2020/2020-Form1-inst.pdf#page=2",
"https://www.revenue.wi.gov/TaxForms2021/2021-Form1-Inst.pdf#page=16",
)
defined_for = StateCode.WI

def formula(tax_unit, period, parameters):
return tax_unit("charitable_deduction", period)

def formula_2020(tax_unit, period, parameters):
charitable = tax_unit("charitable_deduction", period)
# Gifts claimed on federal Form 1040 line 10b; zero for itemizers.
claimed_above_the_line = tax_unit("charitable_contributions_ald", period)
return max_(0, charitable - claimed_above_the_line)

def formula_2021(tax_unit, period, parameters):
return tax_unit("charitable_deduction", period)
Original file line number Diff line number Diff line change
Expand Up @@ -8,19 +8,31 @@ class wi_itemized_deduction_credit_potential(Variable):
unit = USD
definition_period = YEAR
reference = (
"https://www.revenue.wi.gov/TaxForms2021/2021-Form1f.pdf#page=4",
"https://docs.legis.wisconsin.gov/statutes/statutes/71/i/07/5",
"https://www.revenue.wi.gov/TaxForms2021/2021-Form1.pdf#page=4",
"https://www.revenue.wi.gov/TaxForms2021/2021-Form1-Inst.pdf#page=16",
"https://www.revenue.wi.gov/TaxForms2021/2021-Form1NPR-Inst.pdf#page=34",
"https://www.revenue.wi.gov/TaxForms2022/2022-Form1f.pdf#page=4",
"https://www.revenue.wi.gov/TaxForms2022/2022-Form1.pdf#page=4",
"https://docs.legis.wisconsin.gov/misc/lfb/informational_papers/january_2023/0002_individual_income_tax_informational_paper_2.pdf#page=19",
)
defined_for = StateCode.WI

def formula(tax_unit, period, parameters):
# Form 1 instructions exclude mortgage insurance premiums treated
# as interest from the itemized deduction credit.
wi_itmded = tax_unit("itemized_deductions_less_salt", period) - tax_unit(
"deductible_mortgage_insurance_premiums", period
# Schedule 1 uses actual or hypothetical Schedule A components,
# excluding SALT, miscellaneous deductions, and the federal
# charitable allowance for non-itemizers.
wi_itmded = add(
tax_unit,
period,
[
"medical_expense_deduction",
"interest_deduction",
"wi_itemized_deduction_credit_charitable_deduction",
"casualty_loss_deduction",
],
)
# Exclude mortgage insurance premiums included in federal interest.
wi_itmded -= tax_unit("deductible_mortgage_insurance_premiums", period)
wi_stdded = tax_unit("wi_standard_deduction", period)
excess_itmded = max_(0, wi_itmded - wi_stdded)
p = parameters(period).gov.states.wi.tax.income
Expand Down
Loading