ImmoScout24 Scraper
Pricing
from $0.60 / 1,000 results
ImmoScout24 Scraper
Scrape ImmoScout24 property listings — rent or buy across Germany, Austria, Switzerland. 78+ fields: price breakdown, rooms, energy class, agent contact, photos, fair price indicator. Search by city or paste URLs. JSON/CSV/Excel. API, MCP, webhook, AI-agent ready.
Pricing
from $0.60 / 1,000 results
Rating
0.0
(0)
Developer
Scrape Smith
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Share
Extract clean, structured real estate data from ImmoScout24 — Germany's largest property marketplace — in seconds. Built for real estate agencies, PropTech developers, investors, and analysts who need reliable rental and for-sale listing data without touching a browser or writing a single line of scraping code.
Why use this scraper
- Complete German real estate coverage — apartments, houses, plots, garages, investment properties, shared flats (WG), and assisted living, for both rent and buy.
- No-code data extraction — just paste a search URL or set filters and run. No proxies, no browser setup, no maintenance on your end.
- Deep, structured output — price breakdowns, energy certificates, agent/landlord contact details, full address and geolocation, and photo galleries in one clean JSON/CSV row per listing.
- Built for automation — plug directly into your CRM, spreadsheet, BI tool, or AI agent via API, webhook, or native no-code integrations.
Features
- Search by pasted ImmoScout24 URL, location geocode, or latitude/longitude radius search
- Filter by rent or buy, property type, price range, room count, living space, plot size, construction year, and energy class
- Filter by amenities and equipment — balcony, garden, fitted kitchen, elevator, cellar, guest toilet, step-free access, and parking
- Filter by apartment sub-type (loft, maisonette, penthouse, etc.) and building sub-type (villa, bungalow, semi-detached, etc.)
- Fetch specific listings directly by ImmoScout24 expose ID, bypassing search entirely
- Toggle between fast search-only results or full listing detail enrichment (price breakdown, energy data, description, agent contact, photos)
- Full price transparency for rentals (cold rent, warm rent, utilities, heating costs, deposit) and purchases (purchase price, broker commission, land transfer tax, notary costs)
- Complete energy performance data (EPC class, certificate type, consumption, primary energy carrier)
- Full photo galleries, floor plans, and agent/landlord contact details on every listing
- Structured, geocoded addresses ready to drop straight into a map or CRM
Output fields
Every listing is returned as a structured JSON object (and flattened automatically for CSV/Excel export). Fields are grouped below by category.
Listing Details
| Field | Description |
|---|---|
id | Unique ImmoScout24 listing (expose) ID |
url | Direct link to the listing on immobilienscout24.de |
title | Listing headline |
operation | RENT or BUY |
realEstateType | Raw ImmoScout24 listing type code |
propertyCategory | Normalized category: apartment, house, garage, plot, investment, sharedflat, assistedliving |
publicationState / listingState | Current publication status of the listing |
isProject | Whether the listing is part of a new-build development project |
isPrivate | Whether the listing was posted by a private individual (not an agency) |
isNew | Whether the listing is newly published |
isNewlyConstructed | Whether the property itself is newly constructed |
listingType | Listing tier/type as set by the poster |
objectNumber | Internal object/reference number from the lister |
projectId | Associated development project ID, if any |
availableFrom | Date the property becomes available |
isHighDemand | Whether ImmoScout24 flags the listing as high demand |
isExclusiveExpose | Whether the listing is marked as an exclusive expose |
isPrivateOffer | Whether the listing is a private offer |
tags | Listing badges/tags as shown on ImmoScout24 |
hasDetails | Whether full detail-page enrichment was applied to this record |
scrapedAt | UTC timestamp the record was collected |
Price & Costs
| Field | Description |
|---|---|
price | Primary listing price (cold rent for rentals, purchase price for sales) |
priceCurrency | Always EUR |
priceRaw | Original unparsed price string as shown on the listing |
pricePerSqm | Price per square meter, calculated from price and living space |
kaltmiete | Cold rent (excl. utilities) |
warmmiete | Warm rent (incl. utilities) |
nebenkosten | Monthly utility/service charges |
heizkosten | Monthly heating costs |
kaution | Deposit or cooperative share requirement |
kaufpreis | Purchase price (for-sale listings) |
kaufnebenkosten | Additional purchase costs |
gesamtkosten | Total purchase costs |
maklerprovision | Broker/agent commission |
grunderwerbsteuer | Real estate transfer tax |
notarkosten | Notary fees |
grundbucheintrag | Land registry entry fee |
fairPrice.label | ImmoScout24's fair-price assessment label |
fairPrice.minPricePerM2 / fairPrice.maxPricePerM2 | Fair-price range per square meter for the area |
fairPrice.positionInPercent | Where this listing's price sits within the fair-price range |
Property Specs
| Field | Description |
|---|---|
livingSpace | Living space in square meters |
plotArea | Plot/ground size in square meters |
rooms | Number of rooms |
bedrooms | Number of bedrooms |
bathrooms | Number of bathrooms |
floor | Floor the unit is on |
numberOfFloors | Total floors in the building |
yearBuilt | Year of construction |
condition | Property condition (e.g. renovated, first occupancy) |
heatingType | Type of heating system |
buildingType | Building or apartment sub-type |
energyClass | EU energy efficiency class (A+ to H) |
energyCertificateType | Type of energy certificate provided |
energyConsumption | Energy consumption value |
primaryEnergyCarrier | Primary energy source (gas, oil, district heat, etc.) |
balcony / terrace / garden / cellar | Amenity flags |
elevator / guestToilet / builtInKitchen | Amenity flags |
handicappedAccessible | Step-free / accessible access flag |
parking | Parking/garage details |
petsAllowed | Pet policy |
description | Main listing description text |
objectDescription | Property description section |
equipmentDescription | Equipment/fittings description section |
locationDescription | Neighborhood/location description section |
miscDescription | Additional notes section |
Location / Address
| Field | Description |
|---|---|
address.fullAddress | Full address as displayed on the listing |
address.street | Street name |
address.houseNumber | House number |
address.zip | Postal code |
address.city | City |
address.district | District/neighborhood |
address.region | Region/state |
address.country | Country (Deutschland) |
address.isRedacted | Whether the exact address is hidden until contact |
latitude / longitude | Geocoordinates |
coordinatePrecision | exact, approximate, or unknown |
Agent / Landlord Info
| Field | Description |
|---|---|
realtor.company | Agency or landlord company name |
realtor.name | Contact person's name |
realtor.phone | Contact phone number |
realtor.email | Contact email address |
realtor.profileUrl | Link to the agent's ImmoScout24 profile |
realtor.rating | Agent rating score |
realtor.ratingCount | Number of ratings/stars |
realtor.isVerified | Whether the agent is verified by ImmoScout24 |
realtor.logoUrl | Agency logo image URL |
Media
| Field | Description |
|---|---|
photos | Array of { url, caption } objects — the full photo gallery |
photosCount | Total number of photos |
floorPlanUrl | Floor plan image/PDF URL, if available |
videoUrl | Listing video URL, if available |
virtualTourUrl | Virtual tour URL, if available |
Use cases
- Market research — track average rents and sale prices by city, district, or property type across Germany.
- Rent & price monitoring — watch specific areas or property types for new listings and price changes over time.
- Lead generation for real estate agents & agencies — build prospect lists of private landlords and competing agencies with contact details.
- Investment analysis — compare price-per-square-meter, yields, and fair-price positioning across neighborhoods to find undervalued opportunities.
- Competitor analysis for PropTech & agencies — benchmark your own listings against comparable inventory on the market.
- Data journalism — power housing-market stories and visualizations with structured, verifiable listing data.
- ML & AI training data — feed clean, labeled real estate records into pricing models, valuation tools, or AI agents.
- Relocation & portfolio tools — enrich apartment-finder apps or corporate relocation platforms with live German listing inventory.
Input
Configure the scraper with a search URL, location, or specific listing IDs — plus optional filters. Example input:
{"searchUrl": "https://www.immobilienscout24.de/Suche/de/berlin/berlin/wohnung-mieten?numberofrooms=2.0-4.0","operation": "rent","propertyType": "apartment","minPrice": 800,"maxPrice": 2000,"minRooms": 2,"maxRooms": 4,"minLivingSpace": 50,"equipment": ["balcony", "builtInKitchen", "cellar"],"fetchDetails": true,"maxItems": 100}
You can also skip search entirely and pass listingIds to fetch a specific set of exposes directly, or use latitude / longitude / radiusKm for a radius-based search around a point. Set fetchDetails to false for a faster, lighter run that returns search-result fields only, without the full expose enrichment (price breakdown, energy data, description, agent contact).
Output example
{"id": "148392057","url": "https://www.immobilienscout24.de/expose/148392057","title": "Helle 3-Zimmer-Wohnung mit Balkon in Prenzlauer Berg","operation": "RENT","propertyCategory": "apartment","isNew": true,"address": {"fullAddress": "Kastanienallee 42, 10435 Berlin","street": "Kastanienallee","houseNumber": "42","zip": "10435","city": "Berlin","district": "Prenzlauer Berg","country": "Deutschland","isRedacted": false},"latitude": 52.5396,"longitude": 13.4127,"coordinatePrecision": "exact","price": 1450,"priceCurrency": "EUR","pricePerSqm": 19.33,"kaltmiete": 1450,"warmmiete": 1780,"nebenkosten": 250,"heizkosten": 80,"kaution": "4350 €","livingSpace": 75,"rooms": 3,"bedrooms": 2,"bathrooms": 1,"floor": "3. Etage","yearBuilt": 1905,"condition": "Saniert","heatingType": "Fußbodenheizung","energyClass": "C","balcony": true,"garden": false,"cellar": true,"elevator": false,"builtInKitchen": true,"description": "Diese lichtdurchflutete Altbauwohnung besticht durch hohe Decken...","photos": [{ "url": "https://pictures.immobilienscout24.de/listings/148392057-1.jpg", "caption": "Wohnzimmer" },{ "url": "https://pictures.immobilienscout24.de/listings/148392057-2.jpg", "caption": "Küche" }],"photosCount": 12,"realtor": {"company": "Berlin Wohnen Immobilien GmbH","name": "Anna Müller","phone": "+49 30 12345678","profileUrl": "https://www.immobilienscout24.de/anbieter/12345","isVerified": true},"hasDetails": true,"scrapedAt": "2026-07-20T10:15:00.000Z"}
Export formats
Download your results in the format your workflow needs — JSON, CSV, Excel (XLSX), or XML — directly from the Apify dataset, no extra setup required. Perfect for feeding straight into spreadsheets, databases, or BI tools.
Integrations
This scraper works anywhere your data needs to go:
- REST API — trigger runs and pull results programmatically
- MCP server — connect directly to Claude, ChatGPT, and other AI agents for natural-language data requests
- Webhooks — get notified the moment a run finishes
- Zapier, Make, and n8n — no-code automation into thousands of other apps
- Google Sheets — pipe listings straight into a live spreadsheet
- AI agent & LLM workflows — built for integration with LangChain, Claude, ChatGPT, and other agent frameworks that need structured, real-time real estate data
Tips for best results
- Paste a fully-filtered search URL straight from your browser for the fastest, most accurate setup — all filters are read automatically.
- Turn off
fetchDetailswhen you only need headline price, size, and location for a large batch of listings. - Use
listingIdswhen you already know exactly which exposes you want, to skip search entirely. - Combine
latitude/longitude/radiusKmfor hyper-local radius searches around a specific address or landmark. - Re-run on a schedule (via Apify's built-in scheduler) to track price changes and new listings over time.
FAQ
Does this scraper require a proxy or any technical setup? No. It runs out of the box on Apify — no proxy, browser, or infrastructure setup needed on your end.
Can I search by city, postcode, or exact radius? Yes. Use a geocode path, a postcode, or set latitude/longitude with a radius in kilometers.
Does it return both rental and for-sale listings?
Yes, set the operation input to rent or buy.
Can I get agent or landlord contact details?
Yes, when fetchDetails is enabled, each listing includes available agent/landlord company, name, phone, and profile link.
What formats can I export the data in? JSON, CSV, Excel, and XML — all available directly from the Apify dataset, plus API and webhook access for automated pipelines.
Pricing
Pay only for results — no subscription required. Try it free.
Related scrapers
Looking for other European real estate data? Check out our other property scrapers for more markets and marketplaces — great for building a multi-country real estate dataset or comparing cross-border investment opportunities.