Idealista Scraper avatar

Idealista Scraper

Pricing

from $3.00 / 1,000 listings

Go to Apify Store
Idealista Scraper

Idealista Scraper

Scrape Idealista real estate listings across Spain, Italy & Portugal. Extract price, GPS, energy rating, rooms, agency contact. DataDome bypass included.

Pricing

from $3.00 / 1,000 listings

Rating

5.0

(1)

Developer

Hotels Scraper

Hotels Scraper

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Idealista Scraper extracts real estate listing data from Idealista — the #1 property portal in Spain, Italy, and Portugal. Pull prices, GPS coordinates, energy ratings, room counts, sizes, and agency contacts from any city, region, or full Idealista search URL.

Built for property investors, proptech teams, market analysts, and data brokers who need a reliable Idealista API alternative without fighting DataDome anti-bot.

What does Idealista Scraper do?

  • Extract Idealista listings across Spain (idealista.com), Italy (idealista.it), Portugal (idealista.pt)
  • Filter by operation (sale / rent), property type, price, size, bedrooms, bathrooms, amenities
  • Returns GPS coordinates, energy rating, price/m², rooms, photos, agency contact
  • Up to 1,800 listings per search (Idealista's hard cap)
  • Handles DataDome anti-bot automatically — nodriver + warmed residential profile
  • Optional detail-page enrichment: address, geo, bathrooms, full amenities, agency phone
  • Works on Apify Free plan — proxy rotation, scheduling, webhooks, REST API included

Why scrape Idealista?

Idealista is the dominant real estate platform in Southern Europe (60M+ monthly visits). Its public listing data is the canonical price signal for:

  • Investors — yield analysis, neighborhood price tracking, comp sets across Madrid / Barcelona / Milan / Lisbon
  • Proptech & valuation models — feed AVMs with GPS-accurate, energy-rating-tagged comps
  • Real estate agencies — competitive monitoring of competitor inventory and pricing
  • Researchers & journalists — Southern European housing dynamics, EU energy-certificate analysis

Idealista has no public API. This scraper is the practical alternative.

What data can Idealista Scraper extract?

FieldTypeDescription
listingIdstringIdealista internal listing ID
urlstringCanonical listing URL
localeES | IT | PTCountry site
pricenumberAsking price (€)
pricePerSqmnumberPrice per m²
roomsintBedroom count
sizenumberSquare meters
energyRatingAGEU Energy Performance Certificate
latitude / longitudenumberGPS coordinates
titlestringListing headline
propertyTypestringHome / office / land / etc.
agencySlug / agencyPhonestringListing agent (Spain)
amenities, photos, priceHistoryarrayDetail-page enrichment

Detail page also returns: description, floor, elevator, parking, garage, full feature flags.

How to scrape Idealista listings

  1. Open Idealista Scraper on Apify and click Try for free
  2. Pick Country (Spain / Italy / Portugal) and Operation (sale / rent)
  3. Enter a Location — either a slug like madrid-comunidad_de_madrid or a full Idealista search URL
  4. Set Max items (1–1800) and any filters (price, bedrooms, amenities)
  5. Toggle Fetch listing details if you need address, geo, agency phone (~10× requests)
  6. Click Start — results stream into the dataset; export as JSON / CSV / Excel / HTML / XML or pull via Apify API

Heavy DataDome region? Plug a premium residential proxy into Custom Proxy URL (Decodo / Bright Data / IPRoyal ES residential).

How much does it cost to scrape Idealista?

€1.50 per 1,000 listings — Pay-Per-Result pricing.

VolumeCostTypical use
1,000 listings€1.50One city district, full sweep
10,000 listings€15.00~5 metro searches across Spain
100,000 listings€150.00Full Madrid + Barcelona + Valencia snapshot

On the Apify Free plan ($5 platform credit), you can extract roughly 3,000+ Idealista listings. Compare: ScrapingBee Idealista feed €299+/mo · Bright Data dataset enterprise pricing. No subscription, no platform fees on top.

fetchDetails: true does not change result price but increases run time and proxy usage.

Input

Configure runs from the Input tab. Minimum required: operation, propertyType, country, location.

{
"operation": "sale",
"propertyType": "homes",
"country": "es",
"location": "madrid-comunidad_de_madrid",
"maxItems": 100,
"sortBy": "mostRecent",
"minPrice": 200000,
"maxPrice": 600000,
"bedrooms": ["2", "3"],
"fetchDetails": false
}

location accepts an Idealista URL slug or a full search URL (passthrough — all UI filters override slug-based behavior). Boolean amenity flags (balcony, terrace, lift, swimmingPool, seaViews, luxury, virtualTour, …) map 1:1 to Idealista's filter UI.

Output

{
"listingId": "99887766",
"url": "https://www.idealista.com/inmueble/99887766/",
"locale": "ES",
"price": 450000,
"pricePerSqm": 4500,
"rooms": 3,
"size": 100.0,
"energyRating": "B",
"latitude": 40.4168,
"longitude": -3.7038,
"title": "Piso en Madrid centro 3 habitaciones",
"propertyType": "flat",
"amenities": ["lift", "balcony"],
"photos": ["https://img4.idealista.com/blur/..."],
"agencySlug": "inmobiliaria-centro",
"agencyPhone": "+34 91 123 4567",
"scrapedAt": "2026-04-28T10:00:00Z"
}

Download the full dataset as JSON, CSV, Excel, HTML, or XML from the Storage tab, or pull it via the Apify API.

Tips

  • Start narrow. Idealista caps results at ~1,800 per search. Split big metros by district or property type.
  • Skip fetchDetails first. The list-page data covers price, size, rooms, energy rating, GPS for most use cases. Only enable details when you need agency phone or full amenities.
  • Bring your own proxy for hardened DataDome targets. Spanish residential IPs from Decodo / Bright Data / IPRoyal outperform shared pools.
  • Schedule incremental runs with publicationDate=W (last week) or T/Y (last 24/48h) to track new inventory cheaply.
  • Geo-fence with the slug. madrid-comunidad_de_madridmadrid-madrid — first is the region, second is the city.

TypeScript schema

interface IdealistaListing {
listingId: string | null;
url: string;
locale: "ES" | "IT" | "PT";
price: number | null;
pricePerSqm: number | null;
rooms: number | null;
size: number | null;
energyRating: "A" | "B" | "C" | "D" | "E" | "F" | "G" | null;
latitude: number | null;
longitude: number | null;
amenities: string[];
photos: string[];
priceHistory: object[];
agencySlug: string | null;
agencyPhone: string | null;
title: string | null;
description: string | null;
propertyType: string | null;
floor: string | null;
elevator: boolean | null;
parking: boolean | null;
garage: boolean | null;
}

Other real estate scrapers

ActorUse case
Airbnb ScraperShort-term rental listings & pricing
LoopNet ScraperUS commercial real estate
Idealista Scraper (this actor)Spain / Italy / Portugal residential & commercial

Our scrapers are ethical and do not extract any private user data, such as email addresses, gender, or location. They only extract what the user has chosen to share publicly. We therefore believe that our scrapers, when used for ethical purposes by Apify users, are safe. However, you should be aware that your results could contain personal data (e.g. agent phone numbers published on the listing). Personal data is protected by the GDPR in the European Union and by other regulations around the world. You should not scrape personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers.

FAQ

Does it bypass Idealista's DataDome anti-bot? Yes. The actor uses nodriver (real browser automation) with pre-warmed behavioral profiles tuned for DataDome. For aggressive blocking, plug in a premium ES residential proxy via customProxyUrl.

Can I scrape Spain, Italy, and Portugal in one run? One country per run — the country input is single-select (es / it / pt). Schedule three runs in parallel; Apify routes each to the correct residential proxy region.

Is there an official Idealista API? Idealista offers a partner API to licensed real estate agencies only (no public access, requires application + commercial agreement). This actor is the practical alternative for everyone else.

What's the 1,800-listing cap? Idealista limits search results to ~1,800 per query. For larger markets, split by district, property subtype, or price band. Combine results downstream.

Can you build a custom version (polygon search, daily diffs, custom fields)? Yes — contact us through the Apify Store actor page. Custom scraping work and dedicated SLA available.

How fresh is the data? Live — every run hits Idealista directly. Schedule runs hourly / daily via Apify Scheduler for continuous monitoring.