Funda Property Extractor avatar

Funda Property Extractor

Pricing

from $6.99 / 1,000 results

Go to Apify Store
Funda Property Extractor

Funda Property Extractor

Funda property extractor that collects Dutch housing listings from funda.nl, so anyone tracking prices, comparing neighborhoods, or researching the Netherlands real estate market gets structured data fast.

Pricing

from $6.99 / 1,000 results

Rating

0.0

(0)

Developer

Kawsar

Kawsar

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Extract structured property listings from funda.nl, the largest real estate marketplace in the Netherlands. Paste one or more funda.nl search URLs and the actor delivers clean, structured data for every listing — addresses, prices, living areas, energy labels, neighborhoods, agent details, and photos — for both sale and rental properties across all Dutch cities.

Pagination is handled automatically. No browser required. No manual copying.


What data does this actor extract?

Each listing returns up to 24 structured fields. Fields that carry no data for a given listing are omitted from the output, keeping your dataset clean.

FieldTypeDescription
listingIdstringFunda internal object ID
urlstringFull URL to the listing detail page
addressstringStreet name and house number
postalCodestringDutch postal code, e.g. 1091 GH
citystringCity name
neighborhoodstringNeighborhood or district within the city
priceintegerAsking price in euros
priceTextstringPrice as displayed on funda.nl, e.g. € 425.000 k.k.
priceConditionstringk.k. (buyer pays transfer costs) or v.o.n. (seller pays)
livingAreaintegerInterior living space in m²
plotAreaintegerPlot or land area in m² (houses only)
roomsintegerTotal number of rooms
bedroomsintegerNumber of bedrooms
propertyKindstringProperty category, e.g. Appartement, Tussenwoning, Hoekwoning
energyLabelstringEnergy certificate: A, A+, B, C, D, E, F, or G
listingDatestringISO 8601 date the listing was first published
mainImageUrlstringPrimary listing photo URL
imageUrlsarrayAll photo URLs for the listing
agentNamestringReal estate agent or broker name
agentUrlstringAgent profile page URL on funda.nl
statusstringte koop (for sale) or te huur (for rent)
transactionTypestringkoop (sale) or huur (rental)
shortDescriptionstringFeatured listing teaser text, where available
scrapedAtstringISO 8601 timestamp of when this record was collected

How to use

Step 1 — Copy a search URL from funda.nl

  1. Open funda.nl in your browser
  2. Use the search bar and filters to narrow down listings (city, price range, property type, area, etc.)
  3. Copy the full URL from the address bar

Examples:

https://www.funda.nl/zoeken/koop/?selected_area=%5B%22amsterdam%22%5D
https://www.funda.nl/zoeken/huur/?selected_area=%5B%22rotterdam%22%5D&price_max=2000
https://www.funda.nl/zoeken/koop/?selected_area=%5B%22utrecht%22%5D&floor_area_min=80&price_max=500000

Step 2 — Paste into the actor input

Open the actor input form and paste your URL(s) into the Search URLs field. You can add multiple URLs to scrape several cities or filter sets in a single run. Each URL is processed independently and the maxItems limit applies per URL.

Step 3 — Run and export

Click Start and the actor will paginate through results automatically. When the run finishes, export your dataset as JSON, CSV, Excel, or JSONL from the Storage tab.


Input parameters

ParameterTypeDefaultDescription
searchUrlsarrayOne or more funda.nl search URLs to scrape
maxItemsinteger15Maximum listings to collect per URL, up to 1000
requestTimeoutSecsinteger30Per-request timeout in seconds (5–120)

Example output

{
"listingId": "44454713",
"url": "https://www.funda.nl/detail/koop/amsterdam/appartement-eerste-atjehstraat-152-c/44454713/",
"address": "Eerste Atjehstraat 152-C",
"postalCode": "1094 KW",
"city": "Amsterdam",
"neighborhood": "Timorpleinbuurt-Zuid",
"price": 475000,
"priceText": "€ 475.000 k.k.",
"priceCondition": "k.k.",
"livingArea": 50,
"rooms": 2,
"bedrooms": 1,
"propertyKind": "Appartement",
"energyLabel": "C",
"listingDate": "2026-05-21",
"mainImageUrl": "https://cloud.funda.nl/tiara-media/e8bc9f2a-ba85-4bd9-879a-279142b455e7/d0114dff-0c33-42c6-a50a-afb66845c1af?options=width=720",
"imageUrls": [
"https://cloud.funda.nl/tiara-media/e8bc9f2a-ba85-4bd9-879a-279142b455e7/d0114dff-0c33-42c6-a50a-afb66845c1af?options=width=720",
"https://cloud.funda.nl/tiara-media/e8bc9f2a-ba85-4bd9-879a-279142b455e7/27533cfd-16d1-423e-97ef-e0e04a87eaa6?options=width=464"
],
"agentName": "Hellema Makelaars",
"agentUrl": "https://www.funda.nl/makelaar/5098-hellema-makelaars/",
"status": "te koop",
"transactionType": "koop",
"shortDescription": "Stijlvol en instapklaar wonen op een toplocatie in Amsterdam!",
"scrapedAt": "2026-05-21T14:30:00+00:00"
}

Use cases

Price tracking and market analysis Monitor asking prices across Amsterdam, Rotterdam, Utrecht, Den Haag, or any Dutch city. Run the actor on a schedule to build a time-series dataset and spot trends in specific neighborhoods or property types.

Investment research Filter by energy label, living area, and price range to identify properties that match your investment criteria. Export to Excel or connect to a BI tool to compare yields across different areas.

Rental market monitoring Track rental price movements and availability in target neighborhoods. Use the huur transaction type to pull rental listings and monitor supply week over week.

Multi-city comparison Supply multiple search URLs in one run — one per city or filter set — to compare markets side by side in a single dataset.

Property portfolio tools Feed listing data into your own platform, CRM, or alerting system. The structured JSON output integrates with any workflow using Apify's built-in webhooks and integrations.

Academic and journalistic research Collect large samples of Dutch housing market data for statistical analysis, reporting, or visualization projects.


Pagination and limits

The actor follows funda.nl pagination automatically. Each search results page returns 15 listings. The actor continues fetching pages until it reaches maxItems for that URL or there are no more results.

The maxItems limit applies per URL. If you supply three search URLs with maxItems set to 100, the actor will collect up to 100 listings from each URL, for a potential total of 300. The maximum value per URL is 1000.


Output format

Results are written to the default Apify dataset and can be exported in:

  • JSON — one object per listing, full field set
  • CSV — flat table, one row per listing
  • Excel (XLSX) — same as CSV, formatted for spreadsheet tools
  • JSONL — newline-delimited JSON for streaming or big-data pipelines
  • XML — for legacy integrations

Fields with no data for a given listing are omitted from the record rather than returned as null.


FAQ

Can this actor scrape both sale and rental listings? Yes. Paste a zoeken/koop/ URL for sale listings or a zoeken/huur/ URL for rentals. You can mix both in the same run by adding URLs of each type to searchUrls.

Does it paginate automatically? Yes. The actor fetches every page of results for each URL until it reaches your maxItems limit or runs out of listings.

What is maxItems — total or per URL? Per URL. If you supply two URLs and set maxItems to 50, the actor collects up to 50 listings from each URL.

Can I scrape multiple cities or filter sets at once? Yes. Add one URL per city or filter combination to the searchUrls field. All URLs are processed in sequence within a single run.

How do I build a filtered search URL? Apply your filters on funda.nl (city, price range, living area, property type, energy label, etc.) and copy the URL from the address bar. The URL encodes all your selected filters automatically.

What does k.k. mean? k.k. is kosten koper — the buyer pays transfer tax and notary fees on top of the listed price. v.o.n. is vrij op naam — those costs are covered by the seller. The priceCondition field records whichever applies.

Are new-build properties included? Yes. Filter by new-build on funda.nl (nieuwbouw in the object type filter) and paste that URL into the actor.

How fresh is the data? The actor reads the live funda.nl website at the time of each run, so data reflects what is currently listed. Run the actor on a schedule to keep your dataset current.

What happens if a field has no data? Fields with no value for a specific listing are omitted from that record entirely. You will never see null values in the output.