Transparency

How our metrics work

Every property on Terrasolana comes with four data points: gross yield, net yield, price vs. market, and opportunity score. Here's exactly how we calculate each one — and what the numbers mean.

📊

Gross Yield

Gross yield is the simplest measure of rental return — annual rental income as a percentage of purchase price, before any costs.

Gross Yield = (Estimated Monthly Rent × 12) ÷ Purchase Price × 100
e.g. €900/mo rent × 12 = €10,800 ÷ €80,000 price = 13.5%

Rental estimates are derived from city-level rental market benchmarks, calibrated by property size, type, and neighbourhood. We use the local median rent per m² for the relevant city and property category — not a fixed national figure.

What's a good gross yield? In Spain, residential properties typically yield 3–5% gross in prime coastal and urban locations. Properties above 7% are considered strong investment-grade. Above 10% usually reflects either exceptional value or a location with higher vacancy risk — always verify locally.
💶

Net Yield (Estimated)

Net yield deducts estimated annual ownership costs from the rental income before calculating the return. It's a more realistic picture of what you actually pocket.

Annual Costs ≈ IBI (property tax) + community fees + insurance + maintenance
Net Yield = (Annual Rent − Annual Costs) ÷ Purchase Price × 100
Typical cost deduction: 25–35% of gross rent depending on property type

We apply a cost model based on Spanish norms: IBI is estimated at 0.4–1.1% of cadastral value (approximated from purchase price), community fees at €50–150/month, insurance at ~€300/year, and maintenance at 1% of purchase price annually.

This is an estimate, not a guarantee. Actual costs vary significantly by municipality, building age, and management approach. Use net yield as a comparative signal, not a precise forecast.

📍

Price vs. Market

This metric shows how the listing's price per m² compares to the city-wide median price per m² for the same property category. It tells you whether a property is cheap or expensive relative to its market.

Price vs. Market = ((Listing Price/m²) − (City Median Price/m²)) ÷ (City Median Price/m²) × 100
Negative = below median (potentially underpriced)
Positive = above median (potentially overpriced)

City median benchmarks are updated periodically from publicly available Spanish property market data (INE, Tinsa, Idealista market reports). They represent the median for residential properties in the same general city zone.

A listing at −25% vs. market is priced 25% below the city median per m² — a strong signal of value. A listing at +30% vs. market is priced 30% above median — and may be harder to exit or let at a premium.

Example: Madrid flat, 70m²
Listing price per m²€3,250
Madrid median per m²€4,200
Price vs. Market−22.6%
Interpretation22.6% below market — below median, potential negotiation upside
🎯

Opportunity Score (0–100)

The opportunity score is our composite signal — a single number that combines yield, pricing, and market momentum into one investment-quality indicator. Higher is better.

ComponentWeightWhat it measures
Gross Yield 40% Higher yield = higher score. Anchored to the city's yield distribution — 7%+ scores near maximum.
Price vs. Market 35% Properties priced below the city median score higher. A −20% discount adds significant score.
Market Momentum 25% Price drops and extended days on market signal a motivated seller and potential negotiating room.
Score = (Yield component × 0.40) + (Price component × 0.35) + (Momentum component × 0.25)
Each component normalised 0–100 within the city's distribution

Scores are calculated city by city — a score of 70 in Madrid reflects a different absolute yield than 70 in Almería, but both represent top-quartile opportunities within their respective markets.

Score bands: 70–100 = top pick (strong investment case) · 55–69 = good (above average for the city) · 40–54 = average · Below 40 = lifestyle buy or long-term hold, not pure investment play.
⚠️

Limitations & Data Sources

Our data pipeline pulls listings from Pisos.com and Idealista. Prices are as listed — not confirmed transaction prices. Rental estimates are model-derived, not guaranteed. Property condition, legal status, community debt, and local demand are not reflected in our scores.

Data is refreshed periodically. Individual listings may have been withdrawn, price-changed, or let by the time you enquire. Always verify current status directly with the agent or on the source portal.

We are not licensed estate agents or financial advisors. Terrasolana provides data intelligence to assist your research — it is not a substitute for professional due diligence, legal advice, or a survey.

Disclaimer: All metrics are estimates based on publicly available data and algorithmic models. Terrasolana makes no warranty of accuracy. Past rental yields do not guarantee future returns. Property investment carries risk including capital loss. Always seek independent professional advice before making investment decisions.
Browse properties → About Terrasolana