Funda.nl Scraper: Dutch Real Estate, Energielabel, 35+ Fields
Scrape every property on Funda.nl, the Netherlands' #1 real estate portal with 93% brand awareness and 300,000+ active listings. Returns EUR asking price, original price (for price-reduction detection), price_per_m2, full address with Dutch postal code (e.g. 1015 BS), neighborhood, province, GPS, bedrooms, rooms, bathrooms, living area, plot size, year built, the complete Dutch energielabel set (A+++++, A++++, A+++, A++, A+, A through G), heating type (Cv-ketel, Stadsverwarming, Warmtepomp), construction type (Bestaande bouw vs Nieuwbouw), full Dutch omschrijving (3,000-6,000 chars), and every listing photo at full resolution. Both koop and huur markets.
What you can scrape
- Pricing: price (EUR), price_original (detects reductions), price_per_m2, price_currency, listing_type (koop or huur)
- Layout: bedrooms, rooms, bathrooms, living_area_m2, plot_size_m2 (for houses), year_built, property_type (apartment, house, villa, bungalow, parking, land)
- Location: address, street, postal_code (Dutch format with space, e.g. 1015 BS), city, neighborhood, province (Noord-Holland, Zuid-Holland, ...), latitude, longitude
- Dutch energy: energy_label (A+++++ through G, correctly handles all plus tiers), heating_type, construction_type
- Description: Full Dutch omschrijving as plain text, typically 3,000-6,000 chars
- Features: Amenity tags (Balkon, Tuin, Lift, Monumentaal pand, Vrijstaand, Isolatie level)
- Media: property_image_url, photos (30+ at full CDN resolution)
- Agent: agent_name (makelaar), agent_url, agent_phone and agent_email when publicly exposed
Common use cases
- Dutch market analysis. Track asking prices, time-on-market, and inventory trends across every Dutch city
- Amsterdam, Rotterdam, Utrecht investment research. Spot undervalued properties in high-growth neighborhoods using price_per_m2 deltas
- Rental yield (koop vs huur). Match buy listings to rentals on the same street and compute net cap rates
- Energielabel-aware valuation. Quantify price premium per energy tier from A+++++ to G, critical for Dutch green-mortgage research
- Daily price-change tracking. Run daily, diff against yesterday on listing ID and price_original to detect distressed sales
- Makelaar prospecting. Target Dutch agents based on listing volume, neighborhood share, and pricing tier
Pricing
- Actor start: $0.001 per run
- Search result (SERP): $0.003 per listing
- Full detail (description, all photos, year built, heating, rooms): $0.008 per listing
New to Apify? Every account gets a $5 free monthly platform credit, enough for around 1,600 SERP listings or 600 enriched detail listings before you commit to paying anything.
API example
curl -X POST "https://api.apify.com/v2/acts/santamaria-automations~funda-nl-scraper/runs?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"searchUrls": [
"https://www.funda.nl/zoeken/koop?selected_area=%5B%22amsterdam%22%5D&price=%22-500000%22"
],
"maxResults": 300,
"includeDetails": true
}'
Integrations
- n8n, Make, Zapier: trigger runs and pipe Dutch listings to Google Sheets, Airtable, or your CRM
- AI Agents (MCP): Claude Desktop, Cursor, VS Code, LangChain, LlamaIndex
- Python, Node.js: Apify SDK for programmatic access
- BI & warehouses: push JSON to BigQuery, Postgres, Snowflake for energielabel-aware valuation pipelines
Output fields (sample)
| Field | Type | Example |
| title | string | Aldengoor 2 |
| price | number | 3400000 (EUR) |
| price_per_m2 | number | 9341 |
| postal_code | string | 1083 AK |
| neighborhood | string | Buitenveldert-Zuidoost |
| province | string | Noord-Holland |
| living_area_m2 | number | 364 |
| plot_size_m2 | number | 689 |
| year_built | number | 1964 |
| energy_label | string | A+ |
Related Actors