Skip to content
KeklikTechnologies

Property portals

Idealista data extraction

Sale and rental listings across Spain, Portugal, and Italy with price history, agency details, and per-square-metre pricing.

Idealista is the reference portal for Iberian property, and the value is in tracking it over time: what listed, what moved, what sold, and at what discount to the asking price.

We deliver full listing records for the provinces and municipalities you select, matched across runs so price changes and delistings arrive as dated events rather than as new rows you have to reconcile yourself.

idealista.com
Entities
Sale · Rental · New build · Rooms · Agencies
Geography
Spain · Portugal · Italy
Scope unit
Province, municipality, district, or URL set
Refresh
Hourly to weekly per area
Change tracking
Price moves, relisting, and removal
Pricing data
Asking price and price per m²
Formats
JSON · NDJSON · CSV · Parquet
Delivery
Postgres · BigQuery · S3 · Webhook · Sheets
History
Backfill available on request
9 specified parameters

Fields

What you receive.

The usual set. Fields can be added or dropped per project — you pay for what you take.

Idealista fields

16
  • Listing ID and canonical URL
  • Operation type: sale, rent, or share
  • Asking price and price per m²
  • Full price history with dates
  • Address, district, and coordinates
  • Built area and usable area
  • Rooms and bathrooms
  • Floor, lift, and orientation
  • Property type and condition
  • Energy certificate rating
  • Year built where published
  • Features: terrace, parking, pool, storage
  • Community fees where published
  • Description text
  • Photo count and image URLs
  • Advertiser type, agency name, and contact

Output

What arrives.

An illustration of the record structure. Yours is shaped to the fields you ask for and stays the same on every run.

Sale listing — abbreviatedjson
{
  "listing_id": "idl_104882417",
  "captured_at": "2026-04-08T07:12:44Z",
  "operation": "sale",
  "price": { "amount": 389000, "currency": "EUR", "per_sqm": 4321 },
  "location": {
    "municipality": "Valencia",
    "district": "Ruzafa",
    "province": "Valencia",
    "lat": 39.4585, "lon": -0.3722
  },
  "built_area_sqm": 90,
  "rooms": 3,
  "bathrooms": 2,
  "floor": "4",
  "lift": true,
  "energy_rating": "D",
  "features": ["terrace", "air_conditioning"],
  "price_history": [
    { "date": "2026-02-11", "event": "listed", "amount": 415000 },
    { "date": "2026-03-30", "event": "price_change", "amount": 389000 }
  ],
  "advertiser": { "type": "agency", "name": "…", "phone": "…" }
}

Questions

Asked before.

Can you cover only specific provinces?

Yes. Scope is set by province, municipality, district, or an explicit URL list you supply, and it can be changed between runs.

Do you capture price drops?

Yes. Listings are matched across runs, so a price change arrives as a dated event on the existing record.

Can we get historical data from before we started?

Where it is published on the listing, yes — price history comes with the record. Deeper backfill is quoted per project.

Next step

Get Idealista data running.

Send the fields, the geography, and how fresh it needs to be. You will get back what is achievable and what it costs to run, usually within a day.