Help us improve
Share bugs, ideas, or general feedback.
From appraisal-valuation
Constructs comparable sales adjustment grids, quantifies adjustments via paired sales or hedonic regression, validates gross/net adjustment limits, and reconciles adjusted sale prices for sales comparison appraisals.
npx claudepluginhub reggiechan74/vp-real-estate --plugin appraisal-valuationHow this skill is triggered — by the user, by Claude, or both
Slash command
/appraisal-valuation:comparable-sales-adjustment-methodologyThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
**When users need to perform comparable sales calculations, use the Python calculator in the Comparable_Sales_Analysis directory.**
scripts/Comparable_Sales_Analysis/README.mdscripts/Comparable_Sales_Analysis/__init__.pyscripts/Comparable_Sales_Analysis/adjustments/__init__.pyscripts/Comparable_Sales_Analysis/adjustments/building_general.pyscripts/Comparable_Sales_Analysis/adjustments/industrial_building.pyscripts/Comparable_Sales_Analysis/adjustments/land.pyscripts/Comparable_Sales_Analysis/adjustments/office_building.pyscripts/Comparable_Sales_Analysis/adjustments/parameter_mapping.pyscripts/Comparable_Sales_Analysis/adjustments/site.pyscripts/Comparable_Sales_Analysis/adjustments/special_features.pyscripts/Comparable_Sales_Analysis/adjustments/validation.pyscripts/Comparable_Sales_Analysis/adjustments/zoning_legal.pyscripts/Comparable_Sales_Analysis/comparable_sales_calculator.pyscripts/Comparable_Sales_Analysis/docs/SCHEMA_DOCUMENTATION.mdscripts/Comparable_Sales_Analysis/paired_sales_analyzer.pyscripts/Comparable_Sales_Analysis/sample_inputs/sample_industrial_comps.jsonscripts/Comparable_Sales_Analysis/sample_inputs/sample_industrial_comps_ENHANCED.jsonscripts/Comparable_Sales_Analysis/sample_inputs/sample_industrial_comps_tight.jsonscripts/Comparable_Sales_Analysis/sample_inputs/sample_industrial_comps_unified.jsonscripts/Comparable_Sales_Analysis/sample_inputs/sample_industrial_rail_yard.jsonProduces rent and sales comparable analyses for CRE properties with adjustment grids, confidence scoring, effective rent calculations, replacement cost anchors, and assumption validation for deals, appraisals, and pricing.
Valuates land via income approach: capitalizes market rent for telecom ground leases, agricultural land, ground leases, and easements. Includes cap rate selection.
Appraises real estate for auctions using ABNT NBR 14653 standards: market value, forced liquidation, comparative/income/cost methods, CUB, and safety margins.
Share bugs, ideas, or general feedback.
When users need to perform comparable sales calculations, use the Python calculator in the Comparable_Sales_Analysis directory.
Location: ${CLAUDE_PLUGIN_ROOT}/skills/comparable-sales-adjustment-methodology/scripts/Comparable_Sales_Analysis/
Main Files:
comparable_sales_calculator.py - Main calculator with adjustment grid constructionpaired_sales_analyzer.py - Paired sales analysis toolvalidate_comparables.py - Input validation utilityadjustments/ - Modular adjustment calculations by categoryCapabilities:
JSON structure (see sample_inputs/sample_industrial_comps.json or sample_inputs/sample_industrial_comps_ENHANCED.json in the Comparable_Sales_Analysis directory for complete examples):
{
"subject_property": {
"property_rights": "fee_simple",
"property_type": "industrial",
"lot_size_acres": 10.0,
"building_sf": 50000,
"clear_height_feet": 32,
"loading_docks_dock_high": 6,
"condition": "good"
},
"comparable_sales": [
{
"address": "123 Industrial Way",
"sale_price": 4500000,
"sale_date": "2024-03-15",
"lot_size_acres": 8.0,
"building_sf": 45000,
"clear_height_feet": 28
}
],
"market_parameters": {
"cap_rate": 7.0,
"appreciation_rate_annual": 3.5,
"valuation_date": "2025-01-15",
"lot_adjustment_per_acre": 15000,
"building_size_adjustment_per_sf": 2.0,
"clear_height_value_per_foot_per_sf": 1.5
}
}
Command-line:
cd ${CLAUDE_PLUGIN_ROOT}/skills/comparable-sales-adjustment-methodology/scripts/Comparable_Sales_Analysis/
python comparable_sales_calculator.py sample_inputs/sample_industrial_comps.json --output results.json --verbose
When assisting users:
JSON output includes:
adjustment_stages: Sequential adjustments (1-6)all_adjustments: Detailed list of 49 physical characteristic adjustmentsadjustments_by_category: Grouped by Land, Site, Industrial, Office, etc.validation: Gross/net adjustment percentages, status (ACCEPTABLE/CAUTION/REJECT)weighting: Statistical weight based on adjustment magnitudeLocated in Comparable_Sales_Analysis/sample_inputs/:
sample_industrial_comps.json: Original format (backward compatible)sample_industrial_comps_ENHANCED.json: Enhanced format with all 49 adjustment fieldssample_office_class_a.json, sample_office_class_b.json, sample_office_class_c.json: Office property examplesUnit tested (17 tests, 100% passing):
Adjustments must be applied in proper sequence because some adjustments affect the base from which subsequent adjustments are calculated.
1. Property Rights
Example:
2. Financing Terms
Example:
3. Conditions of Sale
Example:
4. Market Conditions/Time
Example:
5. Location
Example:
6. Physical Characteristics
Size adjustment example:
Final adjusted sale price: $797,000 (compared to subject property)
Multiple methodologies for deriving adjustment amounts, applied based on data availability and adjustment type.
Principle: Identify two sales that differ in only ONE characteristic, isolate the value impact of that characteristic.
Ideal paired sales criteria:
Example (size adjustment):
Sale A:
Sale B:
Analysis:
Application to subject comparable:
Example (highway frontage adjustment):
Sale C:
Sale D:
Analysis:
Principle: Use multiple regression to isolate value contribution of multiple characteristics simultaneously when sufficient sales data available (typically 20+ transactions).
Regression model:
Linear model: Price = β₀ + β₁(Acres) + β₂(Highway Frontage) + β₃(Servicing) + β₄(Zoning) + β₅(Age) + ε
Variables:
Example output (industrial land sales regression):
| Variable | Coefficient (β) | Std Error | t-stat | p-value |
|---|---|---|---|---|
| Constant (β₀) | $250,000 | $45,000 | 5.56 | <0.001 |
| Acres (β₁) | $95,000 | $8,000 | 11.88 | <0.001 |
| Highway Frontage (β₂) | $180,000 | $35,000 | 5.14 | <0.001 |
| Servicing (β₃) | $120,000 | $28,000 | 4.29 | 0.002 |
| Zoning (β₄) | $60,000 | $20,000 | 3.00 | 0.008 |
Model fit: R² = 0.84 (model explains 84% of price variation)
Interpretation:
Application to comparables:
Comparable sale:
Adjustment derivation:
Principle: Quantify adjustment based on cost to add/remove characteristic, less depreciation.
Use cases:
Example (building adjustment):
Subject: Vacant industrial land Comparable: Industrial land with 5,000 sq ft warehouse (built 2015, good condition)
Replacement cost analysis:
Example (superior finishes):
Subject: Office building, standard finishes (carpet, drywall, drop ceiling) Comparable: Office building, upgraded finishes (hardwood, millwork, high ceilings)
Cost differential:
Principle: Quantify adjustment based on income differential capitalized to value.
Use cases:
Example (location adjustment for investment property):
Subject: Industrial building, Location A, achievable rent $12/sq ft Comparable: Industrial building, Location B, achievable rent $10/sq ft
Rental differential:
Example (vacancy adjustment):
Subject: 100% leased industrial building Comparable: 60% vacant industrial building (requires lease-up)
Lease-up cost and delay:
Principle: Apply reasoned judgment when paired sales, regression, cost, or income methods unavailable or unreliable.
Requirements for defensible judgment:
Example (unique property characteristic):
Subject: Industrial land with rail spur (active connection) Comparable: Industrial land without rail access
Analysis:
Documentation: "Rail spur adjustment of $300,000 derived from depreciated replacement cost ($280,000) and market interviews indicating 5-10% premium. Comparable sale price $3.2M × 8% = $256,000 to $320,000 range. Adopted $300,000 as midpoint, supported by cost approach."
Testing adjustment grids for reasonableness and reliability before forming value conclusion.
Principle: Total absolute adjustments should not exceed reasonable limits, or comparable may not be truly comparable.
Industry guidelines:
Example:
Comparable Sale: $1,500,000
| Adjustment | Amount | % |
|---|---|---|
| Financing | -$50,000 | -3.3% |
| Time | +$75,000 | +5.0% |
| Location | +$150,000 | +10.0% |
| Size | -$30,000 | -2.0% |
| Servicing | +$60,000 | +4.0% |
| Condition | -$25,000 | -1.7% |
| Net adjustment | +$180,000 | +12.0% |
| Gross adjustment | $390,000 | 26.0% |
Analysis:
Gross adjustment calculation: Gross = |−$50K| + |+$75K| + |+$150K| + |−$30K| + |+$60K| + |−$25K| = $390,000 Gross % = $390,000 ÷ $1,500,000 = 26.0%
Principle: Net adjustments (sum of positive and negative) should be consistent across comparable sales.
Consistency test:
Ideal pattern:
Example (good bracketing):
| Comp | Sale Price | Net Adj | Adj % | Adjusted Price | $/Acre |
|---|---|---|---|---|---|
| 1 | $1,200,000 | +$120,000 | +10% | $1,320,000 | $132,000 |
| 2 | $1,450,000 | -$90,000 | -6% | $1,360,000 | $136,000 |
| 3 | $1,320,000 | +$45,000 | +3% | $1,365,000 | $136,500 |
| 4 | $1,550,000 | -$180,000 | -12% | $1,370,000 | $137,000 |
Analysis:
Example (poor pattern - all inferior):
| Comp | Sale Price | Net Adj | Adj % | Adjusted Price |
|---|---|---|---|---|
| 1 | $900,000 | +$350,000 | +39% | $1,250,000 |
| 2 | $1,050,000 | +$280,000 | +27% | $1,330,000 |
| 3 | $980,000 | +$310,000 | +32% | $1,290,000 |
Analysis:
Principle: When using regression to derive adjustments, validate model fit and coefficient reliability.
R-squared (Coefficient of Determination):
Coefficient significance (p-value):
Example regression output:
| Variable | Coefficient | p-value | Interpretation |
|---|---|---|---|
| Acres | $95,000 | <0.001 | Highly significant (use) |
| Highway Frontage | $180,000 | 0.002 | Significant (use) |
| Servicing | $120,000 | 0.015 | Significant (use) |
| Zoning | $60,000 | 0.085 | Marginally significant (use with caution) |
| Age | -$5,000 | 0.420 | Not significant (exclude) |
Model R² = 0.82 (good fit, 82% of price variation explained)
Validation:
Principle: Test how variations in key adjustments impact value conclusion to assess reliability.
Methodology:
Example:
Base scenario (highway frontage adjustment = $30,000/acre):
Sensitivity test (highway frontage adjustment varied ±25%):
| Scenario | Frontage Adj | Comp 1 | Comp 2 | Comp 3 | Reconciled |
|---|---|---|---|---|---|
| Low (-25%) | $22,500/acre | $142,500 | $145,500 | $143,500 | $143,833 (+5.8%) |
| Base | $30,000/acre | $135,000 | $138,000 | $136,000 | $136,000 |
| High (+25%) | $37,500/acre | $127,500 | $130,500 | $128,500 | $128,167 (-5.8%) |
Analysis:
Alternative if highly sensitive (e.g., ±25% adjustment → ±15% value):