Companies House Scraper
Pricing
from $1.50 / 1,000 results
Companies House Scraper
Get UK company records from the public Companies House register: status, type, incorporation date, registered office, SIC codes, previous names, accounts and confirmation-statement deadlines, directors, owners (PSCs) and filings. Search by name or number. No API key.
Pricing
from $1.50 / 1,000 results
Rating
0.0
(0)
Developer
Anyx Solutions
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Security
Limited permissionsShare

Companies House Scraper
UK company records from the public Companies House register — profile, registered office, SIC codes, filing deadlines, officers, owners and filings — as clean JSON.
Companies House is the official register of every company in the United Kingdom. This Actor reads its public register pages and returns one clean record per company: number, name, status, type, incorporation and dissolution dates, the registered office address (in full and split into lines, town, postcode and country), SIC codes with their descriptions, previous names, and the accounts and confirmation-statement dates. It adds the company's officers by default, and on request its persons with significant control (the owners) and its latest filings. Paste a register search, an advanced-search result or a company page, or simply type company names or numbers; there is no login and no API key to set up. Built for lead generation, KYC and supplier checks, sales prospecting, and company research.
⚡ Quick start
{"startUrls": [{"url": "https://find-and-update.company-information.service.gov.uk/search/companies?q=tesco"}],"maxItems": 5}
Or look companies up directly:
{"companyNumbers": ["00445790", "SC123456"],"includePersonsWithSignificantControl": true}
🧩 Input
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
startUrls | array | no | — | Companies House URLs: a search (…/search/companies?q=tesco), an advanced-search results page (…/advanced-search/get-results?…, with its incorporation date, SIC code, status and location filters), or a company page (…/company/00445790). |
maxItems | integer | no | — | Maximum number of companies per search URL or search term. The input form starts at 5; leave it empty to get every result. |
searchTerms | array | no | — | Company names to search for, one per line. Each returns the register's matches, best first. |
companyNumbers | array | no | — | Company registration numbers to look up, such as 00445790 or SC123456. |
includeOfficers | boolean | no | true | Add the company's current and resigned officers from the People tab. |
includePersonsWithSignificantControl | boolean | no | false | Add the persons with significant control (owners) and their natures of control. |
includeFilingHistory | boolean | no | false | Add the 25 most recent filings with their PDF links. |
proxyConfiguration | object | no | { "useApifyProxy": false } | Proxy settings. The register needs no proxy. |
Use at least one of startUrls, searchTerms or companyNumbers.
Advanced search. Open
Advanced company search,
set the filters you need (name, location, status, company type, SIC codes, incorporation or
dissolution dates), run the search and paste the results-page URL into startUrls.
📤 Output
Each company is one dataset row. Dates are ISO 8601 (YYYY-MM-DD). The example below was run with
includeFilingHistory on; its officer list is shortened to two entries, and the officers' names,
ids and addresses are replaced with placeholders.
Fields
| Field | Type | Description |
|---|---|---|
companyNumber | string | Company registration number. |
name | string | Registered company name. |
status | string | Company status, e.g. Active, Dissolved, Liquidation. |
type | string | Company type, e.g. Private limited Company. |
incorporationDate | string | Date of incorporation (or registration). |
dissolutionDate | string | Date the company was dissolved, when it has been. |
registeredOfficeAddress | string | Registered office address in full, as the register shows it. |
addressLines | array | Street lines of the registered office (best effort). |
locality | string | Town or city of the registered office (best effort). |
postalCode | string | Postcode of the registered office. |
country | string | Country of the registered office, when the register states it. |
sicCodes | array | Nature of business: code and description per SIC code. |
previousNames | array | Former names with the from and to dates they were used. |
accountsNextMadeUpTo | string | End of the next accounting period. |
accountsNextDueBy | string | Date the next accounts are due. |
accountsLastMadeUpTo | string | End of the period covered by the last accounts filed. |
accountsOverdue | boolean | Whether the register marks the accounts as overdue. |
confirmationStatementNextDate | string | Date of the next confirmation statement. |
confirmationStatementNextDueBy | string | Date the next confirmation statement is due. |
confirmationStatementLastDate | string | Date of the last confirmation statement. |
confirmationStatementOverdue | boolean | Whether the register marks the confirmation statement as overdue. |
url | string | The company's page on the register. |
officers | array | Officers: name, officerId, officerUrl, role, status, appointedOn, appointedBefore, resignedOn, dateOfBirth (year and month only, YYYY-MM), nationality, countryOfResidence, registrationNumber (corporate officers) and correspondence address. null when includeOfficers is off. |
personsWithSignificantControl | array | Owners: name, status, notifiedOn, ceasedOn, dateOfBirth (YYYY-MM), nationality, countryOfResidence, legalForm, governingLaw, placeRegistered, registrationNumber, countryRegistered, naturesOfControl and address. null when not requested; empty when the company lists none or is exempt. |
filingHistory | array | Latest filings: date, type (form code), description, documentUrl (PDF) and pages. null when not requested. |
💡 Use cases
- Lead generation — build lists of UK companies by name, location, SIC code or incorporation date, with their directors.
- KYC and supplier checks — confirm a company is active, see who runs and owns it, and check its filing deadlines.
- Sales prospecting — find newly incorporated companies in your sector and reach the directors.
- Research and journalism — trace former names, officer changes and ownership across groups of companies.
- Compliance monitoring — watch for overdue accounts, dissolutions and new filings on companies you work with.
❓ FAQ
- Do I need a Companies House API key or account? No. The Actor reads the same public register pages anyone can open in a browser.
- Do I need a proxy? No. It runs without one by default and keeps its request rate polite.
- Why is a date of birth only a year and month? That is all the public register shows. The Actor never outputs anything the register does not publish.
- Is it legal to use officer and owner data? The data is public register information. Names, partial birth dates and correspondence addresses are still personal data under UK GDPR, so you are responsible for having a lawful basis for how you store and use them.
- Why are some fields empty? Not every company has every detail: dissolved companies have no upcoming deadlines, new ones have no accounts yet, and the register states the country of an address only sometimes. Empty fields are
null. - Can I search by industry, location or incorporation date? Yes. Use the register's advanced company search, then paste its results URL into
startUrls. - How many companies can I get?
maxItemscaps each search or search term. Company numbers and company URLs always return their one company.
🔗 More scrapers by Anyx
🤝 Anyx Solutions
We build custom scrapers and data-extraction pipelines.
- Email: tantosthor@gmail.com
🖼 Image credit
Image credit: find-and-update.company-information.service.gov.uk. Register data © Crown copyright, used under the Open Government Licence v3.0.