The Maine Property Tax Fairness Credit (PTFC) under-computes the credit for age-65+ filers in tax years 2024+, because the enhanced senior benefit base silently never applies.
Reproduction (single filer, age 65, ME, 2025)
Renter, age 65, taxable_interest_income 17,250.68, social_security_retirement 18,571.52, rent 24,484.64.
| Variable |
PE (1.749.0) |
Correct (2025 Schedule PTFC/STFC) |
| Benefit base (Sch. line 9) |
2,550 (non-senior single) |
4,100 (65+, line 8) |
| Line 11 = base − 4% x income |
2,550 − 1,433 = 1,117 |
3,673 − 1,433 = 2,240 |
| Max credit (line 12) |
— |
2,000 (65+) |
me_property_tax_fairness_credit |
1,117.10 |
2,000.00 |
Income base (35,822) and rent-equivalent property tax (3,672.70) are already correct; only the benefit base is wrong.
Root cause
me_property_tax_fairness_credit_base_cap chooses the senior benefit base via:
senior_benefit_base = p.benefit_base.senior.calc(greater_age_head_spouse)
senior_benefit_apply = senior_benefit_base != 0
adjusted_benefit_base = where(senior_benefit_apply, senior_benefit_base, benefit_base)
But parameters/gov/states/me/tax/income/credits/fairness/property_tax/benefit_base/senior.yaml is missing metadata.type: single_amount. Its brackets therefore load as a MarginalAmountTaxScale instead of a SingleAmountTaxScale, so senior.calc(65) returns 0 (not 4,100). The guard reads senior_benefit_apply == False and PE falls back to the non-senior single base (2,550).
Confirmed at runtime:
type(p.benefit_base.senior) -> MarginalAmountTaxScale
type(p.benefit_base.cap) -> SingleAmountTaxScale (this one has type: single_amount, and cap.calc(65) correctly returns 2,000)
Fix
Add type: single_amount to the top-level metadata of senior.yaml (matching cap.yaml). With that change, me_property_tax_fairness_credit returns 2,000.00, matching the official 2025 Schedule PTFC/STFC. A regression test for a 65+ renter should be added.
Impact
All Maine PTFC computations for filers where the older of head/spouse is 65+ (tax years 2024 onward) — the senior enhanced benefit base has never applied, so elderly filers' credits are under-computed.
References
Found via PolicyEngine/policyengine-taxsim#1028.
The Maine Property Tax Fairness Credit (PTFC) under-computes the credit for age-65+ filers in tax years 2024+, because the enhanced senior benefit base silently never applies.
Reproduction (single filer, age 65, ME, 2025)
Renter, age 65,
taxable_interest_income17,250.68,social_security_retirement18,571.52,rent24,484.64.me_property_tax_fairness_creditIncome base (35,822) and rent-equivalent property tax (3,672.70) are already correct; only the benefit base is wrong.
Root cause
me_property_tax_fairness_credit_base_capchooses the senior benefit base via:But
parameters/gov/states/me/tax/income/credits/fairness/property_tax/benefit_base/senior.yamlis missingmetadata.type: single_amount. Itsbracketstherefore load as aMarginalAmountTaxScaleinstead of aSingleAmountTaxScale, sosenior.calc(65)returns 0 (not 4,100). The guard readssenior_benefit_apply == Falseand PE falls back to the non-senior single base (2,550).Confirmed at runtime:
type(p.benefit_base.senior)->MarginalAmountTaxScaletype(p.benefit_base.cap)->SingleAmountTaxScale(this one hastype: single_amount, andcap.calc(65)correctly returns 2,000)Fix
Add
type: single_amountto the top-levelmetadataofsenior.yaml(matchingcap.yaml). With that change,me_property_tax_fairness_creditreturns 2,000.00, matching the official 2025 Schedule PTFC/STFC. A regression test for a 65+ renter should be added.Impact
All Maine PTFC computations for filers where the older of head/spouse is 65+ (tax years 2024 onward) — the senior enhanced benefit base has never applied, so elderly filers' credits are under-computed.
References
Found via PolicyEngine/policyengine-taxsim#1028.