Idealista & Fotocasa Catastro Enrichment — Official m²
Pricing
from $30.00 / 1,000 property enricheds
Idealista & Fotocasa Catastro Enrichment — Official m²
Paste the dataset of your Idealista or Fotocasa scraper and get the official Catastro record for every listing: real m², use, year, cadastral reference — and advertised vs official m². Also works with plain addresses or cadastral references.
Pricing
from $30.00 / 1,000 property enricheds
Rating
0.0
(0)
Developer
RodimuxAI
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Spain Land & Property Cadastral Enrichment
Listings say what the seller wants. The Cadastre says what is there.
Give this Actor a Spanish address — or the dataset of your Idealista or Fotocasa scraper run — and it returns the official record from Spain's Cadastre: real surface in m², official use, year, existing constructions, and the cadastral reference.
That reference is the point. It's the legal identity of the plot, the one you take to the Land Registry. Without it, a listing is just a claim.
Idealista + Catastro in two steps
- Run any Idealista scraper — igolaizola/idealista-scraper, memo23/idealista-scraper — or a Fotocasa, Habitaclia or Milanuncios one.
- Paste that run's dataset ID into
sourceDatasetIdhere. Nothing else.
Address, town, map pin, price and size are read from each listing, and every listing comes back with its official record next to it:
{"input": "Calle de Jaime I, 33, Zaragoza","listingUrl": "https://www.idealista.com/inmueble/…/","listingPrice": 245000,"listingSizeM2": 90,"cadastralReference": "6737502XM7163F0029HW","parcelReference": "6737502XM7163F","surfaceM2": 76,"use": "Residencial","yearBuilt": 1960,"address": "CL JAIME I (DON) 33 Es:2 Pl:06 Pt:IZ 50003 ZARAGOZA (ZARAGOZA)","matchMethod": "address_building","propertiesAtAddress": 14,"status": "found"}
When the address points at exactly one property — a house, a plot, a commercial unit — you also get the comparison buyers actually want:
| Field | Meaning |
|---|---|
plotSurfaceM2 | Land area of the whole parcel, from the official cadastral map — every record has it, and for plots it's the number that matters |
sizeDifferenceM2 / sizeDifferencePct | Advertised m² minus official m² — built area for homes, plot area for land. Listings routinely include terraces and common areas |
pricePerOfficialM2 | Asking price over the official surface, not the advertised one |
In a building with many flats the Actor doesn't pretend to know which flat is yours, so sizeComparable is false there.
Hidden addresses. Many Idealista listings hide the street number. Those are matched by the listing's map pin to the nearest parcel, marked matchMethod: "coordinates" with coordinatesDistanceM and a matchNote — never passed off as an exact match. Turn useCoordinates off to get address matches only.
You can also call it by API with the listing objects themselves in addresses, no dataset needed.
Who this is for
- Land scouts and developers sourcing plots: check the surface a listing claims, before you drive out to see it.
- Real-estate agencies and portals: verify and normalize a whole portfolio at once.
- Valuation, lending and insurance: official surface, use and age, at scale.
- Anyone running a Spanish property scraper: this is the layer that turns listings into verified records.
Three ways in — the third is the point
- Addresses as written in a listing:
Calle Alfonso I, 1, 50003 Zaragoza. Street type, name, number, postcode and town are parsed for you. - Cadastral references (14 or 20 characters) — exact, no parsing involved.
sourceDatasetIdof another Actor. Run any Idealista / Fotocasa / Milanuncios scraper, paste that run's dataset ID, and addresses are read straight from it. No CSV export, no copying columns.
Land mode: one record per parcel
A street number returns every property in the building — one per flat. With parcelLevel on (the default) you get the parcel once, which is what matters for land, and you're charged once. Turn it off when you want every individual unit.
It asks the Cadastre how it spells things
Spanish addresses don't match the Cadastre's own spelling, and that's the single biggest source of failure. Before looking anything up, this Actor resolves the street against the official street index:
| A listing writes | The Cadastre stores |
|---|---|
| Calle Mariano Lagasca | CL LAGASCA, MARIANO — surname first |
| Calle Gran Vía (Zaragoza) | PS GRAN VIA (RAMON Y CAJAL) — it's a paseo, not a street |
That normalization alone took the hit rate from 55% to 68%.
Hit rate, measured — not promised
68% on 20 real listing-style addresses across Zaragoza, Madrid and Valencia (30 July 2026). Exact cadastral references resolve essentially always — the loss is all in address matching.
The remaining failures are almost entirely "street exists, that number doesn't". The Actor reports that instead of guessing. It will never snap to a nearby street number: a different number is a different building. The only fallback is the listing's own map pin (when the input has coordinates), and those records say so in matchMethod.
You only pay for records actually delivered. Addresses that don't resolve cost you nothing.
Input
| Field | Default | What it does |
|---|---|---|
addresses | — | Spanish addresses, as written in listings |
cadastralReferences | — | Cadastral references (14 or 20 chars) |
sourceDatasetId | — | Dataset ID of an Idealista / Fotocasa / any real-estate scraper run |
sourceDatasetField | auto | Field holding the address (autodetected) |
province / municipality | — | Force them when addresses omit the town |
parcelLevel | true | One record per parcel instead of per unit |
useCoordinates | true | Fall back to the listing's map pin when the address can't be matched |
maxItems | 200 | Cap per run |
Pricing
| Event | When you're charged |
|---|---|
| Property enriched | Only when the Cadastre returns an actual record |
Limits, up front
- No ownership data. Owner names are protected under Spanish law and this service does not serve them. What you get is the unprotected cadastral data: surface, use, situation, constructions. If you need to know who owns it, this Actor is not what you want.
- No buildability. The Cadastre states the current use, not what the municipal plan allows you to build. That's the number a land scout most wants, it lives in scattered municipal planning documents, and it is not in here.
- Rural parcels follow a different query branch and are less reliable than urban ones in this version.
- The Cadastre's service is a free public API. This Actor caches by reference, keeps concurrency low and backs off — please don't hammer it.
Source
Official data from the Sede Electrónica del Catastro (Spanish Ministry of Finance), servicio de consulta libre — the public, unauthenticated endpoint for unprotected cadastral data. Reuse of Spanish public-sector information is governed by Ley 37/2007.
