Funda.nl Search Scraper
Pricing
$4.00 / 1,000 results
Funda.nl Search Scraper
Dutch real estate search on funda.nl (Netherlands). Homes to buy or rent: price as a number and as published, address, postcode, city, living area, rooms, bedrooms, construction year, energy label, property type, broker ID. Search by city and price, or from a funda URL. An empty run is free.
Pricing
$4.00 / 1,000 results
Rating
0.0
(0)
Developer
Javier Jimenez
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Searches funda.nl, the Dutch real-estate portal, by city, price and listing type, and returns the listings it finds.
It reads the public pages the same way a browser does — no headless browser and no private search API — so a run is quick and there is nothing to time out or fall out of sync with. New-build listings, which write their measurements as "ca. 67 m²", are parsed too rather than skipped. You are charged per listing returned, so a search that finds nothing costs nothing.
Input
| Field | Type | Description |
|---|---|---|
location | string | Dutch city to search in, e.g. amsterdam. Ignored if searchUrls is set. Default amsterdam. |
operationType | string | buy (koop) or rent (huur). Default buy. Ignored if searchUrls is set. |
minPrice | integer | Lower bound of the asking price, in euros. Optional. |
maxPrice | integer | Upper bound of the asking price, in euros. Optional. |
searchUrls | array | Optional. Exact funda.nl search-result or single-listing URLs, as plain strings or {"url": "..."} objects. Overrides the fields above. |
maxItems | integer | Maximum number of listings to return. Default 20. |
Press Start with the defaults and it searches Amsterdam for properties for sale. Calling the
actor with a genuinely empty input (no location and no searchUrls, e.g. via the API) fails
fast with a clear message instead of guessing a destination.
Output
One item per listing.
| Field | Description |
|---|---|
url | Link to the listing. |
address | Street name and house number. |
city | City. |
postalCode | Dutch postal code, null if funda didn't expose it for this listing. |
price | Asking price in euros as a number, null when the listing says "price on request". |
priceText | Price exactly as funda shows it, including cost conditions. |
livingArea | Living area in m². |
rooms | Total number of rooms. |
bedrooms | Number of bedrooms, when funda breaks it out separately. |
builtText | Construction date exactly as funda publishes it: an exact year or a period (e.g. "1931-1944"). |
yearBuilt | Exact year of construction as a number, null when funda only gives a period (see builtText). Never guessed from a period. |
energyLabel | Dutch energy label (A–G), null if not available. |
propertyType | Kind of house or apartment. |
brokerId | Numeric id of the listing agency on funda.nl, null if not found. See Limits for why this is the only broker field. |
Pricing
Pay per result: $0.004 per listing actually written to the dataset. Nothing is charged for a search that returns zero listings, and the run respects whatever spending cap you set.
Data source and limits
- Source: the public HTML of funda.nl, read with an HTTP client that identifies itself as Chrome. No headless browser, and no use of funda's internal search API.
- Rate: a few seconds between requests, one session reused across a run.
- The date a listing first went online, and the agency's name and contact details, are hidden by
funda from every anonymous visitor on every listing — this is a limit of the source, not a
parsing gap. Neither field is returned.
brokerId, a numeric id visible in the listing's "report this ad" link, is the only honest way to tell listings from the same broker apart. - No personal data of individual real-estate agents (name, phone, email) is collected.
- If funda ever starts blocking these requests, the run reports an unreachable-source error and does not charge, rather than guessing.
- If a single listing fails to parse, it's skipped and counted, and the run continues with the rest — the status message reports how many were skipped. If more than 20% of the requested listings fail to parse, the run fails instead: at that point it's not one odd listing, funda's page layout has likely changed.
Support
If a run fails or a field comes back wrong, open a ticket in the Issues tab of this Actor: it is the only channel where the author can see your report, and it gets answered. Every failed run carries a status message that says what went wrong. Results are pushed in a single batch at the end of the run, so a run that fails is never charged.