How to Scrape 620,000 Austrian Businesses from WKO Firmen A-Z (Official Chamber of Commerce Directory)
If you are building a B2B lead generation pipeline for the DACH market, you need Austrian company data. And the best source is hiding in plain sight: the WKO Firmen A-Z directory, maintained by the Austrian Chamber of Commerce itself.
620,000+ businesses. Phone numbers. Email addresses. Websites. Industry classifications. All official. And until recently, no programmatic way to access any of it.
Here is how to scrape it.
What is WKO Firmen A-Z?
The Wirtschaftskammer Osterreich (WKO) is Austria's Chamber of Commerce. Every legally operating business in Austria is registered there. Their public directory, Firmen A-Z, lets anyone search for Austrian companies and view:
- Company name and legal form
- Physical address and Bundesland (state)
- Phone number and email
- Website URL
- Industry classification (WKO Fachgruppe)
- Trade licenses (Gewerbeberechtigungen)
This is not some scraped third-party database. It is the official government-affiliated register. The data quality is as high as it gets.
The catch? WKO never built an API. The directory runs on an ASP.NET WebForms site that loads results dynamically via JavaScript. If you have ever tried to scrape a WebForms site with plain HTTP requests, you know the pain.
The problem: no API, and WebForms makes it worse
Most business registries at least offer a search portal. WKO does too, but:
- No public API exists (confirmed - no REST, no GraphQL, nothing)
- The site uses ASP.NET WebForms with JS-loaded search results
- ViewState and event validation tokens make direct HTTP scraping unreliable
- Pagination requires maintaining session state
You can search manually at firmen.wko.at. But if you need 1,000 Austrian companies for a sales campaign, you are looking at days of manual copy-paste.
The solution: Apify WKO Business Directory Scraper
The Austria WKO Business Directory Scraper handles all of this automatically. It uses headless browser automation (Puppeteer with StealthPlugin) to navigate the WebForms site, execute searches, paginate through results, and return structured JSON.
Here is what a basic run looks like in Node.js:
import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });
const run = await client.actor('regdata/wko-business-directory-scraper').call({
searchQuery: 'softwareentwicklung',
maxResults: 100
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Scraped ${items.length} Austrian businesses`);
And in Python:
from apify_client import ApifyClient
client = ApifyClient(token="YOUR_APIFY_TOKEN")
run = client.actor("regdata/wko-business-directory-scraper").call(
run_input={
"searchQuery": "softwareentwicklung",
"maxResults": 100
}
)
items = client.dataset(run["defaultDatasetId"]).list_items().items
print(f"Scraped {len(items)} Austrian businesses")
What the output looks like
Each result comes back as clean JSON:
{
"companyName": "ExampleTech GmbH",
"address": "Mariahilfer Strasse 123/45",
"postalCode": "1060",
"city": "Wien",
"bundesland": "Wien",
"phone": "+43 1 234 56 78",
"email": "office@exampletech.at",
"website": "https://www.exampletech.at",
"industry": "Dienstleistungen in der automatischen Datenverarbeitung...",
"tradeLicenses": ["IT-Dienstleistung"],
"url": "https://firmen.wko.at/exampletech-gmbh/wien/..."
}
Phone, email, and website - the three things that actually matter for B2B outreach. Most business directories in Europe do not expose email addresses. WKO does. That is rare.
Real use case: SaaS company entering the Austrian market
Imagine you run a German SaaS company selling HR software. You have proven product-market fit in Germany and Switzerland. Austria is the natural next step in your DACH expansion.
You need Austrian companies with 50+ employees to target. Here is the workflow:
Search WKO by industry: "Personalberatung" (HR consulting), "Softwareentwicklung" (software development), "Unternehmensberatung" (management consulting) - target the companies that already buy HR services.
Extract with the actor: Run searches for each term, get structured contact data for every matching business.
Enrich with Firmenbuch data: Optionally cross-reference against Austria's commercial register (Firmenbuch) for company size, founding date, and legal status.
Load into your CRM: Export the JSON to HubSpot, Salesforce, or a simple CSV for cold outreach.
The whole pipeline runs in minutes instead of days. And because the data comes from the official Chamber of Commerce, it is more reliable than any purchased lead list.
How it compares to alternatives
There is one other WKO scraper on Apify: scrapyspider's firmen-wko-at-scraper. It is free but reports a ~50% success rate. The WebForms site is genuinely hard to scrape reliably.
Our actor uses:
- Puppeteer with StealthPlugin for anti-detection
- Proper session state management for pagination
- Comprehensive fallback logic for missing fields
- Validated against 620,000+ business listings
No residential proxy required. Unlike the Spain and France actors in our suite (which hit WAF-protected government portals), the WKO directory is accessible from standard datacenter IPs. Free tier users can run this with a slightly higher memory setting (512MB instead of the default 256MB).
Pricing transparency
| Tier | Price per result |
|---|---|
| Free | $0.003 |
| GOLD+ (paid Apify plan) | $0.002 |
Plus a one-time actor start fee of $0.025 per run.
To scrape 1,000 Austrian software companies: ~$3.03 on the free tier. Compare that to buying a DACH lead list from a data broker (typically $200-500 for 1,000 contacts of questionable freshness).
Technical requirements
- Memory: 512MB recommended (WebForms + Puppeteer need headroom)
- Proxy: Not required (standard datacenter IPs work fine)
- Runtime: ~2-3 seconds per result page (~10 businesses per page)
- Rate limiting: Built-in delays to respect WKO's servers
What you cannot scrape
WKO Firmen A-Z is a business directory, not a corporate registry. It does NOT contain:
- Financial statements or revenue data
- Ownership structure or shareholders
- Company registration number (FN - Firmenbuchnummer)
- Founding date
For those, you need Austria's Firmenbuch (commercial register) or paid services like KSV1870. Our actor gives you the top-of-funnel contact data that powers B2B prospecting. For deeper due diligence, pair it with our Austria Ediktsdatei Insolvency Scraper to screen for bankruptcy risk.
Quick start
- Sign up for a free Apify account
- Go to the WKO Business Directory Scraper
- Click "Try for free" and enter a search query (e.g., "steuerberatung" for tax consultants)
- Get your results in the dataset tab
The free tier gives you $5/month in platform credits, which is enough for ~1,600 results on the free pricing plan. Plenty to validate whether the data fits your pipeline before committing.
Bottom line
Austria has 620,000+ registered businesses with verified contact data sitting in a government-affiliated directory that has no API. The WKO scraper turns that directory into a structured data source you can query programmatically. No manual searches. No stale lead lists. Just official data, when you need it, in your pipeline.
If you are working with Austrian companies for credit risk or compliance purposes, check out our Austria Ediktsdatei Insolvency Scraper - it monitors Austria's official insolvency gazette and runs on free-tier-friendly infrastructure with no proxy required.
Top comments (0)