UK Companies House Scraper — Company Status, SIC & Address avatar

UK Companies House Scraper — Company Status, SIC & Address

Pricing

from $0.80 / 1,000 companies

Go to Apify Store
UK Companies House Scraper — Company Status, SIC & Address

UK Companies House Scraper — Company Status, SIC & Address

UK companies by name or company number from Companies House: status, type, incorporation date, registered office, SIC codes, accounts and confirmation deadlines. Run it again or on a schedule to see status and address changes since the last run. Companies only. No login.

Pricing

from $0.80 / 1,000 companies

Rating

0.0

(0)

Developer

Northbell

Northbell

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 hours ago

Last modified

Share

Give it UK company names or company numbers and get one clean row per company from the Companies House register: status, company type, incorporation date, registered office, SIC codes, previous names and the next accounts and confirmation-statement deadlines. $1.00 per 1,000 companies, no login, no API key.

Run it again — or put it on a schedule — and every row also tells you what changed since the last run: statusChanged (for example active to liquidation or dissolved), a changed registered office, a changed name, a new proposal to strike off, and whether the company is new to your list. A company page shows only today's picture; this keeps the previous one for you.

What you get

FieldWhat it is
companyNumber, name, urlthe company, with the link to its Companies House page
status, statusDetailthe register's status in lower case: active, dissolved, liquidation, closed, converted / closed, registered, open… and the extra line the company page can show next to it, for example Active proposal to strike off (status stays active, so a filter on it keeps working)
companyType, incorporatedOnfor example Private limited Company, Public limited Company, Limited liability partnership, UK establishment, and the date it was incorporated (or registered / opened)
dissolvedOnthe date shown for a company that is dissolved, closed, removed or converted
registeredOfficethe registered office address as one line
sicCodes, primarySicCodethe SIC codes with their descriptions, and the first code on its own
previousNamesearlier names with from and to dates
accountsNextDue, accountsNextMadeUpTo, accountsLastMadeUpTo, accountsOverdueaccounts deadline, the period they cover, the last period filed, and Companies House's own overdue warning
confirmationNextDue, confirmationNextStatementDate, confirmationLastStatementDate, confirmationOverduethe same for the confirmation statement
parentCompanyNumberfor a UK establishment, the number of the overseas company it belongs to
query, queryType, rank, matchedPreviousNamewhich input line found it, name or number, its position in the search results, and the old name (or names, separated by ·) that matched when the match was on a previous name
isNew, firstSeenAt, previousObservedAtwhether this company is new to your history, when you first saw it, and when you last read it
previousStatus, statusChangedthe status at your previous run, and true / false whether it changed (null on the first run)
statusDetailChanged, previousStatusDetailtrue when the line next to the status appeared, disappeared or changed (for example a strike-off proposal starts); previousStatusDetail is the old line, null if there was none
nameChanged, previousName, registeredOfficeChanged, previousRegisteredOfficethe same for the name and the registered office; the previous value is filled only when it changed
detailsRead, observedAtwhether the company page was read, and when the row was collected

Run it again and again

  • On a schedule — save your input as a task and add a Schedule: the same companies every week. Send each run to Google Sheets, Slack or email with an integration on the task.
  • Watch for changes — Keep the same input on the schedule. Each run is its own dataset with the date it ran, so the series builds up run by run and you can compare one day with the last.
  • In bulk — Put every name or company number in Company names or numbers in one run.

Use it for

  • Supplier and customer watchlists — schedule it daily and filter on statusChanged and statusDetailChanged to catch a company going into liquidation, being dissolved or being put forward for strike-off
  • Cleaning a company list — turn names from a CRM or spreadsheet into company numbers, registered offices, types and status
  • Due-diligence prep — SIC codes, age, previous names and overdue accounts or confirmation statements in one table
  • Prospecting — filter by SIC code, company type, incorporation date or location in the address, then export to Sheets, your CRM or BI tool

Input

{ "queries": ["Tesco PLC", "Monzo", "00445790", "SC045551"], "maxResultsPerQuery": 20, "includeDetails": true }
  • Company names return up to maxResultsPerQuery companies, in Companies House's own search order.
  • Company numbers (00445790, SC045551, OC300001, also 445790 without the leading zeros) return exactly that company.
  • Up to 200 lines per run.
  • includeDetails on (default) opens every company's page for SIC codes, type, previous names and deadlines. Off, the run is much faster and keeps only what the search list shows.

Changes are remembered per company number in a named key-value store in your Apify account, so the second run of the same Actor already shows what changed. Schedule it (Apify → Schedules) for a daily check.

Pricing

$1.00 per 1,000 companies, plus $0.01 per run. Error rows (a number that does not exist, a name with no results) are free. A row whose company page could not be read (detailsRead: false) is free too. The $0.01 run-start fee is the one charge every run pays, even one that returns nothing.

Notes

  • Companies only. The Actor reads the public company overview and the search list. It does not read or output officers, directors, persons with significant control or any other people.
  • Addresses are as registered. registeredOffice is the address on the register. For a very small company or a sole trader this can be a private address; Companies House publishes it and the Actor returns it unchanged.
  • The search is Companies House's own and it is loose. It also matches previous names and near-misses, so check name and rank. When the match was on an old name, matchedPreviousName shows which one.
  • Status wording. With Read each company page on, status is the text on the company page and statusDetail is the line next to it, if any (so far seen: Active proposal to strike off; it is null for most companies). With it off, status comes from the search list, which shows the main states only: the list does not show a proposal to strike off, so such a company shows as plain active with statusDetail: null — leave Read each company page on when you watch for that. A few kinds of entry (some overseas companies and UK establishments) have status: null in list-only mode. The list also shows no incorporation date for dissolved companies. Switching between the two modes between runs does not create false changes: statusDetailChanged is null unless both runs read the company page.
  • Fields filled only in some cases. companyType, sicCodes, previousNames and the accounts and confirmation fields are null unless the company page was read. When it was read, sicCodes and previousNames are [] if the page lists none, which is common for UK establishments, overseas companies, limited partnerships, LLPs and societies. The accounts and confirmation dates and their overdue flags are null when the page has no such block. parentCompanyNumber is only filled for UK establishments. matchedPreviousName is only filled when a name search matched an old name. previousName and previousRegisteredOffice are only filled when that value changed. Some entry types have no registered office on the register and some no status: registered and provident societies, Royal Charter companies and charitable incorporated organisations. LLPs, overseas entities, UK establishments and overseas companies have no SIC codes on their page.
  • Speed. Requests go one at a time with short pauses. Measured on 9 Oct 2026 from a desktop PC: about 125 companies took about 10 seconds in list-only mode and 127 companies about 100 seconds with company pages read (roughly 0.8 seconds each), so a run of 1,000 companies with pages takes about 14 minutes. Raise the run timeout for big lists.
  • Dates. incorporatedOn is the date the register labels incorporated, registered, formed or opened; dissolvedOn is the date it labels dissolved, closed, removed or converted. All dates are ISO (YYYY-MM-DD).
  • One row per company per run. If the same company is found by two lines of your input it appears once, under the first.
  • The data is what the register shows at observedAt. It is not legal advice and not an official certificate.

More company data from northbell: Company Lookup by Domain, LinkedIn Company Growth Scraper, LEI / GLEIF Lookup.

For AI agents

{"queries": ["Tesco PLC"], "maxResultsPerQuery": 3} returns up to 3 rows with status, type, registered office and SIC codes. {"queries": ["00445790"]} returns that one company. Rows have type: company or error. To monitor, run the same input on a schedule and read statusChanged and statusDetailChanged.

**Something broke or looks wrong?** Open an issue on this Actor's Issues tab and I'll look at it. **Found it useful?** A short review on the Store page helps other people find it.