Immoscout24 Scraper (Real Estate) avatar

Immoscout24 Scraper (Real Estate)

Pricing

Pay per usage

Go to Apify Store
Immoscout24 Scraper (Real Estate)

Immoscout24 Scraper (Real Estate)

Extract property listings from ImmoScout24.de – Germany's #1 real estate portal. Filter by city, price, rooms & area. Returns structured JSON with price, address, GPS, energy rating & photos. Built-in WAF bypass ensures reliable results. Perfect for market analysis and more.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

ninhothedev

ninhothedev

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

0

Monthly active users

2 days ago

Last modified

Categories

Share

ImmoScout24 Scraper

Extract structured real estate data from ImmoScout24.de – Germany's largest property portal with over 500,000 active listings. Get apartments, houses, and plots for sale or rent, filtered exactly to your needs.

Works reliably. Built-in WAF bypass using a GPTBot user-agent technique that is explicitly permitted in ImmoScout24's robots.txt. Cookie persistence between runs for consistent performance.


What you get

Each listing is returned as a clean JSON record with up to 35 fields:

FieldTypeDescription
titleStringListing headline
priceNumberBase price in € (Kaltmiete or Kaufpreis)
price_typeStringkauf (buy) or miete (rent)
property_typeStringwohnung, haus, or grundstueck
roomsNumberNumber of rooms
area_sqmNumberLiving area in m²
plot_sqmNumberPlot area in m² (houses/plots)
additional_costsNumberNebenkosten / Betriebskosten in €
heating_costsNumberHeizkosten in €
depositNumberKaution in €
total_rentNumberWarmmiete / Gesamtmiete in €
cityStringCity name
zip_codeStringGerman postal code
districtStringCity district / Stadtteil
stateStringGerman Bundesland
addressStringFull street address (when available)
latitudeNumberGPS latitude
longitudeNumberGPS longitude
year_builtNumberYear of construction
energy_ratingStringEnergy class: A+, A, B, C, D … H
energy_kwhNumberEnergy consumption in kWh/m²/year
heating_typeStringHeating system type
conditionStringProperty condition
floorNumberFloor level (apartments)
total_floorsNumberTotal floors in the building
has_balconyBooleanHas balcony or terrace
has_gardenBooleanHas garden
has_garageBooleanHas garage or parking space
has_elevatorBooleanHas elevator
has_cellarBooleanHas cellar
is_commission_freeBooleanNo broker commission
commissionStringCommission details (if applicable)
thumbnail_urlStringMain listing photo URL
imagesArrayAll photo URLs (detail mode only)
descriptionStringFull expose text (detail mode only)
urlStringDirect link to the listing
external_idStringImmoScout24 expose ID

Input options

ParameterTypeDefaultDescription
cityStringBerlinCity to search (e.g. München, Hamburg, Köln) — leave empty for nationwide
propertyTypeSelectwohnungwohnung, haus, or grundstueck
priceTypeSelectkaufkauf (buy) or miete (rent)
priceMinNumberMinimum price in €
priceMaxNumberMaximum price in €
roomsMinNumberMinimum number of rooms
roomsMaxNumberMaximum number of rooms
areaMinNumberMinimum living area in m²
areaMaxNumberMaximum living area in m²
zipCodeStringSearch by postal code instead of city name
radiusKmNumberSearch radius in km around city/zip
yearBuiltMaxNumberMaximum year of construction
hasBalconyBooleanFilter for listings with balcony
hasElevatorBooleanFilter for listings with elevator
hasCellarBooleanFilter for listings with cellar
hasGarageBooleanFilter for listings with garage/parking
commissionFreeBooleanFilter for commission-free listings only
energyClassMaxStringMaximum energy class (e.g. C includes A+, A, B, C)
maxPagesNumber5Pages to scrape (~20 listings per page)
enrichDetailsBooleanfalseVisit each expose page for full description & all photos
proxyConfigurationProxyApify Proxy settings (Residential recommended)

Example — Apartments for sale in Berlin

{
"city": "Berlin",
"propertyType": "wohnung",
"priceType": "kauf",
"priceMin": 200000,
"priceMax": 600000,
"roomsMin": 2,
"areaMin": 60,
"maxPages": 10,
"enrichDetails": false,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

Expected output: ~200 listings with price, rooms, area, address, GPS, energy rating, and photos.


Example — Rental apartments in Munich

{
"city": "München",
"propertyType": "wohnung",
"priceType": "miete",
"priceMax": 2000,
"roomsMin": 2,
"maxPages": 5
}

Tips for best results

  • Residential proxies significantly improve success rates — select RESIDENTIAL in the proxy configuration
  • Each page returns approximately 20 listings; maxPages: 10 = ~200 results
  • Enable enrichDetails only when you need full property descriptions or all photos — it multiplies runtime and proxy usage
  • For nationwide searches, leave city empty
  • Cookie state is saved between runs for faster warm-up on repeat runs

Use cases

Real estate professionals Monitor competitor listings, track price changes, and generate buyer leads automatically.

Investors & analysts Build price heatmaps, analyze market trends by district, and identify undervalued properties at scale.

PropTech & developers Feed property data into your own app, CRM, or machine learning pipeline without managing your own scraper.

Researchers Study the German housing market, rental vs. purchase trends, energy efficiency distribution, or urban development patterns.

Property alert services Check for new listings matching specific criteria and send automated alerts to users.


Output example

{
"title": "Helle 3-Zimmer-Wohnung mit Balkon in Prenzlauer Berg",
"price": 485000,
"price_type": "kauf",
"property_type": "wohnung",
"rooms": 3,
"area_sqm": 82.5,
"city": "Berlin",
"zip_code": "10437",
"district": "Prenzlauer Berg (Pankow)",
"address": "10437 Berlin",
"latitude": 52.5388,
"longitude": 13.4244,
"year_built": 1998,
"additional_costs": 220,
"heating_costs": 95,
"deposit": 2910,
"total_rent": null,
"state": "Berlin",
"floor": 3,
"total_floors": 6,
"energy_rating": "C",
"energy_kwh": 112,
"heating_type": "Fernwärme",
"condition": "Gepflegt",
"has_balcony": true,
"has_garden": false,
"has_garage": false,
"is_commission_free": false,
"thumbnail_url": "https://img.immobilienscout24.de/...",
"url": "https://www.immobilienscout24.de/expose/164224938",
"external_id": "164224938"
}

FAQ

Does this work without proxies? Yes, but using Residential proxies reduces the chance of rate limiting on large runs. For small searches (1–3 pages), no proxy is usually fine.

How many listings can I scrape? ImmoScout24 shows up to 50 pages per search (~1,000 listings). For more, split searches by city or price range.

Will it break if ImmoScout24 changes their website? The scraper extracts data from an embedded JSON object in the page source — this approach is significantly more stable than HTML parsing. Updates will be pushed as needed.

What's the difference between standard and detail mode? Standard mode scrapes search result pages only (~0.5s per listing). Detail mode (enrichDetails: true) additionally visits each individual listing page to extract the full description, all photos, and extended feature data (~3–5s per listing).


This actor is intended for legitimate research, analysis, and data aggregation. Users are responsible for complying with ImmoScout24's Terms of Service and applicable data protection laws (GDPR). Do not use scraped data for spam, unauthorized commercial solicitation, or any illegal purpose.