Kompass Scraper | B2B Companies & Products Directory avatar

Kompass Scraper | B2B Companies & Products Directory

Pricing

from $2.20 / 1,000 results

Go to Apify Store
Kompass Scraper | B2B Companies & Products Directory

Kompass Scraper | B2B Companies & Products Directory

Scrape Kompass B2B companies & products across ~70 country sites. Company/product search, details, region & sector browse. Export Excel/CSV/JSON. Unofficial — not affiliated with Kompass.

Pricing

from $2.20 / 1,000 results

Rating

0.0

(0)

Developer

kane liu

kane liu

Maintained by Community

Actor stats

1

Bookmarked

4

Total users

3

Monthly active users

8 days ago

Last modified

Share

Kompass Scraper | B2B Companies, Phones & Emails

Scrape Kompass B2B company and product directory data across ~70 country sites — then download structured supplier rows as Excel, CSV, or JSON.

Use this Actor as a practical Kompass company directory scraper / B2B lead API. Company-detail rows include public phones, emails, street address, and executive names when the page publishes them. Search cards are thinner (collapsed tel: / city–country, no company email or street). Choose a mode, pick a country subdomain (for example au.kompass.com, fr.kompass.com, de.kompass.com), set a keyword or detail URL, and get Dataset rows with Kompass IDs plus those contact fields.

  • Scrape company search and product search (/searchCompanies with scroll pagination)
  • Pull company details (JSON-LD + HTML tel: / executives) and product details (catalog fields; no company phones)
  • List a company's products (/c/p/...)
  • Browse region directories (/r/{slug}/{code}/) and sector / category pages (/a/{slug}/{id}/)
  • Cover ~70 country subdomains (do not use www.kompass.com — it is a gateway only). Full company-detail contact is verified on AU + FR; other countries share the same templates but were not opened this cycle
  • Export to Excel / CSV / JSON, or connect Make, n8n, Zapier, Python, or the Apify API
  • Pay per event — Actor start + each Dataset result; platform usage is included (you do not pay separate Apify compute on top)

Unofficial tool. This Actor is not affiliated with, endorsed by, or sponsored by Kompass International / Kompass.com. It collects publicly reachable directory pages and does not log in, purchase lead lists, open EasyBusiness / Hipay paid modules, or submit RFQ / contact forms on your behalf.


What does the Kompass Scraper do?

Kompass Scraper lets you extract structured B2B company and product data from Kompass country sites without running your own anti-bot browser fleet. Give it a keyword, company URL, product URL, region URL, or sector ID, then start a run.

Under the hood, the Actor:

  1. Validates your input (mode, country, query, URLs)
  2. Enforces free-tier caps when you are on a free Apify plan
  3. Fetches public Kompass listing and detail pages (enrichDetails defaults on, so list rows follow company URLs)
  4. Normalizes company / product rows into a clean Dataset, including Lead / Contact fields
  5. Writes INPUT_ECHO, RUN_SUMMARY (and ERROR_SUMMARY on failure) to the key-value store

You run it like any other Apify Actor — schedule it, call it from the API, or plug it into automations.


What Kompass data can I extract?

DataCompany searchProduct searchCompany detailProduct detailRegion / Sector
kompassId / companyIdrelated*related*✅*
name / title
url / slug
descriptionsnippet*snippet*snippet*
location / city / country✅*✅*✅*✅*
phones[] (HTML tel:)✅* collapsed✅*
emails[]✅*— (needs enrich)
address.street / 门牌— (needs enrich)
person / executives✅*— (needs enrich)
website / socials✅*
productId / companyNameproducts list

*Search cards already contain collapsed tel: in the HTML (the worker does not click the phone icon). Company email and street live on the company detail page. enrichDetails defaults on so list rows follow those URLs. Product pages have no company phones. Contact fields are not redacted.


Lead / Contact fields

Every Dataset item carries the following contact / clue keys. Empty top-level lead keys are paired with a leadAbsences reason (本站无 / 闸门锁 / 部分 / 未验证) so you know why a field is missing. Nested address sub-fields such as unit / region may simply be unset.

FieldTypeMeaning on Kompass
phones[{value, type, e164?}]Landline / fax from HTML tel: (preferred) or JSON-LD telephone. Search-card sample: GRUNDFOS +49 211 929 69 0 in .collapse.freePhone. Detail sample: IPO 4 72 33 61 50.
emails[{value, type}]Company mailbox from JSON-LD ContactPoint on company detail (e.g. infos@ipo-sa.com, infoservice@grundfos.de). List cards have no company mailto.
address{street, unit, locality, region, postalCode, country, full}Detail street + 门牌. unit = 门牌 (building number), e.g. street 84 AVENUE DES BRUYERES, unit 84, 69150 DECINES-CHARPIEU, FR. List cards are city–country only.
geo{lat, lng}JSON-LD coordinates in addition to street, not instead (IPO 45.76606, 4.941721).
person{name, role?}Executive block on company detail (e.g. Herr Martin Palsa / CEO). List cards: 本站无. Names are often glued to titles/languages.
org{name, id?}Company name + Kompass id (FR8380178, DE606993).
web{website, socials[]}Company website plus social URLs when present. Socials can be noisy (employee LinkedIn profiles mixed with the company page).
leadSourceenumsearch | detail | entity (region/sector cards).
leadRevealenumvisible (number already in HTML / JSON-LD) | gated (empty hiconnect tel:) | absent. Not xhr — analytics does not return the number.
leadAbsencesobjectPer-subfield reason when empty.

Legacy aliases phone / email / website stay on the row (first phone / first email / web.website) so older Dataset views keep working.

Reveal cost

enrichDetails defaults on. That is the extra cost: one company-detail fetch per list row (longer run, more worker traffic / proxy). You do not pay a second PPE event for the enrich itself — you are still charged once per Dataset item.

On the page itself there is no click-to-unlock XHR for the number:

  • Search cards already store tel: inside .collapse.freePhone (display:none until the phone icon). The worker parses the HTML and does not click #switchPhone.
  • Company detail CONTACT US opens a Hipay CSS overlay (contactCompanyHipayModal) that shows the same number already in the page.
  • GET /analyticsData/?event=company_tel_clic is analytics only — the response does not contain phone digits. The worker does not call it to obtain numbers.
  • Empty tel: on .freePhoneNumber-hiconnect is a call gate (闸门锁). The Actor does not click it or start a call.

Live-chain company URLs often return DataDome 403 to bare HTTP. The hosted worker uses an unlocker / browser rung for search and those details. Old cached URLs can still 200 on plain HTTP; that is not a reason to drop the unlocker.

Honest limitations

  • List / search cards have no company email and no street. Cards show city–country text (e.g. Erkrath - Germany). Set enrichDetails: true (the default) to pull email / 门牌 / person from company detail.
  • Product pages have no company phones. Product rows keep parent org; phones / emails are empty with leadAbsences = 本站无 (or 闸门锁 when hiconnect tel: is empty). Do not invent the parent company's contact onto a product SKU.
  • JSON-LD telephone is often truncated (Grundfos JSON-LD 929 69 0 vs tel:+49 211 929 69 0). The worker prefers tel: href / visible text.
  • VAT / SIRET / employee ranges are not phones. Values such as DE134888633, 379 633 068, 1000-4999 are registry or headcount, not contact numbers. (French national numbers like 4 72 33 61 50 are kept.)
  • dpo@kompass.com is the platform DPO mailbox, not the listed company's email. It is ignored.
  • Person names are often glued to role and language chips (sample: M. Olivier DIETLIN Président du Groupe Langues parlées fr). role may be null.
  • web.socials can include employee LinkedIn URLs scraped from the profile page, not only the company page.
  • hiconnect empty tel: = 闸门锁, not clicked. Hipay / EasyBusiness paid extras (more exec phones, extra mailboxes) are 未验证.
  • No login, no RFQ. The Actor does not sign in, submit “I want to get more details”, or buy Kompass lead packs.
  • ~70 country subdomains are in the country list; not all were opened. Opened this cycle: AU company search / product / region / sector, plus FR company detail. Remaining countries/modes stay 未验证 even when the HTML looks the same.
  • Contact fields are never redacted on free-tier sample runs. Empty means the public page did not publish that subfield (see leadAbsences).

Why scrape Kompass?

Kompass is a long-running global B2B business directory used to find manufacturers, distributors, and service companies by country, keyword, region, and industry sector. Teams scrape Kompass for supplier shortlists, market mapping, lead enrichment, and catalog research:

  • Run company or product keyword search on a chosen country site
  • Open company and product detail pages for richer attributes
  • Browse region and sector directories for local / industry slices
  • Feed CRM, BI dashboards, Google Sheets, BigQuery, or AI agents with clean rows
  • Avoid maintaining your own DataDome / residential browser stack

Compared with generic URL scrapers, this Actor returns Kompass-specific fields (kompassId, company/product URLs, country subdomain context) across search, detail, region, and sector modes.


More Actors like this

Need another B2B marketplace, supplier directory, or a different vertical? Use a dedicated Actor below for structured fields. Use this Actor for Kompass country sites (*.kompass.com).

Similar B2B & e-commerce scrapers

Prefer another specialized scraper?

If your target has a specialized Actor below, use that first — usually cheaper and more structured than a generic scrape.

Jobs & Freelance

Real Estate

Travel & Stays

Social & Content

Ads Intelligence

Local & Maps

General Tools

→ See the full catalog in Related Actors below, or browse apify.com/lentic_clockss.


How to scrape Kompass (no code required)

  1. Create a free Apify account
  2. Open Kompass Scraper
  3. Choose a mode: company_search, product_search, company, company_products, product, region, or sector
  4. Select a country subdomain (default au) — for example de, fr, us, gb, in
  5. Enter a query (e.g. software, packaging) — or a companyUrl / productUrl / regionUrl / sectorId
  6. Leave enrichDetails on (the default) so list rows pick up company-detail phones / emails / street. Turn it off only if you want thin cards. Optionally set maxResults / maxPages
  7. Click Start and download the Dataset as JSON, CSV, Excel, or JSONL

Start with maxResults: 5–15 to verify the query, then scale up.


How much does it cost to scrape Kompass?

This Actor uses pay-per-event pricing. You are charged for:

EventPrice
Actor Start (apify-actor-start)$0.005 per start
Result (apify-default-dataset-item)$3.00 / 1,000 results ($0.003 each on FREE/BRONZE)

Platform usage costs are included — you do not pay separate Apify compute/proxy usage for this Actor on top of the event prices above (User pays platform usage costs = No).

Volume discount tiers (per result)

Tier$/1,000per result
FREE*$3.00$0.003
BRONZE$3.00$0.003
SILVER$2.60$0.0026
GOLD$2.20$0.0022
PLATINUM$2.00$0.002
DIAMOND$1.60$0.0016

*FREE matches BRONZE for this Actor.

Example cost estimates (FREE/BRONZE)

Results collectedApprox. event cost*
100~$0.31
1,000~$3.01
10,000~$30.01

*Assumes one Actor start at default memory billing for start events, plus $0.003 per Dataset item. Exact start billing can scale with allocated memory (one start event per GB, minimum one).

Free plan limits

On a free Apify plan, this Actor enforces developer limits of 10 runs and 200 results per run. Upgrade to a paid Apify plan for unlimited runs (event prices still apply). These limits are set by the Actor developer, not by Apify.


Input examples

{
"mode": "company_search",
"country": "au",
"query": "software",
"maxResults": 20,
"maxPages": 3,
"enrichDetails": true
}
{
"mode": "product_search",
"country": "de",
"query": "hydraulic pump",
"maxResults": 30,
"maxPages": 2
}

Company detail

{
"mode": "company",
"country": "fr",
"companyUrl": "https://fr.kompass.com/c/ipo-technologie/fr8380178/",
"maxResults": 5
}

Company products list

{
"mode": "company_products",
"country": "au",
"companyUrl": "https://au.kompass.com/c/ipo-technologie/fr8380178/",
"maxResults": 50
}

Product detail

{
"mode": "product",
"country": "au",
"productUrl": "https://au.kompass.com/p/example-category/example-product/brand/id/",
"maxResults": 5
}

Region browse

{
"mode": "region",
"country": "au",
"regionUrl": "https://au.kompass.com/r/victoria-australia/au_vic/",
"maxResults": 40
}

Sector / category browse

{
"mode": "sector",
"country": "au",
"sectorId": "60",
"maxResults": 40
}

Multiple keywords

{
"mode": "company_search",
"country": "us",
"searchQueries": ["packaging", "bearings", "consulting"],
"maxResults": 60
}

Coverage matrix

DimensionCoverage
Countries~70 Kompass country subdomains (aeza; default au). Do not use www.kompass.com (gateway only). Detail contact verified on AU + FR; other countries 未验证.
Modescompany_search · product_search · company · company_products · product · region · sector
Search/searchCompanies?text=…&searchType=COMPANYNAME|PRODUCT + scroll pagination
DetailsCompany/product JSON-LD and page fields on detail URLs
Region/r/{slug}/{code}/ browse
Sector/a/{slug}/{id}/ category browse (numeric ID is the stable key)

Output example

{
"type": "company",
"country": "fr",
"name": "IPO TECHNOLOGIE",
"title": "IPO TECHNOLOGIE",
"url": "https://fr.kompass.com/c/ipo-technologie/fr8380178/",
"kompassId": "FR8380178",
"companyId": "FR8380178",
"phones": [{ "value": "4 72 33 61 50", "type": "landline" }],
"emails": [{ "value": "infos@ipo-sa.com", "type": "work" }],
"address": {
"street": "84 AVENUE DES BRUYERES",
"unit": "84",
"locality": "DECINES-CHARPIEU",
"region": null,
"postalCode": "69150",
"country": "FR",
"full": "84 AVENUE DES BRUYERES, 69150, DECINES-CHARPIEU, FR"
},
"geo": { "lat": 45.76606, "lng": 4.941721 },
"person": {
"name": "M. Olivier DIETLIN Président du Groupe Langues parlées fr",
"role": null
},
"org": { "name": "IPO TECHNOLOGIE", "id": "FR8380178" },
"web": { "website": "https://www.ipo-sa.com", "socials": ["https://www.linkedin.com/company/ipo-technologie"] },
"leadSource": "detail",
"leadReveal": "visible",
"leadAbsences": {},
"source": "kompass",
"scrapedAt": "2026-08-25T09:51:00+00:00"
}

FAQ

Is this an official Kompass tool?

No. It is an unofficial third-party Actor and is not affiliated with Kompass International.

Do I need to log in or buy leads?

No. The Actor only uses publicly reachable listing/detail pages. It does not log in, open EasyBusiness, click hiconnect call, submit RFQ / “get more details”, or buy Kompass lead packs. EasyBusiness extras after login were not verified.

Are phone and email hidden on free-tier runs?

No. Public contact fields are written as the page shows them. Empty phones / emails / address.street means the public surface did not publish that subfield — see leadAbsences. Nothing is stripped for free-tier samples.

Why must I pick a country instead of www.kompass.com?

www.kompass.com is a country/language gateway. Real search and directory pages live on country subdomains such as au.kompass.com or de.kompass.com.

What happens on a free Apify plan?

You get up to 10 runs of this Actor and 200 results per run (limits set by the Actor developer). Paying Apify users are not capped by those run quotas; PPE event prices still apply.

Can I use this from the API / Standby?

Yes. Use normal Actor runs for production Dataset output. Standby exposes lightweight /health, /input-example, /openapi.json, and optional preview routes — see the Standby OpenAPI schema packaged with the Actor.


Tips for better runs

  • Prefer a country that matches your market (proxy geography follows the country code)
  • Leave enrichDetails on unless you only need thin search cards (no email / street / person)
  • Start small (maxResults: 5–20) before large crawls
  • For sector browse, the numeric sector ID is more reliable than the slug alone
  • Scroll pagination keeps session context — do not expect text= on every scroll URL
  • Schedule daily/weekly runs for supplier monitoring instead of one huge scrape

Runtime

SettingValue
Default memory1024 MB
Timeout default3600 s
StandbyEnabled (lightweight Live-view)
Free plan caps10 runs / 200 results per run

All 77 public Actors from [lentic_clockss]. Click a name to open the Store detail page.

Jobs & Freelance

Real Estate

E-commerce

Travel & Stays

Social & Content

Ads Intelligence

Local & Maps

General Tools

→ Browse the full profile: apify.com/lentic_clockss