Immowelt.de Scraper: rent & buy flats, houses (search + alerts)
Pricing
from $1.00 / 1,000 result items
Immowelt.de Scraper: rent & buy flats, houses (search + alerts)
Immowelt scraper for immowelt.de: flats and houses to rent or buy in any German city, by filters or any immowelt search URL. Rows with price and price type (Kaltmiete, Kaufpreis), rooms, living and plot area, street, district, city, postcode, agency and photos. Monitor mode alerts on new listings.
Pricing
from $1.00 / 1,000 result items
Rating
0.0
(0)
Developer
Viktor Dubnytskiy
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
An Immowelt scraper for immowelt.de, Germany's second-largest property portal: flats (Wohnungen) and houses (Häuser) to rent or buy, searched by city with price, room and area filters — or by pasting any immowelt search URL. Every exposé comes back as one flat row, and monitor mode on a saved Task returns only the listings that are new or changed price since your last run.
What you get — example output
One row per exposé. Real values from the example dataset (locations: ["Berlin"], rent, apartment):
| Field | Example value | What it is |
|---|---|---|
listingId | 264C9FHP3E4H | Stable immowelt listing id (url leads to the exposé) |
title | Wohnung zur Miete auf Zeit - Erstbezug | Listing headline |
price / priceType | 1799 / Kaltmiete | Numeric price in EUR and which price it is (Kaltmiete, Warmmiete, Kaufpreis) |
rooms / livingArea | 3 / 87.7 | Rooms and living area in m² (plotArea for houses) |
address | Archenholdstraße 21, Friedrichsfelde, Lichtenberg (10315) | Full address line, also split into street, district, city, postcode |
availability | frei ab sofort | When the flat is free, as immowelt states it |
agencyName | STRATEGIS AG | Agency publishing the listing |
imagesCount | 27 | How many photos the exposé has (images[] holds the URLs) |
isNew / isNewBuild | false / false | Freshly posted flag and Neubau flag |
Full field list: listingId, url, title, price, currency, priceLabel, priceType, rooms, livingArea, plotArea, availability, keyFacts[], address, street, district, city, postcode, agencyName, contactName, images[], imagesCount, isNew, isNewBuild, tags[], query, page, rank, scrapedAt.
Use cases
- Relocation and flat hunting: watch a city or district with a price ceiling and get alerted the moment a matching flat is listed.
- Investors and market research: collect price, area, rooms and postcode across districts to compute €/m² by area.
- Proptech pipelines: feed a normalised German listing stream into your own dashboard without writing a parser.
How it works
The actor requests immowelt result pages and reads the structured listing data embedded in them. immowelt serves complete pages only to German residential IPs, so traffic is routed through Apify's residential proxy pinned to Germany — you configure nothing, but Apify bills that traffic on top (about 1.2 MB per page). Either give locations plus filters, or paste searchUrls straight from the site. In monitor mode the current result set is compared with the previous run of the same Task and only new or re-priced listings are pushed, with an optional webhook or Telegram summary.
Input
| Field | Meaning | Default |
|---|---|---|
distribution | rent (Mieten) or buy (Kaufen) | rent |
estate | apartment (Wohnung) or house (Haus) | apartment |
locations | German city names, e.g. ["Berlin"] | ["Berlin"] |
priceTo | Maximum Kaltmiete or Kaufpreis in EUR, e.g. 1500 | — |
roomsFrom | Minimum rooms, e.g. 3 | — |
areaFrom | Minimum living area in m², e.g. 60 | — |
searchUrls | Any immowelt.de/suche/... URLs; overrides the fields above | — |
maxPages | Result pages per search (see Limits) | 1 |
maxItems | Stop after this many listings | 20 |
mode | scrape, or monitor for new/changed only | scrape |
webhookUrl, telegramBotToken, telegramChatId | Where monitor-mode change summaries are sent | — |
Pricing
| Event | Price |
|---|---|
| result | $0.001 per listing ($1 per 1,000) |
| monitor-check | $0.005 per monitor run |
| change | $0.001 per new/changed listing |
Charged only for listings actually pushed — an empty run costs you nothing. immowelt serves full pages to German residential IPs; Apify bills that proxy traffic on top (about 1.2 MB per page).
Why this actor
- German exits are pinned automatically, so immowelt returns full result pages instead of a stub.
- Price type is kept (
KaltmietevsWarmmietevsKaufpreis), which is what makes German rent data comparable at all. - Address is both raw and split into street, district, city and postcode — ready to group by area.
- Any immowelt search URL can be pasted in, so filters you trust on the site are preserved.
- Monitor mode with new-listing and price-change alerts, delivered by webhook or Telegram.
Limits
- 32 listings per search. immowelt loads further result pages client-side; run several narrower searches (district URLs, price bands, room counts) — duplicates across searches are never charged.
- Exposé pages are not opened: full description, energy data and contact phone are not included (
urlleads to the exposé). - Residential traffic is billed by Apify on top of the per-result price.
FAQ
Can I monitor new listings for a search? Yes. Save the input as a Task, set mode: monitor and schedule it — each run returns only listings that appeared or changed price since the previous run, and can POST a summary to webhookUrl or a Telegram chat.
Why do I only get 32 listings per search? immowelt renders just the first 32 results server-side and loads the rest in the browser. Split the search instead: one run per district URL, price band or room count. Duplicates across those searches are never charged.
Can I use my own immowelt filter URL? Yes — put one or more immowelt.de/suche/... URLs into searchUrls and they override distribution, estate and locations, keeping every filter you set on the site.
Changelog
- 0.1: initial release.
If this actor saved you time, please leave a review on its Store page — it is the main way other buyers find it. Bug reports and field requests are welcome in the Issues tab.