Immowelt Scraper - Germany Real Estate & Agent Leads
Pricing
from $0.55 / 1,000 property listings
Immowelt Scraper - Germany Real Estate & Agent Leads
Scrape Immowelt.de property listings: rent and purchase price, service charges, rooms, living space, year built, energy class, address, coordinates and photos, plus each listing agency and its contact details. Independent tool, not affiliated with Immowelt.
Pricing
from $0.55 / 1,000 property listings
Rating
0.0
(0)
Developer
Scrape Sage
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Disclaimer: This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by AVIV Germany GmbH or any of its subsidiaries. All trademarks mentioned are the property of their respective owners. "Immowelt" is referenced only to describe the publicly available website this Actor collects data from.
Turn any Immowelt search into a clean spreadsheet of German property listings - cold rent, warm rent, service charges, deposit, purchase price, rooms, living space, plot size, year built, heating, energy certificate, address and coordinates, every photo and floor plan - plus the estate agency behind each listing with its contact person, phone, website and imprint.
No API key and no login. Give it a city (berlin), a district (berlin-lichtenberg) or paste Immowelt search URLs. Works for apartments, houses, plots of land, temporary and furnished living, and retail units, to rent or to buy.
Why this Immowelt scraper?
Two levels of depth, and you pick per run - so a market survey stays cheap and a shortlist gets everything Immowelt publishes.
| Data | Listing (always) | Full detail (opt-in) |
|---|---|---|
| Title, price, price label, price per m² | ✅ | ✅ |
| Rooms, living space, availability | ✅ | ✅ |
| District, city, postcode | ✅ | ✅ |
| Photos + photo count, teaser text | ✅ | ✅ |
| Agency name + contact person | ✅ | ✅ |
| Cost breakdown - service charges, heating, warm rent, deposit | ✅ | |
| Exact street address + latitude / longitude | ✅ | |
| Year built, condition, heating system, energy source | ✅ | |
| Energy certificate - class, demand, type, validity | ✅ | |
| Agency phone, website, imprint URL, profile URL, private-owner flag | ✅ | |
| Floor plans, videos, 3D-tour flag, documents | ✅ | |
| Amenities by category + detected features | ✅ | |
| Plot area, commission text, reference number, listed / updated dates | ✅ |
Full detail is off by default. Switch on Scrape full listing details to enable it; those rows are charged as the detail event instead of the standard one, never on top of it.
Use cases
- Rental and sale market analysis - cold rent, warm rent, service charges and price per m² across as many districts as you like, in one dataset.
- Estate-agent lead lists - every listing names the agency and its contact person; with full detail on, you also get the phone, website and imprint. A search doubles as a prospect list for proptech, photography, financing and energy-certificate services.
- Investment sourcing - filter by price, rooms and living space, then sort by price per m² to find what is mispriced in a district.
- Energy and building datasets - energy class, demand, heating system, energy source, year built and condition are the columns retrofit, ESG and heat-pump businesses need.
- New-listing alerts - monitor mode remembers what it has returned, so a scheduled run emits only what is new.
- Relocation and portfolio tooling - coordinates, exact address, floor plans and amenity lists feed map-based search products.
How to use
- Sign up for Apify - the free plan is enough to try this Actor.
- Open the Immowelt Scraper, enter one or more locations, choose rent or buy and a property type, and click Start.
- Watch listings stream into the dataset table.
- Export as JSON, CSV, Excel, XML or RSS - or pull results programmatically through the Apify API.
How deep does a search go?
Read this before you plan a big export - it is the one thing that decides how you should configure a run.
Immowelt does not publish a crawlable "page 2". Its results pages paginate through routes that immowelt.de/robots.txt disallows, so this Actor does not request them. One search page therefore returns the 25-42 listings Immowelt renders on it, not the whole result set.
Two supported ways to get real volume, both using Immowelt's own published pages:
- Search narrower places. A city URL and a district URL are each one page of results - but a district page is a much larger share of its own market than a city page is of the city. Pass many district slugs rather than one city.
- Turn on Follow Immowelt's related searches. Every results page publishes dozens of narrower searches of its own - top neighbourhoods, nearby towns, room-count splits, property sub-types and feature searches - each with its own result count. With this on, the Actor follows them, bounded by Max search pages.
Input
| Field | What it does |
|---|---|
| Locations | City or district slugs as Immowelt writes them - berlin, muenchen, koeln, berlin-lichtenberg. |
| Property types | Apartments, houses, plots, temporary living, retail units. A pick-list; leave empty for all types. |
| Deal type | For rent (mieten) or for sale (kaufen). |
| Search URLs | Paste Immowelt search URLs. A direct /expose/ listing URL also works when full detail is on. |
| Search URLs from a file or pasted list | The same as a pasted block, or one link to a .txt/.csv/Google Sheet/Drive/key-value-store record. |
| Scrape full listing details | Opens each listing's own page for the complete record. Off by default because it costs more per listing. |
| Follow Immowelt's related searches | Depth, as described above. |
| Max listings per search / Max listings in total / Max search pages | Caps. |
| Min/Max price, Min/Max rooms, Min/Max living space | Filters, applied before billing - filtered listings are never charged. |
| Only private owners / Only with a floor plan | Filters. Both need full detail on. |
| Output fields | Tick exactly the columns you want. |
| Monitor mode | Emit only listings not seen on previous runs. Ideal on a schedule. |
Rent listings are matched on the cold rent (Kaltmiete); sale listings on the purchase price.
Output
One row per listing. A rented apartment, with full detail on:
{"type": "listing","classifiedId": "264C9FHP3E4H","url": "https://www.immowelt.de/expose/5ea9bbf0-2214-4886-adca-4b54a78b77c6","title": "Wohnung zur Miete auf Zeit - Erstbezug","dealType": "RENT","propertyType": "APARTMENT","priceText": "1.799 €/Monat","priceLabel": "Kaltmiete","price": 1799,"pricePerSqm": 20.52,"costs": [{ "label": "Nebenkosten", "text": "240 €/Monat", "amount": 240 },{ "label": "Heizkosten", "text": "110 €", "amount": 110 },{ "label": "Warmmiete", "text": "2.149 €/Monat", "amount": 2149 }],"deposit": "3 Nettokaltmieten","rooms": 3,"livingSpaceSqm": 87.7,"availability": "frei ab sofort","yearOfConstruction": 2025,"condition": "Erstbezug","heatingSystem": "Fußbodenheizung","energySource": "Fernwärme","energyEfficiencyClass": "B","energyDemand": "64 kWh/(m²·a)","street": "Archenholdstraße 21","district": "Friedrichsfelde","city": "Lichtenberg","zipCode": "10315","latitude": 52.50751686007757,"longitude": 13.50397718192735,"agencyName": "STRATEGIS AG","contactPerson": "Stefan Prill","phone": "030 44353300","website": "https://www.strategis.eu/","publisherType": "AGENCY","isPrivateOwner": false,"imageCount": 27,"hasVirtualTour": true}
Three dataset views ship with it: Listings overview, Agency & contact leads, and Building & energy.
Good to know
- Search pages are read over ordinary HTTP - no browser, and a few seconds per page.
- Listing detail pages sit behind bot protection. They are fetched over a residential IP and retried on a fresh one if refused - no API key of any kind is needed. This is why full detail is opt-in and costs more per listing than list data. A detail page that still cannot be read is reported and never charged.
- Robots.txt is honoured. Only
/liste/,/suche/and/expose/pages are requested. URLs Immowelt disallows (/classified-search?…,/classified-map?…,/classifiedList/,*bff/*,/liste/getlistitems) are skipped and named in the run's status message. wohnen-auf-zeitis rent-only. Immowelt does not publish it for sale, so that combination is skipped before the request and nothing is charged.- Some fields depend on the property type. Plots of land carry no room count or living space; houses report a total area and a plot area; only apartments report a floor. Sale listings show no price label on the results page - that arrives with full detail.
- Coordinates only when the advertiser publishes the address. Immowelt returns an exact point for a published address and an approximate area otherwise. This Actor emits
latitude/longitudeonly for a real point and setslocationIsApproximate: truefor the rest - it never invents a coordinate. - A run never fails on a transient block. It ends Succeeded with whatever it collected plus a status message explaining what happened, and stops before its own time limit rather than timing out.
Listings on Immowelt name estate agents and, on some listings, private sellers, so the contact columns are personal data. See Data & lawful use below before you use them.
How much does it cost to scrape Immowelt?
This Actor uses Apify's pay-per-event pricing: you are charged only for the results it delivers, with no monthly rental and no start fee. The events it can charge are:
- Property listing - One property listing returned from an Immowelt search - price, rooms, living space, address, photos and the listing agency. Listings filtered out by your price, room, living-space, owner or floor-plan filters are never charged.
- Full listing detail - Charged in addition to the listing only when 'Scrape full listing details' is on AND that listing's own page was actually read - full cost breakdown, deposit, year built, heating, energy certificate, exact street address, coordinates, all photos, floor plans and the agency's phone, website and imprint. Immowelt protects listing pages with DataDome, so each one is fetched through Bright Data Web Unlocker. A detail page that could not be read is never charged.
The current price of each event is shown on the Pricing tab of this page. Set a maximum total charge on the run if you want a hard cap on spend, and use the input limits to control how much the Actor fetches.
Automate & schedule
Run this Actor on autopilot and pull results into your own stack:
- Apify API - start runs, fetch datasets and manage schedules over REST.
- apify-client for JavaScript and apify-client for Python - official SDKs.
- Schedules - run it hourly, daily or weekly and keep your dataset current.
- Webhooks - trigger downstream actions (CRM import, Slack alert, email sequence) the moment a run finishes.
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'MY_APIFY_TOKEN' });const run = await client.actor('scrapesage/immowelt-scraper').call({// your input - see the Input section above});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(`Got ${items.length} records`);
Integrate with any app
Connect the dataset to thousands of apps - no code required:
- Make - multi-step automation scenarios.
- Zapier - push new records straight into your CRM or spreadsheet.
- Slack - get notified when a scheduled run finds something new.
- Google Drive / Sheets - auto-export every run to a spreadsheet.
- Airbyte - pipe results into your data warehouse.
- GitHub - trigger runs from commits or releases.
Use with AI assistants (MCP)
The output is clean, LLM-ready JSON. You can call this Actor from Claude, ChatGPT or any agent framework through the Apify MCP server - describe the data you need and let the assistant run this Actor for you.
Agent-ready: autonomous payments (x402 & Skyfire)
This actor is agent-ready — AI agents can discover it, run it, and pay for it autonomously, with no Apify account and no human in the loop. It uses pay-per-event pricing and limited permissions, so it qualifies for Apify's agentic-payment standards:
- x402 — an open, HTTP-native payment protocol. Agents pay per run in USDC on the Base network directly through the Apify MCP server — no account, no API key.
- Skyfire — agent-to-service payments for fully autonomous AI-agent workflows.
Building an AI agent, MCP tool, or autonomous data pipeline? This scraper is ready to plug in and pay as it goes.
More scrapers from scrapesage
Related Actors in the same category:
- Real Estate Scraper for Redfin - Listings, Sold Comps & Leads
- BizBuySell Scraper - Businesses For Sale & Broker Leads
- VivaReal & ZAP Imóveis Scraper - Brazil Real Estate
- PropertyGuru Scraper - Singapore Property & Agent Leads
- Airbnb Scraper & Market Monitor
Tips
- Districts beat cities. Pass ten district slugs instead of one city slug and you will end up with far more of the market for the same number of requests.
- Two-pass workflow. Survey with full detail off, then re-run with it on over the shortlist - detail rows cost more, so spend them where they matter.
- Let the site find the depth for you. Turn on Follow Immowelt's related searches and raise Max search pages rather than hand-writing dozens of URLs.
- Agent prospecting. Deduplicate on
agencyNamewith full detail on to get one row per agency, complete with phone, website and imprint. - Watch a district. Monitor mode plus a daily Schedule gives you new listings only, and you pay for nothing else.
FAQ
How is this Actor billed? Pay-per-event: you pay only for the results it delivers, with no monthly rental and no start fee. The per-event price is shown on the Pricing tab.
Can I schedule it and get results automatically? Yes - create a Schedule and add a webhook or an integration (Google Sheets, Slack, Make, Zapier) to push each run's dataset wherever you need it.
Which export formats are available? Every run's dataset can be downloaded as JSON, CSV, Excel (XLSX), XML, HTML or RSS from the Apify Console or the API.
Can I run it from code or an AI agent? Yes - through the Apify API and client libraries, or from Claude, ChatGPT and other assistants via the Apify MCP server.
Is it legal to scrape Immowelt? This Actor collects publicly available data only. You are responsible for using the output in compliance with applicable laws (including data-protection law where personal data is involved) and the source's terms. See Data & lawful use and the Disclaimer below.
Is this an official Immowelt tool? No. It is an independent, third-party Actor with no affiliation to, endorsement by or sponsorship from AVIV Germany GmbH. See the Disclaimer below.
Data & lawful use
This Actor reads public listings and the seller information shown on them. Sellers on Immowelt include private individuals, so seller names, usernames and any contact details are personal data. If you are in the EU or UK you are the data controller for what you do with them: have a lawful basis, use the data for market research, price monitoring or lawful sourcing, honour deletion requests, and do not send private sellers unsolicited marketing.
Under Apify's Standard Actor Contract, which governs your use of this Actor, you are the controller of any personal data in your input and output and scrapesage acts only as your processor: that data is processed solely to run your job, written only to your own Apify storage, never used for any other purpose and never shared onward. If you need help with a data-subject request that involves this Actor's output, open an issue on the Issues tab.
Disclaimer
This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by AVIV Germany GmbH or any of its subsidiaries. All trademarks mentioned are the property of their respective owners.
"Immowelt" and any related marks are the property of their respective owners and are used here only in a descriptive, nominative sense - to identify the publicly accessible website from which this Actor collects data. This Actor is not an official Immowelt product, is not authorised or certified by AVIV Germany GmbH, and does not distribute Immowelt software. It collects only publicly available information; you are responsible for ensuring your use of that data complies with applicable laws, regulations and the terms of the source website.
Need help?
Open an issue on the Actor's Issues tab, or visit the Apify help center. Feature requests are welcome - this Actor is actively maintained.