Centro · Caldes de Montbui · Barcelona

Protected four-bedroom flat with terrace

€299,000 2,875 €/m²

104 m² protected flat in central Caldes de Montbui with four bedrooms, two bathrooms, a 30 m² terrace and lift. In good condition with habitability certificate pending.

Estimated monthly account

Rental income+€717/month
Mortgage 80% · 25 years · Euribor 2.86%−€1,117/month
Costs IBI, service charge, allowance · estimated−€145/month
Net cash flow −€545/month

Estimated up-front investment €92,690 · 20% deposit + 11% purchase costs

Reference 100906 · On Inmoblia since 25 August 2026 · Published by Inmobiliaria A Dins

The property

Specifications

What the advert says about the property: floor area, layout, condition and registry details.

Some advert data is uncertain

We show the source-reported value for context, but exclude it from calculations until the conflicting evidence is resolved.

Type
Flat
Built area
104 m²
Usable area
104 m²
Bedrooms
4
Bathrooms
2
Toilets
1
Terrace
30 m²
Floor
1
Condition
Good condition
Protected housing
Yes (VPO/VPP)
Energy certificate
In progress
Fittings

Fittings and extras

What the property comes with and how much each item weighs in the “Property data” sub-score.

  • Lift
  • Heating +3
  • Terrace 30 m² +5

The advert also mentions:

  • Central location
  • Nearby bus stop
  • Aluminium exterior carpentry
  • Gres flooring
  • Indicative renovation renders
  • Owner is not a large landlord

Free text we could not normalise into a comparable attribute, so it does not score.

How these values score

The verdict

What the analysis sees

The specific signals the model finds in this property and its municipality, before going into the score in detail.

In favour

  • Growing populationThe municipality has a positive net international migration balance: incoming population sustains rental demand.
  • Municipality with strong demandPopulation, income and employment sustain both letting and resale.
  • In good conditionNo renovation needed to put it on the rental market.
  • Solid market dataHigh coverage of official sources for this municipality.

Against

  • Priced above marketThe asking price exceeds what we estimate for a home of this size and type in the municipality.
  • Protected housing (VPO)Price, resale and rent are capped by law: a low price does not imply margin.
  • Rent-controlled areaMunicipality declared a tensioned market (Housing Act): rent increases are capped by law.
  • Thin rent sampleThe rent estimate comes from few comparables.
The score

How the score is built

The overall score is the weighted sum of six factors. Each row shows its contribution in points; open it to see the data behind it, and open “how it is calculated” for the sources and the step-by-step formula.

Total score (weighted sum of the six factors)48/100

Yield

34% of the score +10 pts
29
2.3%Est. net yieldAfter IBI, service charge and allowance
2.9%Gross yieldFrom the market rent
€717/monthEst. monthly rentCombines every rent source published for the municipality, weighted by its measured accuracy, and adjusts it to this property's floor area.

Estimated monthly rent

Municipal model · 2 sources
€508/monthP25
€717/monthmediana
€1,012/monthP75

Estimated from 0 comparable homes.

From gross rent to net profit

€8,604/year gross
  • NOI (net)€6,85980%
  • Est. IBI€4545%
  • Allowance€1,29115%

Actual registered rent (deposits)

Transactional data
€799/monthRegistered averageDeposit register · 2025Q4
€717/monthOur estimateRent basis used

No SERPAVI coverage and not enough comparables of our own: we adjust this municipal average for the property's floor area and type; confidence stays low.

Editable scenario

Adjust rent and occupancy
Rent level
Months let per year
Gross income
Costs
Annual NOI
Net yield

Mortgage and cash flow

What you would pay on a mortgage and what would be left each month after rent and costs. Adjust the deposit, the term and the reference Euribor.

Deposit
Term
Euribor
0.9%4.9%
Monthly payment a month
Net cash flow a month
Return on capital annual · cash-on-cash

Financing of the price () · deposit · up-front investment

Current 12M Euribor 2.86% (ECB · Jul 2026), editable with the slider (±2 pts). An indicative estimate on a French amortisation schedule; it excludes insurance and rental taxation. Monthly costs assumed: €145/month.

How this factor is calculated

It measures the estimated annual net yield: the market rent minus recurring costs (IBI, service charge and an allowance for voids, arrears and maintenance), divided by the total capital invested. Where the rent rests on few comparables, we adjust the score downward. It is the heaviest factor because it represents the real return you would earn as an investor.

The sources behind it
  • Regional deposit registerThe real average of rental contracts with a deposit lodged in the municipality. Transactional data; we divide it by the average cadastral floor area to turn it into a comparable €/m².
  • Catastro (level model)The municipality's cadastral value, corrected for its revision year and for the provincial effect. It is the only price-level signal published for almost all of Spain.
  • CatastroThe municipality's cadastral values, from which we estimate the property's annual IBI (housing only).
  • The agency's advertThe declared price, built area and service charge.
  1. We take the monthly rent estimated for the municipality by combining every source available and annualise it (× 12) to get the gross income.
  2. We deduct recurring costs: IBI estimated from the cadastral value, the service charge from the advert and an allowance of 15% (housing) on the rent for voids, arrears and maintenance. What is left is the NOI (net operating income).
  3. We divide the NOI by the capital actually invested: the price of the whole asset plus the estimated renovation cost (€600/m² when the advert states it needs renovation). That is the net yield.
  4. We turn that net yield into a 0–100 mark on a saturating curve: 3% is worth ~39 points, 5% ~57 and 9% ~78. Going from 3% to 5% adds far more than going from 12% to 14%, because the real jump in quality is larger too.
  5. We adjust for the reliability of the rent: × 1.00 when the estimate is high-confidence or the property already earns a rent, × 0.95 when it is medium, × 0.88 when it is low. That confidence comes from the measured error of the sources behind the estimate, not from how many adverts we happen to hold. An unreliable rent cannot top the ranking.
  6. We drop net yields above 15% from the score: at those levels there is almost always a data error (price on request, wrong floor area) and leaving them in would distort the whole scale.
The calculation, with this property's data
  1. Gross annual rent €717/month × 12 months €8,604/year Rent estimated for the municipality by combining every source available.
  2. Recurring costs for the year €454 IBI + 15% × €8,604 allowance €1,745/year
  3. NOI (net operating income) €8,604 − €1,745 €6,859/year
  4. Capital invested €299,000 price €299,000
  5. Net yield €6,859 ÷ €299,000 × 100 2.29%
  6. Scoring curve 100 × (1 − e^(−2,29 ÷ 6)) 31,7/100
  7. Adjustment for rent reliability 31,7 × 0,95 29/100 medium reliability on the rent used.

29/100 × 34% = +10 pts of the 100 in the overall score

Purchase value

16% of the score +8 pts
48
€299,000Price2,875 €/m²
Top 75%National percentileAgainst the homes in the catalogue

How this factor is calculated

It compares the asking price against the municipality's official appraisal (MIVAU, €/m² of open-market housing) and rewards smaller investment tickets. Buying below appraisal gives a margin of safety, and with less capital at risk the same return means less exposure.

The sources behind it
  • MIVAU · Appraised housing value€/m² of open-market housing appraisals per municipality and quarter. It is the independent check on the asking price.
  • The agency's advertAsking price, floor area and transaction type (ordinary sale, bare ownership, auction, share…).
  1. We compare the asking price per m² against the municipality's official appraisal: every percentage point below appraisal adds and every point above subtracts, at double weight, capped at ±50 on a base of 50.
  2. We measure ticket size separately in absolute terms, on a straight line: €80,000 scores ~100 and €1,200,000 scores ~0. With less capital committed, the same return means less exposure.
  3. We combine the two: 40% the appraisal comparison and 60% the ticket size.
  4. We always use the price of the whole asset, not the advert's: on the sale of a share the price is extrapolated to 100% so that half a house does not look like a cheap ticket.
  5. We apply caps when the price is not comparable with an ordinary sale: protected housing 50 (the price is set by law, not the market), bare ownership / auction / deed in lieu / leasehold transfer 40 and share sale 60. They are caps, never rewards.
The calculation, with this property's data
  1. Ticket size 100 − (€299,000 − €80,000) × 100 ÷ €1,120,000 80,4/100
  2. No official appraisal to compare against The ticket carries 100% instead of 60% 80,4/100
  3. Result min(50, 80) 48/100 Capped at 50 because of protected housing: the price is set by law.

48/100 × 16% = +8 pts of the 100 in the overall score

Municipal momentum

12% of the score +6 pts
46

Rent price index

INE · 2011 base = 100 · yearly

+2.6% interanual
122.5 20112014201820212024 103.2 · 2011103.2 · 2011100.9 · 2012100.9 · 201297.9 · 201397.9 · 201397.8 · 201497.8 · 2014100 · 2015100 · 2015101.2 · 2016101.2 · 2016103.3 · 2017103.3 · 2017104.6 · 2018104.6 · 2018108.6 · 2019108.6 · 2019109.9 · 2020109.9 · 2020112.3 · 2021112.3 · 2021115.5 · 2022115.5 · 2022119.4 · 2023119.4 · 2023122.5 · 2024122.5 · 2024

Housing transactions

MIVAU · deals per year

−0.5% interanual
203 20112015201820222025 79 · 201179 · 201171 · 201271 · 201260 · 201360 · 2013101 · 2014101 · 201492 · 201592 · 2015145 · 2016145 · 2016173 · 2017173 · 2017184 · 2018184 · 2018188 · 2019188 · 2019136 · 2020136 · 2020159 · 2021159 · 2021159 · 2022159 · 2022180 · 2023180 · 2023204 · 2024204 · 2024203 · 2025203 · 2025

Investment guide for Caldes de Montbui

How this factor is calculated

It sums up where the local market is heading from official series: the rent price index (INE) and transaction volume (MIVAU). A rising municipality better sustains the asset's value and makes a future resale easier; a cooling one costs points.

The sources behind it
  • INE · Rent price indexAn annual series per municipality, 2011 base = 100. It marks the direction of rents, which is what sustains future yield.
  • MIVAU · Housing transactionsRegistered deals per municipality and year. It marks whether the market is picking up or cooling.
  1. We take the municipality's annual official series and compute their recent change, not a single isolated year: one blip is not momentum.
  2. We combine those changes into a 0–100 index where 50 is exactly a flat market, above it is rising and below it is cooling.
  3. Where the municipality has no long enough series, we leave the factor at a neutral 50. We never penalise a municipality because the INE does not publish its series: the missing data shows up in the confidence, not in the score.
The calculation, with this property's data
  1. Registered population 50 +25 — year-on-year change ≈ +1.3% × 20 75/100
  2. Rent price index 50 +13 — year-on-year change ≈ +2.6% × 5 63/100
  3. Housing transactions Year-on-year change off the scale, clamped to the extreme 0/100
  4. Average of the 3 available series (75 + 63 + 0) ÷ 3 46/100 The other 1 series are not published for this municipality; they do not subtract, they simply stay out of the average.

46/100 × 12% = +6 pts of the 100 in the overall score

Demand

13% of the score +9 pts
69
8.4 yearsPurchase affordability
median 7.8 years years of household income to pay for the home (€35,481/year)
24%Rent burden
median 32% annual rent as a share of household income · healthy below 30%
34.8 yearsPrice / Rent (PER)
median 27 years years of rent to pay off the purchase · lower is cheaper relative to its rent
+1.3%Rent trajectory
0 = flat average annual growth of the municipal rent index (INE)
+11.5‰Net migration
median 11.9‰ arrivals minus departures from abroad per 1,000 residents · a growing population sustains demand

Registered unemployment

SEPE · yearly average

−4.0% interanual
601 20192021202320242026 827 · 2019827 · 2019947 · 2020947 · 2020879 · 2021879 · 2021728 · 2022728 · 2022702 · 2023702 · 2023687 · 2024687 · 2024626 · 2025626 · 2025601 · 2026601 · 2026

Average gross income

AEAT · annual tax return

+2.7% interanual
€35,481 20132016201820212023 €27,146 · 2013€27,146 · 2013€27,509 · 2014€27,509 · 2014€28,193 · 2015€28,193 · 2015€29,840 · 2016€29,840 · 2016€30,448 · 2017€30,448 · 2017€30,819 · 2018€30,819 · 2018€32,448 · 2019€32,448 · 2019€31,532 · 2020€31,532 · 2020€33,979 · 2021€33,979 · 2021€34,542 · 2022€34,542 · 2022€35,481 · 2023€35,481 · 2023

Registered population

INE · yearly population register

0.0% interanual
18,567 20112014201820222025 17,186 · 201117,186 · 201117,186 · 201117,186 · 201117,271 · 201217,271 · 201217,271 · 201217,271 · 201217,156 · 201317,156 · 201317,156 · 201317,156 · 201317,156 · 201417,156 · 201417,156 · 201417,156 · 201417,098 · 201517,098 · 201517,098 · 201517,098 · 201517,137 · 201617,137 · 201617,137 · 201617,137 · 201617,187 · 201717,187 · 201717,187 · 201717,187 · 201717,449 · 201817,449 · 201817,449 · 201817,449 · 201817,554 · 201917,554 · 201917,554 · 201917,554 · 201917,812 · 202017,812 · 202017,812 · 202017,812 · 202017,797 · 202117,797 · 202117,797 · 202117,797 · 202117,932 · 202217,932 · 202217,932 · 202217,932 · 202218,109 · 202318,109 · 202318,109 · 202318,109 · 202318,336 · 202418,336 · 202418,336 · 202418,336 · 202418,567 · 202518,567 · 202518,567 · 202518,567 · 2025

Net international migration

INE · immigration − emigration · yearly

+24.6% interanual
213 2021202220232024 118 · 2021118 · 2021185 · 2022185 · 2022171 · 2023171 · 2023213 · 2024213 · 2024

How this factor is calculated

It assesses the structural depth of the municipality's demand: gross household income (AEAT), the labour market (registered unemployment and contributions) and net international migration (INE). The deeper the demand base and the better the income, the easier it is to let without voids.

The sources behind it
  • SEPE · Registered unemploymentThe municipality's annual average of registered unemployed, normalised per 1,000 residents so it is comparable across municipalities of any size.
  • AEAT · Average gross incomeIncome declared per household in the municipality. It marks how much rent the area can pay without strain.
  • INE · Population register and migrationRegistered population and net international migration. A growing population sustains occupancy year after year.
  • Ministry of Housing · Rent-controlled areasThe official designation of a tensioned residential market, which activates the Housing Act's rent caps.
  1. We start from 50 points: the average Spanish municipality.
  2. Employment: (40 − unemployed per 1,000 residents) × 0.6, capped at ±20 points. A municipality with clearly low unemployment adds up to 20; one with high unemployment subtracts up to 20.
  3. Household income: (average gross income − €25,000) ÷ 1,000, capped at ±15 points. Every €1,000 of income above the national average adds one point.
  4. Migration: net international migration per 1,000 residents × 1.5, capped at ±8 points. It is the most forward-looking of the three: people arrive before income rises.
  5. Declared rent-controlled area: −5 points, because rent caps limit how far the rent can rise. This adjustment applies only to housing: the Housing Act does not cap garages, retail units or offices.
  6. Every term is null-safe: where a figure is missing we use the national average in its place, so a municipality with no coverage ends up neutral rather than penalised.
The calculation, with this property's data
  1. Base The average Spanish municipality 50
  2. Employment (40 − 31,2 unemployed per 1,000 residents) × 0.6 +5,3
  3. Household income (€35,481 − €25,000) ÷ 1,000 +10,5
  4. International migration 11,47 per 1,000 residents × 1.5 +8,0
  5. Declared rent-controlled area Housing Act rent caps −5
  6. Result 50 +5,3 +10,5 +8,0 −5 69/100

69/100 × 13% = +9 pts of the 100 in the overall score

Liquidity and risk

10% of the score +3 pts
34
1.7Market turnover
median 3.3 transactions a year per 1,000 residents · more turnover, easier to resell · 2026Q1
0.74Repossession pressure
median 0.74 urban housing repossessions per 1,000 of the provincial stock · 2025

Repossessions are a provincial figure (INE) and turnover is municipal (MIVAU). They measure the market's risk and how easily it resells, not the quality of this particular property.

How this factor is calculated

It measures how liquid and healthy the local market is: transaction turnover per resident (more turnover, easier resale) and the province's repossession pressure (a sign of stress and price risk).

The sources behind it
  • INE · Housing repossessionsRepossessions on urban housing, a quarterly provincial figure. It is the best open proxy for financial stress in the market.
  • INE · Housing stockThe province's housing stock, used as the denominator to normalise repossessions per 1,000 dwellings.
  • MIVAU · Transactions + INE · Population registerThe municipality's annual deals over its population, to measure real turnover per 1,000 residents.
  1. We start from 50 points: a market of normal liquidity and risk.
  2. Risk: repossessions per 1,000 dwellings in the province × 10, subtracting up to 30 points. A province under high mortgage stress drags prices down even when the specific property is fine.
  3. Liquidity: (transactions a year per 1,000 residents − 8) × 2, between −10 and +20 points. Eight deals per 1,000 residents is the typical Spanish turnover; above it, reselling is faster.
  4. The two figures sit at deliberately different territorial levels: mortgage stress is only published per province and turnover genuinely is municipal. We use each at its real granularity instead of faking a precision the data does not have.
  5. With no data, the factor stays at a neutral 50.
The calculation, with this property's data
  1. Base A market of normal liquidity and risk 50
  2. Risk: housing repossessions 0,74 per 1,000 dwellings in the province × 10 −7,4
  3. Liquidity: transaction turnover (32 transactions ÷ 18,567 residents × 1,000 = 1,72 − 8) × 2 −10,0
  4. Result 50 −7,4 −10,0 34/100

34/100 × 10% = +3 pts of the 100 in the overall score

Property data

15% of the score +13 pts
85
  • Condition: good condition
  • Protected housing (VPO): price and rent capped by law
  • Energy certificate In progress
  • 30 m² terrace

How this factor is calculated

It adjusts the score for the property's own characteristics that affect risk and achievable rent: occupancy, state of repair and, depending on the asset class, energy efficiency, age, access or land classification.

The sources behind it
  • The agency's advertThe text and specification of the original advert, from which we extract the declared attributes.
  • Our own attribute extractionWe normalise that free text into a shared dictionary of attributes (condition, occupancy, energy, fittings) so every advert can be scored by the same yardstick.
  1. We start from 60 points: a neutral property, nothing notable or worrying.
  2. Occupancy (all classes): illegally occupied −40 points, the model's heaviest penalty because it can block the asset for years. Tenanted under a live contract +5, because it already earns rent.
  3. State of repair: new or renovated +20, good condition +12, off-plan or under construction +5, needs renovation −18 (and its cost is also deducted in the yield factor).
  4. Energy efficiency: A or B +10, C +5, E −3, F −8, G −12. It counts because it drives the tenant's bills and already limits rents in some markets.
  5. Age: built from 2010 +8, from 2000 +5, 1950–1979 −4, before 1950 −8.
  6. Layout and access: two or more bathrooms +5, a single bathroom with three or more bedrooms −3; second floor or above without a lift −8, with a lift +3; exterior-facing +4, interior-facing −4.
  7. Fittings that raise the achievable rent: parking +5, air conditioning +3, heating +3, terrace +3 (and +2 more if its area is stated), furnished +3, top floor +3, communal pool or garden +2, south or south-east orientation +2.
  8. Sea views +6: the extra with the highest real rent and resale premium on the coast.
  9. Every adjustment is null-safe: a field the advert does not declare adds exactly 0. An advert poor in information is never penalised for being so, it simply stops adding.
  10. The result is clamped between 0 and 100.
The calculation, with this property's data
  1. Base A neutral property, nothing notable or worrying 60
  2. State of repair Good condition +12
  3. Bathrooms 2 bathrooms +5
  4. Terrace Has a terrace +3
  5. Heating Has heating +3
  6. Terrace area 30 m² of terrace +2
  7. Result 60 +12 +5 +3 +3 +2 85/100

85/100 × 15% = +13 pts of the 100 in the overall score

Comparables

Similar properties nearby

Real references of the same municipality and type, to cross-check rent and price. They are not necessarily active offers.

This is a shortlisting pass over the advert's data, not a due diligence report. Before deciding, check the points we cannot verify from here:

  • Possession: that it is vacant, with no squatters and no tenants on a live contract.
  • If it is let, the current rent, the type of contract and its expiry date.
  • The real state of repair and services (possible hidden renovation work) and a valid energy certificate.
  • The real service charge and, above all, whether any special levies are approved or pending: they appear in the minutes of the last owners' meetings.
  • The property's actual IBI: our figure is an estimate from the municipality's cadastral values, not the specific bill.
  • Charges, mortgages, seizures or easements in the Land Registry extract.

High confidence: the score rests on solid, abundant official data.

Confidence measures how much data we hold, not the quality of the investment. We publish no arrears estimates: income, employment and crime figures are market context, never an indicator of tenant risk.