| name | real-estate-comping |
| description | Perform AI-powered property valuation and comparable sales analysis for real estate wholesaling. Use when the user needs to comp a property, determine ARV, analyze comparable sales, or perform property valuation. Automatically detects disclosure vs non-disclosure states and applies the appropriate methodology (standard comping for disclosure states, triangulation method for non-disclosure states like Texas). This skill focuses purely on comping — determining market value through comparable sales analysis. It does NOT estimate rehab costs or renovation budgets; those are handled separately. |
Real Estate Comping Skill
Perform appraiser-grade property valuations using the Two-Bucket method for disclosure states or the Triangulation method for non-disclosure states. This skill is strictly about comparable sales analysis and ARV determination — it does not estimate rehab costs, renovation budgets, or scope of work. If the user needs rehab cost estimation, direct them to the appropriate skill for that.
Workflow Overview
- Identify property location → Determine state from address
- Route to correct methodology → Disclosure or Non-Disclosure framework
- Execute 9-step analysis → Follow the appropriate prompt framework
- Generate deliverables → PDF summary report + Excel breakdown + comps table
State Detection & Routing
Determine state type from property address:
- Non-Disclosure States (sold prices not publicly recorded): TX, UT, WY, NM, ID, MT, ND, AK, KS, MS, LA, MO
- Disclosure States: All other US states
Routing:
- Non-disclosure state → Read
references/non-disclosure-prompt.md
- Disclosure state → Read
references/disclosure-prompt.md
Quick Reference
| Framework | States | Key Method | Price Source |
|---|
| Disclosure | Most US states | Two-Bucket (Unrenovated vs Renovated PPSF) | MLS sold prices |
| Non-Disclosure | TX, UT, WY, NM, ID, MT, ND, AK, KS, MS, LA, MO | Triangulation (LLP + DOM, Deed of Trust, Tax Ratio) | Derived estimates |
Core Comping Rules (Both Frameworks)
These rules apply regardless of disclosure status:
Comp Selection Filters
- Age: ≤90 days preferred, 6 months max
- Subdivision: Same micro-pocket, do not cross major roads
- GLA: ±100 sqft ideal, ±250 sqft outer bound
- Property type: Match elevation style (ranch↔ranch, 2-story↔2-story)
- Build year: ±10 years
Feature Adjustments (by price tier)
See references/adjustment-cheatsheet.md for complete adjustment values.
Quick reference:
| Feature | <$500k Tier | >$500k Tier |
|---|
| Bedroom | +$10k | +$25k |
| Bathroom | ±$10k | ±$10k |
| Garage | +$10-25k | +$10-25k |
| Traffic (backing) | -$10k | -10-15% |
| Traffic (fronting) | -$20k | -20% |
Basement/ADU Rules
- Basements: Not counted as GLA; value at ~50% of above-grade PPSF if finished
- ADUs: 50% value if not separately deeded; 100% if separately titled
Required Deliverables
Every comp analysis MUST produce these two outputs:
1. Excel Breakdown Workbook
Comprehensive multi-sheet workbook with:
- Executive Summary sheet: Quick-view of key findings
- Subject Property sheet: All property details
- Comparable Sales sheet: Full comps table with bucket analysis
- Adjustments Detail sheet: Line-by-line adjustment breakdown
- Market Analysis sheet: Market metrics and trends
- ARV Calculation sheet: Step-by-step ARV math
- Sources & Notes sheet: Data sources, parameters, recommendations
Generate using: scripts/generate_excel_report.py
2. In-Context Analysis
The detailed analysis text with tables shown directly in the conversation, including:
- Step-by-Step ARV Breakdown (Base PPSF → Adjustments → Final ARV)
- Comps Summary Table (Address, Sale Date, Price, GLA, Beds/Baths, Year, Condition, Adjustments, Final Adjusted Value)
- Market Overview (Median price, PPSF, DOM, sale-to-list ratio, market phase)
- Sources & Assumptions (Data sources, time window, radius constraints)
- Recommendations & Caveats (Verification steps, risk factors, disclaimer)
Output Generation Instructions
Data Structure for Report Generation
Prepare analysis data as JSON with this structure:
{
"subject_property": {
"address": "123 Main St",
"city": "Austin",
"state": "TX",
"zip": "78701",
"county": "Travis",
"subdivision": "Downtown",
"property_type": "Single Family",
"gla": 1850,
"lot_size": 6500,
"beds": 3,
"baths": 2,
"year_built": 1985,
"condition": "Dated"
},
"comps"
Generate Reports
- Save the analysis data to a JSON file
- Run the Excel generator:
python scripts/generate_excel_report.py output_report.xlsx data.json
Execution Instructions
- Gather property address from user
- Identify state and determine disclosure status
- Load appropriate framework:
- Disclosure:
references/disclosure-prompt.md
- Non-Disclosure:
references/non-disclosure-prompt.md
- Add property context (if provided): current condition, seller notes, known issues
- Optional boundary drawing: For block-by-block markets, use Zillow boundary tool
- Execute analysis following the 9-step framework
- Verify results: Cross-reference with market knowledge
- Prepare data structure: Compile all analysis into JSON format
- Generate deliverables:
- Run
generate_excel_report.py for Excel breakdown
- Deliver all outputs to user: Excel and in-context analysis
Special Considerations
Non-Disclosure State Caveats
- Wider confidence bands (±5-7% vs ±2-5%)
- Must derive sold prices using triangulation methods
- Recommend "Option Period Verification" once under contract
Market Sentiment Adjustments
- Hot market (fast pendings, >50% over list): +5-7%
- Balanced market: +3-5%
- Cool market (60+ DOM, price cuts): 0-2% or negative
Two-Bucket Spread Sanity Check
The spread between unrenovated and renovated bucket PPSF is a market-derived metric (not a rehab cost estimate). It reflects what buyers in that market are willing to pay for updated finishes.
- Typical spread: 10-30%
- <5% or >30%: Re-examine comp validity — comps may be miscategorized or the market may have unusual dynamics