Blog published in Buying property abroad

How to compare real estate prices across European countries: data sources and methodology

Learn how to compare European real estate prices using Eurostat HPI, OECD ratios, ECB rates, and PPP indices. A step-by-step guide for international buyers.

How to compare real estate prices across European countries: data sources and methodology

When an international buyer asks "which European country is cheapest to buy property in?", they rarely get a useful answer. Price-per-m² figures are quoted from different sources, measured on different dates, and composed of entirely different dwelling mixes. A €2,500/m² figure in Portugal might include new-build apartments in Lisbon, while a €2,800/m² number for Poland might reflect existing houses in regional cities. The comparison is meaningless before a single calculation has been done.

What you actually need are three distinct things: comparable price levels expressed in a common unit, comparable price trend lines measured by the same methodology over time, and an affordability pressure signal that adjusts for local incomes, rents, and borrowing costs. This guide gives you the exact datasets, dataset codes, normalization steps, and a repeatable workflow to get all three, then translates the results into a buying decision.

Why raw listings mislead across borders

Listing portals aggregate asking prices in different ways. Some include new builds; some don't. Some weight by transaction volume; many don't weight at all. Currencies differ outside the eurozone. Reporting dates rarely align. And in countries where Eurostat notes that house sales statistics are voluntary from Member States (meaning coverage and comparability vary by country), even transaction-based indices carry gaps.

The practical consequence: a chart showing Spain at "€1,800/m²" and Germany at "€3,600/m²" doesn't tell you whether Germany is 2x more expensive in any durable, structural sense. It may simply reflect that German data over-represents urban apartments or a recent quarter with strong activity. The remedy is harmonized indices, not better-looking aggregators.

Authoritative data sources for comparing European housing markets

Six sources give you everything needed for a rigorous, reproducible cross-country comparison.

Eurostat House Price Index (HPI), dataset code

prc_hpi_q

This is the primary harmonized source for price trend data. Updated quarterly, the Eurostat HPI tracks price changes of residential properties purchased by households across EU member states. Because it uses the same methodology across countries, it's the correct tool for comparing whether prices have risen faster in the Netherlands than in Italy over the past five years. Access it directly at the Eurostat Data Browser using the dataset code

prc_hpi_q

.

Eurostat Owner-Occupied Housing Price Index (OOHPI), dataset code

prc_hpi_ooq

The OOHPI takes the owner-occupier perspective: it measures costs associated with living in and owning a home, including self-build and own-account work. When you're buying for personal use rather than investment, this index captures your cost exposure more accurately than the standard HPI. Eurostat's Statistics Explained page documents both the HPI and OOHPI distinction clearly.

Eurostat house sales statistics Transaction volume data (where available) tells you whether a market is hot or cooling, useful context for interpreting price trends. Note that submission is voluntary from EU Member States, so coverage is uneven. Don't treat a missing country as having zero transactions.

OECD Analytical House Price Indicators Available via the OECD Data Explorer, this dataset includes nominal and real house price indices alongside price-to-income and price-to-rent ratios in a consistent cross-country framework. The price-to-income ratio shows valuation relative to household purchasing power; the price-to-rent ratio shows whether buying is expensive relative to the cost of renting the same asset. Both are indispensable for distinguishing "prices have risen" from "prices are stretched."

IMF Global Housing Watch (via World Bank Open Data portal) The IMF Global Housing Watch dataset, accessible through the World Bank's Open Data portal, provides house price-to-income and house price-to-rent metrics that complement the OECD series and extend coverage to non-OECD European markets. Use this source to cross-check valuation ratios, especially for emerging EU markets.

ECB MFI interest rates The European Central Bank publishes MFI (Monetary Financial Institution) interest rates via the ECB Data Portal under the "MFI interest rates" section. These rates cover new business loans to households for house purchase across the euro area. Adding this layer to your comparison answers a critical question: how much of the price level is being supported by cheap borrowing, and what happens if rates stay elevated?

Eurostat Purchasing Power Parities (PPPs) and Price Level Indices Eurostat's PPP database, including Price Level Indices (PLIs) expressed relative to the EU-27 average (EU-27 = 100), lets you normalize price levels across countries with different cost structures. This goes beyond FX conversion: a property in Romania priced at €80,000 may represent a greater real burden on a local buyer than a €200,000 property in France represents to a French buyer, once you account for income levels and the general price level.

For context, institutional reports like the Deloitte Property Index and the Knight Frank Global House Price Index provide readable country narratives, but neither publishes the underlying dataset codes or normalization methodology on-page. They're useful for broad orientation, not reproducible analysis.

Key metrics and what each one actually measures

Price per m² is the most quoted figure and the least reliable for cross-country comparison. It's sensitive to the property mix in the sample (new vs. existing; apartment vs. detached house), the geographic coverage (national average vs. capital city), and the data collection method. Use it for rough orientation within a single market, not across borders.

HPI / OOHPI (index values) measure change, not levels. An HPI of 140 (base year = 100) means prices have risen 40% from the base period. Two countries can both show an HPI of 140 while one is objectively far more expensive than the other in absolute terms. The value of indices is comparing growth rates and trend shapes, not price levels directly.

Price-to-income ratio tells you how many years of gross household income a median-priced dwelling costs. When this ratio rises significantly above its long-run average, the market is considered stretched relative to purchasing power. The OECD publishes this as an index relative to a long-run average (100 = historical norm).

Price-to-rent ratio compares the cost of buying versus renting the same property. A high ratio means buying is expensive relative to renting; a low ratio suggests buying may be better value. Again, the OECD series expresses this as an index relative to its historical average.

Gross rental yield (annual rent / purchase price) gives you a simple return metric, but it's incomparable across countries without adjusting for local tax treatment, vacancy rates, rental regulation, and holiday-home rules. A 7% gross yield in one country may net 4% after local property taxes and rent-regulation constraints; a 4.5% yield elsewhere may net 3.8% under a simpler regime. Always separate the raw number from the local operating context.

Transaction costs and taxes are decision multipliers. In some European markets, total buyer-side transaction costs (transfer tax, notary fees, agency commission, registration) run below 3% of purchase price. In others, they exceed 10%. That gap directly affects your minimum holding period to break even and your effective entry price. This is one area where country-specific buying property abroad guides are essential supplements to the index data.

Normalizing the data: currency, PPP, and date alignment

Three normalization decisions shape every cross-country comparison.

Currency conversion vs. PPP. For countries outside the euro area (Sweden, Norway, Denmark, Poland, Czech Republic, Hungary), a simple FX conversion gives you a price in euros, but it doesn't tell you whether that property is affordable relative to local incomes and costs. PPP conversion is better when you want to answer "how does the real burden of this purchase compare across countries?" FX conversion is better when you're wiring euros from abroad and want to know the nominal outlay.

PPP and Price Level Indices. Eurostat's PLIs express the price level of each country relative to the EU-27 average. A PLI of 65 means that country's general price level is 35% below the EU average; a PLI of 120 means it's 20% above. Dividing a property price by the PLI (and then adjusting back to a common base) converts it to a purchasing-power-adjusted figure. This is particularly valuable when comparing affordability in Central and Eastern Europe against Western Europe, where nominal price gaps are large but so are income and cost-of-living gaps.

Date alignment. Eurostat HPI data is quarterly; OECD ratios are often annual; ECB rates are monthly. Choose a common reporting period (typically the most recent complete calendar quarter or year for which all three sources have data) and use end-of-period values. Mixing Q3 data from one source with Q1 data from another introduces noise that looks like signal.

Index base year alignment. Different Eurostat HPI series may use different base years. Before charting multiple countries together, re-index all series to a common base period (e.g., Q1 2015 = 100 or Q1 2020 = 100) by dividing each value by the index value at your chosen base period and multiplying by 100. This lets you see relative growth from the same starting point.

Step-by-step comparison method

This four-step workflow is reproducible for any pair or group of European countries.

Step 1: Define your comparison unit. Decide whether you're comparing price trends (use HPI/OOHPI), affordability pressure (use OECD price-to-income and price-to-rent ratios), or both. If both, you'll build two separate chart layers and read them together.

Step 2: Download the series. Pull the Eurostat HPI (

prc_hpi_q

) for your target countries, selecting "total" dwelling type and "purchasing" transaction type. Download the OECD price-to-income and price-to-rent indices from the OECD Data Explorer. Pull the relevant ECB MFI rate series for euro-area countries. For non-euro countries, note the Eurostat PPP/PLI for the most recent year available.

Step 3: Normalize and align. Re-index all HPI series to a common base quarter. Convert non-euro prices to euros using either FX or PPP depending on your analysis goal (document which you chose). Resample all series to the same frequency (annual is safest if OECD ratios are your primary source).

Step 4: Build three chart views. (a) A normalized price index chart showing HPI growth from the base period for all countries. (b) An affordability ratio chart showing price-to-income and/or price-to-rent indices relative to their historical averages. (c) A financing cost chart showing ECB MFI rates for euro-area countries alongside the index data, so you can see where rate cycles and price cycles interact.

Worked example: Portugal, Germany, and Poland

These three markets illustrate how different narratives can emerge even when headline growth looks similar.

Portugal (HPI trend: strong growth post-2017, moderate since 2022) shows a price-to-income ratio that, according to OECD data, moved substantially above its long-run average over the same period. Financing costs in the euro area rose sharply from 2022, compressing demand. The combined signal: prices rose fast, affordability stretched significantly, and recent rate increases added headwind. A buyer looking at buying property in Portugal needs to weigh that stretched valuation against a resilient tourism rental market.

Germany (HPI trend: rapid growth 2017-2022, correction from 2022) shows a price-to-income ratio that reached historically high levels by 2022 and has since partially corrected. ECB rate rises hit German mortgage markets hard given the prevalence of shorter fixed-rate periods. The signal: nominal prices fell from peak but affordability pressure, while easing, remains elevated relative to historical norms.

Poland (HPI trend: strong nominal growth) requires PPP adjustment to interpret correctly. In euro terms, Warsaw prices look modest compared to Munich or Lisbon. In PPP-adjusted terms, relative to Polish income levels, affordability pressure is more significant than the nominal comparison suggests. Poland is also outside the euro area, so ECB rates don't apply directly, Polish National Bank rates and zloty FX movements need separate tracking.

Three countries, similar HPI growth rates over a five-year window. Three completely different buyer risk profiles. That's why the multi-metric approach exists.

How to interpret trend lines and growth rates

Real vs. nominal growth. An HPI rise of 30% during a period of 20% cumulative inflation represents real price growth of roughly 8-9%. A country with a 30% HPI rise and 30% inflation has experienced no real appreciation. When assessing whether a market has genuinely outperformed, divide the nominal HPI by a price deflator (Eurostat's HICP works well) to get real house price growth.

Seasonality and moving averages. Quarterly HPI data carries seasonal patterns, particularly in tourist-heavy markets (Spain, France, Croatia). A four-quarter moving average smooths these out and gives a cleaner trend. Don't call a one-quarter dip a turning point.

Year-on-year vs. quarter-on-quarter growth rates. YoY rates are less volatile but react slowly to turning points. QoQ rates detect turns earlier but generate more false signals. Use both: QoQ to spot inflections, YoY to confirm trend. Be aware that if prices fell sharply in one quarter a year ago, the base effect will produce a high YoY number this quarter even if the market is flat. Cross-check with the level of the index, not just the growth rate.

Signal combinations. The most useful interpretive framework stacks three signals:

  • Price trend rising + price-to-income above long-run average + mortgage rates rising = stretched market, high entry risk
  • Price trend flat/falling + price-to-income near historical average + mortgage rates stabilizing = neutral market, buyer has negotiating room
  • Price trend rising + price-to-income below long-run average + mortgage rates moderate = supported market, growth justified by fundamentals

Not every market fits neatly. The point is to read the combination, not any single indicator.

Common caveats and data limits

National averages hide local markets. A country's HPI is an average across all regions. France's national figure blends Paris (one of Europe's most expensive urban markets), the Côte d'Azur, and deeply rural departments where France is one of the most affordable places for a vacation home by any metric. Aggregate indices are for directional comparison; local price data from regional registries or specialized platforms is needed for property-level decisions.

Voluntary reporting gaps. Eurostat house sales statistics are voluntary from Member States. Several countries have incomplete or delayed submissions. Where transaction volume data is missing, interpret the price index with more caution, you can't distinguish a falling-price market with normal volume from a falling-price market with frozen transactions.

HPI vs. OOHPI scope. The standard HPI covers all household purchases, including buy-to-let. The OOHPI focuses on owner-occupied transactions. For an international buyer buying a second home that they'll personally use, the OOHPI is conceptually closer to your situation. Where both series exist, compare them, significant divergence between HPI and OOHPI can indicate that investor activity is driving a portion of the price signal.

Rental yield comparability. Gross yields are calculable from public data. Net yields are not, because they depend on local property tax rates, rental income tax treatment, allowable deductions, rent regulation regimes (which vary dramatically across Europe), and holiday-rental licensing rules. Never compare net yields across countries without sourcing the full tax and regulatory context for each jurisdiction individually.

Practical checklist for buyers

Before running any comparison, define your goal clearly. A second home for personal use, a long-term rental investment, and a short-term holiday rental have different optimal markets even when looking at the same country. Your time horizon matters too: if you plan to sell within five years, transaction costs (which can exceed 10% of price in some markets) and any correction risk from stretched valuations weigh far more heavily than if you're holding for 15+ years.

Use a two-layer decision process:

  1. Market layer. Where does the country sit on the three signal combinations described above? Is valuation stretched or supported? Is the trend accelerating or decelerating? This layer filters your shortlist.

  2. Deal math layer. Once you have a shortlist, run the actual numbers: purchase price + transaction costs + annual holding costs (property tax, maintenance, insurance) versus expected gross yield, minus tax on rental income, minus vacancy. Does the net return justify the entry cost and the opportunity cost of capital? This is where country-specific expertise, from local solicitors and tax advisors to platforms with deep cross-country inventory and local market context like Homestra, adds concrete value.

Questions to ask before trusting any ranking or comparison video:

  • What is the data source, and is it reproducible? (If the methodology is behind a paywall, you can't verify it.)
  • Are prices normalized for purchasing power or just converted at spot FX?
  • Is the HPI series re-indexed to a common base year, or are raw index values being compared across countries with different base years?
  • Does the yield figure cited account for local taxes and regulatory costs, or is it gross yield only?
  • Is the national figure being used to make a city-level claim?

The best cross-country comparisons answer all five questions transparently. Most don't answer any.

CSV schema for reproducible data collection

To keep your comparison auditable and updatable, structure your data with these columns:

ColumnDescription

country_code

ISO 3166-1 alpha-2 (e.g., DE, PT, PL)

metric

Series name (e.g., HPI_total, price_to_income, ECB_MFI_rate)

frequency

Q (quarterly) or A (annual)

period

ISO date of observation end (e.g., 2024-Q4, 2024)

base_period

Base period used for index normalization (e.g., 2015-Q1)

value

Numeric value

source_url

Direct URL to the dataset or download page

series_code

Official series code (e.g., prc_hpi_q, MIR.M.U2.B.A2C.AM.R.A.2250.EUR.N)

methodology_notes

Filters applied, version date, any adjustments made

Include a methodology notes row at the top of your spreadsheet documenting the download date, the base period you applied, the currency conversion method used (FX or PPP), and the Eurostat/OECD/ECB series codes. When you update the data next quarter, the notes tell you exactly which series to re-pull.

Building this kind of structured, transparent comparison takes time, but it's the only approach that holds up to scrutiny when a significant purchase decision is riding on the numbers. What you should consider before buying a property abroad goes well beyond the headline price trend, and this workflow gives you the foundation to evaluate every relevant dimension with the same rigor you'd apply to any major financial decision.

Share

Read more articles