Companies House UK Scraper
Pricing
Pay per usage
Companies House UK Scraper
Under maintenanceScrape UK company data from Companies House. Extract company profiles, officers, SIC codes, registered addresses. Uses the official API.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
Glass Ventures
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Scrape UK company data from Companies House using the official API. Extract company profiles, officers, SIC codes, registered addresses, and filing dates.
What does Companies House UK Scraper do?
Companies House UK Scraper lets you extract detailed information about UK-registered companies using the official Companies House API. It retrieves company profiles including registration details, officer information, SIC codes, and filing history dates.
The actor searches Companies House by company name or accepts direct company numbers and URLs. It handles pagination for search results and can optionally fetch officer details for each company. All data comes from the official government API, ensuring accuracy and reliability.
This is ideal for anyone performing due diligence, market research, or competitor analysis on UK businesses. The data includes company status, type, registered address, and key dates that are essential for business intelligence.
Use Cases
- Due diligence teams -- verify company details, officer information, and filing status before partnerships or investments
- Market researchers -- analyze UK companies by industry using SIC codes, identify active vs dissolved companies
- Data analysts -- build datasets of UK companies for sector analysis, geographic mapping, or trend identification
- Developers -- integrate UK company data into CRM systems, compliance tools, or business intelligence platforms
Features
- Search companies by name or keywords
- Look up companies by registration number directly
- Extract full company profiles with all registration details
- Fetch officer lists (directors, secretaries) for each company
- Handles API rate limiting automatically
- Exports to JSON, CSV, Excel, or connect via API
How much will it cost?
Companies House API is free. The only cost is Apify platform compute time.
| Results | Estimated Cost |
|---|---|
| 100 | ~$0.01 |
| 1,000 | ~$0.05 |
| 10,000 | ~$0.30 |
| Cost Component | Per 1,000 Results |
|---|---|
| Platform compute | ~$0.05 |
| Proxy (optional) | ~$0.00 |
| Total | ~$0.05 |
How to use
- Get a free API key from Companies House Developer Hub
- Go to the Companies House UK Scraper page on Apify Store
- Enter your API key in the Authentication section
- Enter search terms, company numbers, or Companies House URLs
- Set the maximum number of items
- Click "Start" and wait for the results
Input parameters
| Parameter | Type | Description | Default |
|---|---|---|---|
| searchTerms | array | Search queries to find companies by name | - |
| companyNumbers | array | Companies House registration numbers | - |
| startUrls | array | Companies House URLs to scrape | - |
| apiKey | string | Companies House API key (required) | - |
| includeOfficers | boolean | Fetch officer details for each company | true |
| maxItems | number | Max results to return | 100 |
| maxConcurrency | number | Parallel request limit | 5 |
| proxyConfig | object | Proxy settings | Apify Proxy |
Output
The actor produces a dataset with the following fields:
{"companyName": "REVOLUT LTD","companyNumber": "09740085","companyStatus": "active","companyType": "ltd","dateOfCreation": "2015-07-23","registeredAddress": {"addressLine1": "7 Westferry Circus","locality": "London","postalCode": "E14 4HD","country": "United Kingdom"},"sicCodes": ["64999"],"officers": [{"name": "STORONSKY, Nikolay","officerRole": "director","appointedOn": "2015-07-23"}],"jurisdiction": "england-wales","lastAccountsDate": "2023-12-31","confirmationStatementDate": "2024-07-23","url": "https://find-and-update.company-information.service.gov.uk/company/09740085","scrapedAt": "2024-01-15T10:30:00.000Z"}
| Field | Type | Description |
|---|---|---|
| companyName | string | Registered company name |
| companyNumber | string | Companies House registration number |
| companyStatus | string | Active, dissolved, liquidation, etc. |
| companyType | string | Ltd, PLC, LLP, etc. |
| dateOfCreation | string | Incorporation date (YYYY-MM-DD) |
| registeredAddress | object | Registered office address |
| sicCodes | array | Standard Industrial Classification codes |
| officers | array | Directors and secretaries (if includeOfficers is true) |
| jurisdiction | string | Registration jurisdiction |
| lastAccountsDate | string | Date of last filed accounts |
| confirmationStatementDate | string | Date of last confirmation statement |
| url | string | Companies House URL |
| scrapedAt | string | ISO 8601 scrape timestamp |
Integrations
Connect Companies House UK Scraper with other tools:
- Apify API -- REST API for programmatic access
- Webhooks -- get notified when a run finishes
- Zapier / Make -- connect to 5,000+ apps
- Google Sheets -- export directly to spreadsheets
API Example (Node.js)
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_TOKEN' });const run = await client.actor('YOUR_USERNAME/companies-house-uk-scraper').call({searchTerms: ['Revolut'],apiKey: 'YOUR_COMPANIES_HOUSE_API_KEY',maxItems: 100,});const { items } = await client.dataset(run.defaultDatasetId).listItems();
API Example (Python)
from apify_client import ApifyClientclient = ApifyClient('YOUR_TOKEN')run = client.actor('YOUR_USERNAME/companies-house-uk-scraper').call(run_input={'searchTerms': ['Revolut'],'apiKey': 'YOUR_COMPANIES_HOUSE_API_KEY','maxItems': 100,})items = client.dataset(run['defaultDatasetId']).list_items().items
API Example (cURL)
curl "https://api.apify.com/v2/acts/YOUR_USERNAME~companies-house-uk-scraper/runs" \-X POST \-H "Content-Type: application/json" \-H "Authorization: Bearer YOUR_TOKEN" \-d '{"searchTerms": ["Revolut"], "apiKey": "YOUR_KEY", "maxItems": 100}'
Tips and tricks
- Start with a small
maxItems(10-20) to test your API key before running large scrapes - Companies House rate limits at 600 requests per 5 minutes -- keep maxConcurrency low (5-10)
- Use company numbers for precise lookups; use search terms for discovery
- SIC codes can be used to filter companies by industry sector
FAQ
Q: Does this actor require login credentials? A: Yes, you need a free API key from the Companies House Developer Hub. Registration is free and instant.
Q: How fast is the scraping? A: Approximately 100-200 company profiles per minute, depending on whether officer data is included.
Q: What should I do if I get rate limited? A: Reduce maxConcurrency to 3-5. Companies House allows 600 requests per 5 minutes.
Q: Can I scrape dissolved companies? A: Yes, Companies House keeps records of dissolved companies and they appear in search results.
Is it legal to scrape Companies House?
Companies House data is public information maintained by the UK government. This actor uses the official free API provided by Companies House specifically for programmatic access. The data is Crown Copyright but is available under the Open Government Licence. For more information, see Apify's blog on web scraping legality.
Limitations
- Requires a free API key from Companies House Developer Hub
- Rate limited to 600 requests per 5 minutes by the API
- Only covers UK-registered companies (England, Wales, Scotland, Northern Ireland)
- Officer data requires an additional API call per company
Changelog
- v0.1 (2026-04-23) -- Initial release