Skip to content

Financial Attributes

These attributes capture all financial aspects of a property, including pricing, taxes, insurance, and investment metrics.

  • Type: DOUBLE
  • Description: Current listing price (legacy field, prefer price_current)
  • Example: 750000.0
  • Required: No
  • Note: Use price_current for new code
  • Type: BIGINT
  • Description: Current listing price in smallest currency unit (e.g., cents for USD)
  • Example: 75000000 (represents $750,000.00)
  • Required: No
  • Indexed: Yes
  • Use Case: Primary price field for filtering and sorting
  • Type: BIGINT
  • Description: Original listing price when first listed
  • Example: 80000000
  • Required: No
  • Use Case: Track price reductions
  • Type: DOUBLE
  • Description: Price per square meter (calculated: price_current / square_meters_total)
  • Example: 5000.0
  • Required: No
  • Use Case: Compare property values per unit area
  • Type: VARCHAR(10)
  • Description: ISO 4217 currency code
  • Examples: "USD", "EUR", "GBP", "AUD", "NZD"
  • Example: "USD"
  • Required: No
  • Use Case: Multi-currency support
  • Type: TEXT
  • Description: JSON array of price changes over time
  • Example: [{"date":"2024-01-01","price":800000},{"date":"2024-02-01","price":750000}]
  • Required: No
  • Use Case: Track price trends
  • Type: DOUBLE
  • Description: Annual property tax amount
  • Example: 8500.0
  • Required: No
  • Unit: Local currency
  • Type: INT
  • Description: Tax year for which taxes_annual applies
  • Example: 2024
  • Required: No
  • Type: DOUBLE
  • Description: Assessed value for tax purposes
  • Example: 650000.0
  • Required: No
  • Use Case: Compare assessed value to market value
  • Type: BOOLEAN
  • Description: Whether property qualifies for homestead exemption
  • Example: true
  • Required: No
  • Note: Reduces taxable value in some jurisdictions
  • Type: DOUBLE
  • Description: Estimated annual insurance cost
  • Example: 2400.0
  • Required: No
  • Unit: Local currency
  • Type: BOOLEAN
  • Description: Whether flood insurance is required
  • Example: true
  • Required: No
  • Use Case: Cost estimation for buyers
  • Type: BIGINT
  • Description: Estimated market value (may differ from listing price)
  • Example: 78000000
  • Required: No
  • Use Case: Investment analysis
  • Type: DOUBLE
  • Description: Estimated value per square meter
  • Example: 5200.0
  • Required: No
  • Type: DOUBLE
  • Description: One-year price appreciation percentage
  • Example: 5.2
  • Required: No
  • Unit: Percentage (e.g., 5.2 = 5.2%)
  • Type: DOUBLE
  • Description: Five-year price appreciation percentage
  • Example: 18.5
  • Required: No
  • Type: DOUBLE
  • Description: Ten-year price appreciation percentage
  • Example: 42.3
  • Required: No
  • Type: DOUBLE
  • Description: Estimated monthly rental income
  • Example: 3500.0
  • Required: No
  • Use Case: Investment property analysis
  • Type: DOUBLE
  • Description: Annual rental yield percentage
  • Example: 5.6
  • Required: No
  • Calculation: (rental_estimate_monthly * 12) / price_current * 100
SELECT * FROM properties
WHERE price_current BETWEEN 50000000 AND 100000000
AND status = 'active';
SELECT
id,
price_current,
square_meters_total,
price_current / square_meters_total AS calculated_price_per_sqm,
price_per_sqm
FROM properties
WHERE square_meters_total > 0;
SELECT * FROM properties
WHERE rental_yield_annual_pct >= 6.0
AND property_use = 'investment'
ORDER BY rental_yield_annual_pct DESC;
SELECT
id,
price_current,
price_original,
price_original - price_current AS price_reduction
FROM properties
WHERE price_original > price_current
AND status = 'active';
SELECT
id,
price_current,
market_value_estimated,
(market_value_estimated - price_current) / price_current * 100 AS discount_pct
FROM properties
WHERE market_value_estimated > 0
ORDER BY discount_pct DESC;
  1. Always use price_current: Prefer this over price for new code
  2. Store prices as integers: Use smallest currency unit (cents) to avoid floating-point errors
  3. Set currency: Always specify currency for multi-market support
  4. Calculate price_per_sqm: Useful for comparing properties of different sizes
  5. Track price_history: Maintain price change history for analytics