ParseForge Scrapers

Netherlands KVK Scraper

parseforge/netherlands-kvk-scraper

Lead generationOther

Scrapes Dutch company profiles from the KVK Handelsregister by company name or KvK number. Returns each record with registered name, address, SBI codes, legal form, and founding date.

Run this scraper See the API call
Total users
16
Monthly active
3
Total runs
312
Bookmarked
0
Rating
Not rated yet
Last modified
9 days ago

Overview

ParseForge

Netherlands KVK Scraper

Scrape Dutch company records from the KVK Handelsregister by name or KvK number, up to a million per run. Every record returns the registered name, address, SBI activity codes, and founding date. No login or API key. Export to CSV, JSON, Excel, or XML.

The official KVK Handelsregister API requires registration, authentication, and strict rate limits. This Actor reads the public company registry directly, searching by company name or KvK number, and returns each matching Dutch business record in one consistent schema. It is built for bulk lookups, market mapping, and compliance checks that need fresh data without the overhead.

Who uses it What they scrape Netherlands KvK for
Compliance officers Verify a Dutch company's registration status and registered address against a sanctions or vendor list.
Sales and marketing teams Build a prospecting list of Dutch businesses filtered by SBI activity code and location.
Financial analysts Pull founding dates and legal forms for a portfolio of Dutch entities to assess corporate age and structure.
Data aggregators Enrich an existing company database with the latest KVK registered names and addresses.

What it does

This Actor collects Dutch company profiles from the KVK Handelsregister by company name or KvK number and returns each one as a flat row.

  • πŸ” Search by name: type a full or partial company name and get every matching registration.
  • πŸ”’ Search by KvK number: enter an 8-digit KvK number to pull the exact record instantly.
  • πŸ“Š Bulk extraction: set maxItems up to 1,000,000 and pull thousands of records in one run for large-scale mapping.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

What you can do with Netherlands KvK data

πŸ“‹ Vendor due diligence.

A compliance team runs a list of supplier names through the Actor to confirm each one is an active registration and to flag any address mismatches.

πŸ—ΊοΈ Market mapping.

A consultant searches by SBI code and city to list every active Dutch business in a niche, then exports the CSV for a competitive landscape report.

🧹 CRM enrichment.

A sales ops manager matches a customer list against the KVK registry by KvK number to fill in missing legal names and registered addresses before a campaign.

πŸ“ˆ Portfolio age analysis.

An analyst pulls founding dates for a set of Dutch holdings to calculate average company age and spot young, high-growth entities.

Why choose this scraper

What you get
No API key Reads the public registry directly, no KVK developer account needed.
Fixed schema Every record lands with the same fields, ready for your database or spreadsheet.
Bulk ready Pull up to a million records per run when you need the whole market.

How it compares

No other Store actor targets Netherlands KvK the same way, so the honest comparison is with the alternatives teams actually weigh.

Netherlands KVK Scraper Build it in-house By hand
Setup Run it now, zero config Days of engineering None, but hours per pull
When Netherlands KvK changes Maintained for you You fix it You re-learn the page
Proxies, retries, anti-bot Built in Your problem Browser only
Output Fixed JSON schema, CSV/Excel export Whatever you build Copy-paste
Cost Pay per result Engineering time Analyst hours

Configure the run

Drive the Actor with a company name or a KvK number, and set a maximum number of records to cap the run. The Input tab lists every parameter.

A first run with the defaults:

{
  "maxItems": 10,
  "query": "heineken"
}

A larger pull:

{
  "maxItems": 200,
  "query": "heineken"
}

Pricing

Pay-per-result: $0.021 per result collected. You pay only for the results written to your dataset.

Results collected Approximate cost
100 results $2.10
1,000 results $21.00
10,000 results $210.00

New Apify accounts start with $5 in free credit.

Free users

Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.

Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the Netherlands KVK Scraper.
  3. Set your inputs and any filters, then click Start.
  4. Export the results as CSV, Excel, JSON, or XML from the Dataset tab.

Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.

Use with AI agents (MCP)

Give an AI agent live access to Netherlands KvK through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/netherlands-kvk-scraper"

Then prompt it in plain language to run the scraper and read back the results.

Troubleshooting

Why am I getting no results?

Check your query spelling. A KvK number must be exactly 8 digits. A name search returns only exact substring matches; try a shorter or different part of the company name.

The Actor returns fewer records than I expected.

The KVK public search may paginate or cap results. Try a more specific query or check if the companies you expect are active registrations. The Actor respects whatever the public site returns.

I hit the free user limit of 10 records.

Upgrade to a paid Apify plan to raise your maxItems limit. Paid users can pull up to 1,000,000 records per run.

The run timed out.

Large queries can take time. Increase the Actor's timeout in the run settings, or reduce maxItems to pull fewer records per run and split the work across multiple runs.

Some fields are empty in my dataset.

Not every KVK record contains every field. A company may lack a listed address or SBI code. Empty cells mean the public registry did not provide that data point for that company.

FAQ

Question Answer
Do I need a KVK API key to use this Actor? No. The Actor reads the public Handelsregister search pages directly. You do not need to register with KVK or manage any tokens.
What is the difference between searching by name and by KvK number? A name search returns every company whose registered name contains your query. A KvK number search returns exactly one record, the company tied to that 8-digit number.
How many records can I pull in one run? Free Apify users can pull up to 10 records. Paid users can set maxItems up to 1,000,000 and pull as many as the public search returns.
Which fields does each record contain? Each row includes the registered company name, address, SBI activity codes, legal form, founding date, and the KvK number itself. The exact field list is visible in the sample output on the Actor's page.
Can I filter by location or industry? The KVK public search does not expose location or SBI code filters directly. You can search by name or KvK number, then filter the resulting dataset by address or SBI code fields after the run.
Is the data real-time? The Actor reads the KVK Handelsregister at the moment you run it. You get the registration data as it appears on the public site that day.
Can I export the results to Excel? Yes. Apify supports CSV, JSON, Excel, and XML exports. Choose the format that fits your workflow.
Does this Actor work for eenmanszaken as well as BVs and NVs? Yes. The KVK Handelsregister includes sole proprietorships (eenmanszaken), private limited companies (BVs), public limited companies (NVs), and other legal forms. The Actor returns whatever the public search shows.
What is an SBI code? SBI codes are the Dutch Standard Business Classification codes that describe a company's main activity. Each KVK record includes one or more SBI codes.
Can I schedule this Actor to run weekly? Yes. Apify's scheduler lets you set a recurring run, for example every Monday, to keep your dataset fresh.

Related actors

Browse the full ParseForge collection for more scrapers.

πŸ†˜ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.

⚠️ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by Netherlands Chamber of Commerce (KVK). It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.

Input

FieldTypeWhat it doesDefault
maxItems integer Free users: 10. Paid: up to 1,000,000 10
query string Company name or KvK number heineken

Pricing

from $19.00 per 1,000 results

Charged forWhat it isPrice each
result Single result in the default dataset. $0.019 to $0.021

Tiered: the lower figure is the price on a higher Apify plan. Billing and the free credit live on Apify.

API

One POST returns the dataset directly. Same shape for every scraper in the library, so swapping the slug is the only change.

POST Β· run and get results
curl -X POST "https://api.apify.com/v2/acts/parseforge~netherlands-kvk-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "helloWorld": 123
  }'

Examples

Input that runs as-is.

input.json
{
  "helloWorld": 123
}

Reviews

No reviews yet. Be the first.

Issues

We build and maintain this scraper, so a problem with it comes to us. Report it on the Apify listing and the thread stays attached to the scraper where the next person can find it: open an issue.

Broken and urgent, or you would rather not post in public? Write to parseforge@protonmail.com and it reaches the people who wrote it.

Related scrapers

Run Netherlands KVK Scraper on Apify All scrapers