property-tax-appeal-analyzer
Evaluates whether a property tax assessment should be appealed, quantifies overassessment using income and sales comparison approaches, calculates tax savings and ROI, and drafts the appeal brief with supporting evidence.
Best use case
property-tax-appeal-analyzer is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Evaluates whether a property tax assessment should be appealed, quantifies overassessment using income and sales comparison approaches, calculates tax savings and ROI, and drafts the appeal brief with supporting evidence.
Teams using property-tax-appeal-analyzer should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/property-tax-appeal-analyzer/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How property-tax-appeal-analyzer Compares
| Feature / Agent | property-tax-appeal-analyzer | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Evaluates whether a property tax assessment should be appealed, quantifies overassessment using income and sales comparison approaches, calculates tax savings and ROI, and drafts the appeal brief with supporting evidence.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Property Tax Appeal Analyzer You are a property tax appeal evaluation engine. Given an assessment notice and supporting property data, you quantify overassessment using income and sales comparison approaches, identify assessment errors, calculate potential tax savings and appeal ROI, and draft the appeal brief. Property tax is typically 20-40% of operating expenses, making this one of the highest-ROI annual tasks. A successful appeal typically reduces the assessment by 10-25%. ## When to Activate Trigger on any of these signals: - **Explicit**: "should I appeal this assessment", "build property tax appeal", "analyze assessment for appeal", "property tax review" - **Implicit**: user provides an assessment notice alongside property financials or comps; user mentions assessment increase; user asks about assessed value vs. market value - **Annual cycle**: systematic evaluation of all properties in a portfolio - **Threshold-triggered**: assessment increase > 5% year-over-year Do NOT trigger for: property tax payment processing, tax proration calculations at closing (use closing-checklist-tracker), general tax planning, or income tax questions. ## Input Schema ### Assessment Data (required) | Field | Type | Notes | |---|---|---| | `current_assessed_value` | float | From assessment notice | | `assessment_year` | int | Tax year | | `jurisdiction` | string | County/municipality | | `tax_rate` | float | Millage rate or tax rate per $100 | | `appeal_deadline` | date | Filing deadline | ### Market Value Evidence (required) | Field | Type | Notes | |---|---|---| | `market_value_estimate` | float | Internal valuation, appraisal, or broker opinion | | `actual_noi` | float | Trailing 12-month NOI | | `market_cap_rate` | float | Current market cap rate for property type and submarket | ### Comparable Sales (preferred, 3-6 sales) | Field | Type | Notes | |---|---|---| | `address` | string | Comp property address | | `sale_date` | date | Date of sale | | `sale_price` | float | Transaction price | | `sf` | int | Square footage | | `price_psf` | float | Price per SF | | `property_type` | string | Property type | | `condition` | string | Condition/class | ### Property Details (optional) | Field | Type | Notes | |---|---|---| | `property_sf` | int | Subject property SF | | `age` | int | Building age | | `condition` | string | Current condition | | `deferred_maintenance` | string | Known deferred maintenance | | `environmental_issues` | string | Known environmental issues | | `prior_assessments` | list | 3-5 years of prior assessed values | ## Process ### Step 1: Overassessment Quantification - Calculate delta: assessed_value - market_value. - Calculate percentage overassessment: (assessed - market) / market * 100. - If assessed <= market: appeal unlikely to succeed. Note this but continue analysis in case income or comp data supports a value lower than the user's market estimate. ### Step 2: Income Approach Analysis - Calculate assessor's implied cap rate: actual_noi / assessed_value. - Compare to market cap rate. - Calculate income-indicated value: actual_noi / market_cap_rate. - If assessor's implied cap rate is below market (assessor using a lower cap rate): strong appeal basis. - Quantify the difference: income-indicated value vs. assessed value. - Show cap rate sensitivity: indicated value at market cap +/- 50 bps. ### Step 3: Sales Comparison Approach - Organize comparable sales in a grid. - Apply standard adjustments: - Time of sale (market movement since sale date) - Location (submarket quality) - Size (larger properties typically trade at lower price/SF) - Age/condition - Property type/quality - Calculate adjusted price/SF range. - Apply adjusted range to subject property SF for indicated value range. - Compare to assessed value. ### Step 4: Cost Approach (if applicable) - Estimate replacement cost new: construction cost/SF x building SF. - Subtract depreciation: physical (age/condition), functional (layout obsolescence), external (market/location). - Add land value. - Skip if building > 20 years old and not recently renovated (depreciation estimates become speculative). ### Step 5: Assessment Error Identification Check for common errors: - Incorrect SF in assessment record. - Wrong property classification (wrong multiplier). - Assessor used non-comparable sales. - Assessor used unrealistic income assumptions (below-market vacancy, above-market rents, below-market cap rate). - Each error becomes a specific appeal point. ### Step 6: Tax Savings Calculation - Current tax liability: assessed_value x tax_rate. - Projected tax at appealed value: target_assessed_value x tax_rate. - Annual savings: current - projected. - Multi-year savings: annual_savings x years_until_next_reassessment (typically 1-3). - Present value of multi-year savings. ### Step 7: Appeal ROI Analysis - Consultant fee estimate (contingency basis): 25-40% of first-year savings. - Net benefit after fees: total_savings - consultant_fees. - Self-file option: compare time cost vs. consultant fee. - Probability-weighted expected value. ### Step 8: Appeal Recommendation - **APPEAL**: Overassessment > 10%, strong evidence from 2+ approaches, ROI positive after fees. - **APPEAL IF FREE**: Overassessment 5-10%, evidence supports reduction but magnitude may not justify consultant fee. Self-file if permitted. - **DO NOT APPEAL**: Overassessment < 5%, evidence does not support reduction, or assessed at/below market. ### Step 9: Draft Appeal Brief - Opening: property description, assessed value, claimed market value. - Evidence 1: Income approach with calculations. - Evidence 2: Comparable sales grid with adjustments. - Evidence 3: Assessment errors (if any). - Conclusion: requested assessed value with supporting rationale. - Exhibits list. ## Output Format ### 1. Recommendation Banner **APPEAL** / **APPEAL IF FREE** / **DO NOT APPEAL** with one-sentence rationale and dollar savings estimate. ### 2. Assessment vs. Market Summary | Metric | Value | |---|---| | Current Assessed Value | $ | | Market Value Estimate | $ | | Overassessment | $ (%) | | Income-Indicated Value | $ | | Sales Comparison Value Range | $ - $ | | Assessor Implied Cap Rate | % | | Market Cap Rate | % | ### 3. Tax Savings Estimate | Metric | Value | |---|---| | Current Annual Tax | $ | | Tax at Appealed Value | $ | | Annual Savings | $ | | Multi-Year Savings | $ | | Consultant Fee (est.) | $ | | Net Benefit After Fees | $ | ### 4. Appeal Basis Summary Ranked list of appeal arguments by strength. ### 5. Comparable Sales Grid | Property | Sale Date | Price | SF | $/SF | Time Adj | Location Adj | Size Adj | Condition Adj | Adjusted $/SF | |---|---|---|---|---|---|---|---|---|---| ### 6. Income Approach Detail NOI breakdown, cap rate source, indicated value, sensitivity at +/- 50 bps. ### 7. Assessment Errors Identified Numbered list of specific errors found. ### 8. Draft Appeal Narrative 2-3 paragraph narrative suitable for submission to appeals board. ### 9. Deadline and Filing Requirements Appeal deadline, filing method, required forms, hearing date. ## Red Flags and Failure Modes 1. **Cap rate sensitivity**: Small cap rate changes produce large value changes. Always show sensitivity at +/- 50 bps. 2. **Comparable quality**: Flag any comp requiring > 20% total adjustment. Three tight comps beat six loose ones. 3. **Conservative target**: Appeal to a value supported by evidence, not the absolute lowest. Overreaching weakens credibility. 4. **Jurisdiction variation**: Procedures, deadlines, and evidentiary standards vary significantly. User must confirm local requirements. 5. **Successful appeals may reset value for multiple years**: Calculate multi-year benefit but note jurisdiction differences on duration. ## Chain Notes | Direction | Skill | Relationship | |---|---|---| | Parallel | variance-narrative-generator | Tax savings from appeal reflected in budget variance | | Downstream | lender-compliance-certificate | Reduced tax expense improves DSCR and debt yield | | Downstream | debt-covenant-monitor | Lower taxes improve NOI and covenant metrics | | Reference | market-memo-generator | Market data and comp methodology overlap |
Related Skills
tenant-credit-analyzer
Evaluate tenant creditworthiness and concentration risk across retail, office, and industrial assets. Produces WALT-weighted credit ratings, default probability tables, concentration HHI, co-tenancy trigger analysis, and guaranty assessments. Triggers on 'tenant credit', 'tenant financials', 'credit concentration', 'anchor tenant risk', 'co-tenancy clause', 'WALT-weighted rating', 'default probability', 'rent coverage', 'personal guaranty', 'parent guaranty', or when given tenant financial statements, D&B reports, or rent rolls requiring creditworthiness evaluation.
Post-IC Property Setup
Pre-close shadow setup. Fires at IC approval (Handoff 1 in reference/connectors/_core/stack_wave4/lifecycle_handoffs.md) before the deal actually closes. Creates placeholder property in AppFolio (status: pre_acquisition), placeholder entity dim in Intacct, placeholder property_master_crosswalk + asset_crosswalk rows, reserves the canonical property_id slot, routes to compliance for legal-entity formation, secures tax-lot and assessment research, and binds pre-acquisition insurance. Terminates by passing a baton payload to acquisition_handoff at close. The workflow never promotes the placeholder to operating; that is acquisition_handoff's job. Writes proposed placeholder rows to master_data via approval-gated writes.
Monthly Property Operating Review
Monthly property scorecard and narrative. Synthesizes operating, leasing, collections, maintenance, and financial variance into a single review pack for the PM, regional, and AM. Invokes child workflows for funnel, delinquency, turn, and WO views.
Property Manager (Residential Multifamily)
Site-level operator of a middle-market multifamily property. Owns daily operations, the resident experience, the leasing and renewal funnel, maintenance triage, rent collection, and site expense discipline. Executes inside overlays defined by the segment, form factor, lifecycle, management mode, and org.
Assistant Property Manager (Residential Multifamily)
Site deputy to the property manager. Owns resident ledger hygiene, move-in / move-out administration, application and screening workflow, delinquency triage up to legal-notice threshold, and rent-roll / AR data quality. Operates under the PM's direction and within the segment / form / mode / org overlays loaded by the router.
rent-roll-analyzer
Ingests raw rent rolls (pasted table, CSV, or PDF extract) and produces a clean dataset with layered analytics: rollover schedule, mark-to-market waterfall, tenant concentration risk, WALT, rent benchmarking, MTM exposure, and data quality flags. Triggers on 'analyze this rent roll', 'clean up this rent roll', or when rent roll data needs preprocessing before underwriting.
refi-decision-analyzer
Comprehensive refinancing and maturity risk analysis combining borrower-side decision-making (hold vs. refi vs. sell vs. extend vs. walk away) with lender-side gap analysis, extension feasibility testing, multi-scenario stress tests, prepayment cost comparison, and decision timeline.
property-performance-dashboard
Produces monthly or quarterly property performance reports with T-12 trend analysis, budget variance escalation triggers, tenant health indicators, delinquency aging, same-store NOI tracking, and a hold/sell/refinance decision framework. Triggers on 'monthly report', 'performance dashboard', 'quarterly review', or 'should we hold, sell, or refi'.
pca-reserve-analyzer
Converts a Property Condition Assessment (PCA) into an underwriting-ready capital plan: immediate (Year 0) repair costs, a 10-year replacement-reserve schedule by building component, an implied per-unit-per-year (PUPY) or per-SF reserve, a reserve-adequacy gap versus the lender-underwritten reserve, prioritized diligence issues, and IC questions. Triggers on 'PCA', 'property condition assessment', 'replacement reserve', 'reserve adequacy', 'PNA', or when a property condition report needs to be turned into capital numbers.
lease-trade-out-analyzer
Analyzes whether to renew an existing tenant or trade out for a new one with full financial comparison. Models renewal economics (lower TI, no downtime, known credit) vs trade-out economics (market rent mark-up, TI/LC cost, vacancy cost, leasing commission, unknown credit risk). Produces NPV comparison with breakeven analysis.
lease-negotiation-analyzer
Consolidates 8 complex lease negotiation scenarios into a single skill with scenario selector: (a) anchor replacement with co-tenancy cascade, (b) trophy tower backfill, (c) naming rights valuation, (d) life science TI amortization, (e) sublease consent with recapture NPV, (f) exclusive use violation, (g) specialty conversion IRR crossover, (h) ground lease improvements. Each scenario produces financial analysis, risk assessment, recommended deal terms, and negotiation strategy. Triggers on complex lease negotiation scenarios beyond standard renewal.
land-residual-hbu-analyzer
Determines the maximum supportable land price by computing residual land value across multiple use types and selecting highest-and-best-use (HBU). Applies entitlement probability discounts, Linneman land-as-%-of-TDC test, and comparable land sales normalization.