🏠 Immowelt Scraper - German Real Estate Listings avatar

🏠 Immowelt Scraper - German Real Estate Listings

Pricing

from $15.00 / 1,000 results

Go to Apify Store
🏠 Immowelt Scraper - German Real Estate Listings

🏠 Immowelt Scraper - German Real Estate Listings

Scrape rental and sale real estate listings from immowelt.de. Extract prices, sizes, locations, rooms, agent info. Perfect for real-estate analytics, agents, investors, and market research.

Pricing

from $15.00 / 1,000 results

Rating

0.0

(0)

Developer

Ben

Ben

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

13 days ago

Last modified

Share

🏠 Immowelt Scraper — German Real Estate Listings, Prices & Agent Contacts

Extract real estate listings from immowelt.de — one of Germany's largest property marketplaces — as clean, structured data. Pull apartments, houses, plots and commercial units for rent or sale, with price, size, rooms, address, district, postal code, agent name and photos on every listing. Filter by city, price, size and rooms, and optionally enrich each result with the full expose page (complete description, all images, agent phone and key facts like Baujahr and Energieausweis). Export to JSON/CSV/Excel, run on a schedule, call via API, or connect to Make, Zapier or n8n.

🏘️ What is the Immowelt Scraper?

It turns any immowelt.de search into a structured dataset. Give it one or more German city slugs (plus optional filters for transaction type, property type, price, size or rooms) and it returns every matching listing with full details — so agents, investors, analysts and lead-generation tools can monitor the German property market without manual browsing. You can also paste direct immowelt URLs (including ones with neighborhood filters from their UI) instead of using cities.

What data does it extract?

  • price_eur and price_label (Kaltmiete, Kaufpreis, Warmmiete, Gesamtmiete)
  • size_sqm, rooms and floor
  • title — listing headline / teaser
  • address, district, city and plz (postal code)
  • agent_name and image_url
  • tags (e.g. Neu, Balkon, Erstbezug)
  • expose_id and the listing url
  • search_city, transaction_type, property_type and scraped_at
  • With fetchDetails: full_description, all_images, agent_phone and facts (Baujahr, Energieausweis, etc.)

⬇️ Input

Run it two ways — search cities with filters, or pass exact immowelt URLs:

FieldDescription
citiesGerman city slugs as on immowelt.de, e.g. berlin, muenchen, hamburg, koeln
transactionTypemieten (rent, default) or kaufen (buy)
propertyTypewohnungen (apartments), haeuser (houses), grundstuecke (plots) or gewerbe (commercial)
startUrlsDirect immowelt URLs (overrides cities + transactionType + propertyType)
minPrice / maxPriceRent or purchase price filter in €
minSizeMinimum living space in m²
minRoomsMinimum number of rooms
fetchDetailsVisit each expose page for full description, all images, agent phone and key facts
maxResultsCap per city / URL (0 = unlimited)
delaySecondsPolite delay between requests (0.5–10)
proxyConfigurationApify proxy — DE residential is the default and strongly recommended

Example input

{
"cities": ["berlin", "muenchen"],
"transactionType": "mieten",
"propertyType": "wohnungen",
"minPrice": 500,
"maxPrice": 2000,
"minSize": 50,
"minRooms": 2,
"fetchDetails": true,
"maxResults": 100
}

⬆️ Output

Every listing is one clean row (view as a table, or export JSON / CSV / Excel):

{
"expose_id": "67594cd4-9542-428b-b83a-3b94650223a5",
"url": "https://www.immowelt.de/expose/67594cd4-9542-428b-b83a-3b94650223a5",
"title": "Schöne Altbauwohnung mit Balkon",
"price_eur": 1850.0,
"price_label": "Kaltmiete",
"size_sqm": 82.5,
"rooms": 3.0,
"floor": "2",
"address": "Hauptstraße 42",
"district": "Friedrichshain",
"city": "Berlin",
"plz": "10247",
"image_url": "https://mms.immowelt.de/...",
"agent_name": "Max Mustermann",
"tags": ["Neu", "Balkon", "Erstbezug"],
"search_city": "berlin",
"transaction_type": "mieten",
"property_type": "wohnungen",
"full_description": "Charmante 3-Zimmer-Altbauwohnung in ruhiger Lage...",
"all_images": ["https://mms.immowelt.de/...", "https://mms.immowelt.de/..."],
"agent_phone": "+49 30 12345678",
"facts": { "Baujahr": "1925", "Energieausweis": "B" },
"scraped_at": "2026-06-26T14:00:00+00:00"
}

full_description, all_images, agent_phone and facts are only included when fetchDetails is enabled.

💡 Use cases

  • 🏠 Agents — listing monitoring & lead generation: track new rentals and sales in your area and extract agent contacts for B2B outreach.
  • 💰 Investors — deal sourcing: filter buy-side opportunities by city, price and size, and watch price trends per district over time.
  • 📊 Market research & CMA: aggregate rental and sale data to build comparable-sales and valuation models.
  • 🚚 Relocation services: surface matching apartments and houses for relocating clients across multiple German cities.

❓ FAQ

How do I scrape immowelt.de listings? Enter one or more city slugs (e.g. berlin, muenchen), pick transactionType and propertyType, add optional price/size/room filters, then Run. You get structured listings with price, size, rooms, address, district, postal code, agent name and photos.

What's a city slug and where do I find it? It's the city name as it appears in an immowelt.de URL — lowercase, with German umlauts written out (e.g. muenchen for München, koeln for Köln). Popular ones: berlin, hamburg, muenchen, koeln, frankfurt, stuttgart, duesseldorf, leipzig.

Can I scrape specific neighborhoods? Yes — apply the neighborhood filter on immowelt.de, copy the resulting URL into startUrls, and the scraper will use it directly (this overrides the cities and type fields).

Can I get agent phone numbers and full descriptions? Yes — enable fetchDetails. The scraper then visits each expose page and adds full_description, all_images, agent_phone and a facts table (Baujahr, Energieausweis, etc.).

Does it cover both rentals and sales? Yes — set transactionType to mieten for rentals or kaufen for purchases, across apartments, houses, plots and commercial property.

Do I need an API key or login? No. It reads public immowelt.de listing pages — just provide cities (or URLs) and filters.

Do I need a proxy? A DE residential proxy is the default and strongly recommended to avoid blocks. You can adjust it in proxyConfiguration.

Does it include private (owner) listings too? Yes — it captures all public expose pages, whether posted by agents or private owners.

Can I run it on a schedule or via API? Yes — schedule recurring runs in Apify, call it via the API/SDK, or connect it to Make, Zapier or n8n for automated lead alerts.

Is scraping immowelt legal? It extracts publicly available listing data. Use it responsibly for research and lead generation, respect GDPR when handling agent contact data, and follow applicable laws and immowelt's terms.

🔗 You might also like


Keywords: immowelt scraper, immowelt.de scraper, German real estate scraper, Germany property data, rental listings Germany, Wohnung scraper, Haus kaufen data, real estate lead generation, property investor leads, immowelt API, real estate market research, DACH property data, agent contact extraction, Mieten Kaufen scraper.