UK Companies House: Company Data, SIC Search & Change Monitor
Pricing
from $2.40 / 1,000 company returneds
UK Companies House: Company Data, SIC Search & Change Monitor
UK company data for all 5.7M live companies from Companies House's free monthly Basic Company Data. Look up by number or name, search by SIC code, postcode and status, or get a monthly change feed. No director or PSC personal data.
Pricing
from $2.40 / 1,000 company returneds
Rating
0.0
(0)
Developer
Your Evenings
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 hours ago
Last modified
Categories
Share
UK Companies House gives you company data for every live UK company: status, type, incorporation date, SIC codes, accounts and confirmation statement dates and overdue flags, charges, previous names, and registered office post town and postcode. Look companies up by number or name, search the whole register with filters, or get a typed feed of what changed since last month.
Use it for a Companies House search across the whole register: a UK company search by number or name, a SIC code search by area and status, or a monthly change feed, with rows you can export as CSV, JSON or Excel and no Companies House API key to manage.
Not an official Companies House product. This Actor is independent and is not affiliated with or endorsed by Companies House. It uses the free monthly data snapshot Companies House publishes for reuse.
Why this one
- Typed month-over-month changes. Each monthly snapshot is compared with the one before, so you get one row per change with a
changeType: new on the register, left the register, status changed (liquidation, administration, proposal to strike off), name, SIC or company type changed, registered office moved, accounts or confirmation statement now overdue or newly filed, new or changed charges.previousholds the old values. - A monitor for your own list.
monitorModesaves your companies as a free baseline, then each later run returns only what changed since then. Schedule it monthly for suppliers, customers or prospects. - Search all 5.7 million live companies by SIC code (prefix), status, company type, incorporation date, post town, postcode area or district, overdue accounts or confirmation statement, outstanding charges and name keywords.
- No director, officer or PSC data, and no street addresses. Rows describe companies only. The registered office is output as post town, postcode and country; street lines, care-of names and PO boxes are dropped when the data is loaded.
- Filters before you pay, and free status rows. Filtered-out companies, numbers not on the register, unmatched names (with up to 3 similar names), duplicates and "nothing new yet" rows cost nothing.
- Pre-built snapshot. The snapshot is stored as compact shards, so a lookup by number reads only the shards it needs. Our test lookup of three companies on 26 October 2026 took 8 seconds; a search reads the whole register, so it takes longer.
Data from: Companies House, Free Company Data Product (monthly snapshot)
Runs on
Apify. Use it from Make, Zapier,
n8n or the Apify API.
Where the data comes from
| Source | What | How |
|---|---|---|
| Companies House Free Company Data Product | Basic company data for all live companies (5,704,711 in the 1 October 2026 snapshot) | Downloaded once a month by the maintainer, at normal speed, one file at a time, and stored in compact form. Your runs read that copy, not Companies House. |
How fresh is it? Companies House compiles the snapshot to the end of the previous month and publishes it within 5 working days of month end. Every row has dataAsOf (the snapshot date) and dataSource: monthly-snapshot. If the newest snapshot is over 40 days old, the run adds a free stale_data row and a warning. For today's position, each row's sourceUrl links to the company's page on the Companies House service.
Overdue flags (accountsOverdue, confirmationStatementOverdue) are worked out against the snapshot date.
Attribution and licences
Source: Companies House, Free Company Data Product. Companies House states that it "imposes no rules or requirements on how the information on the public register is used" (public task and copyright). Register information is supplied under the Copyright, Designs and Patents Act 1988 and the Database Regulations and is not released under the Open Government Licence. Companies House asks reusers to take their own advice on third-party copyright in filed information and not to reproduce the Crown insignia; this Actor does not use it. Every row carries a licence note crediting Companies House. Fields are renamed and normalised by this Actor.
Personal data
The source file has no officer, director or PSC data, and this Actor never adds any. Registered office street lines, care-of names, PO boxes and county are dropped when the snapshot is loaded; rows keep only post town, postcode and country. Some very small companies use a home address as their registered office, which is why street lines are left out. Please don't use this Actor to build lists of people.
Who it's for
- B2B sales and marketing teams building lists of UK companies by sector, area and age.
- Credit, finance and procurement teams checking customers and suppliers for strike-off, liquidation or overdue accounts.
- Researchers and data teams who need company-level data from the register in a clean table.
Use cases
- New company lists. Companies new on the register last month in SIC 62 (IT) in Manchester (postcode area M): set
changeTypestonew_on_register,sicCodesto62andpostcodestoM. - Supplier and customer checks. Look up status, overdue accounts and charges for a list of company numbers, then run
monitorModemonthly to hear about strike-off proposals, liquidation or late accounts. - Market sizing. Search all live companies by SIC code, post town and incorporation date and count them with
countAllMatches. - Accountants. A monthly due-date sweep across a client list (confirm with the live register before chasing).
Quick start
Press Start with the prefilled input, or paste this into the JSON view of the Input tab:
{"companyNumbers": ["00445790", "00185647", "07524813"]}
It looks up Tesco PLC, J Sainsbury PLC and Rolls-Royce Holdings PLC. In our test run on 26 October 2026 it returned 3 company rows from the 1 October 2026 snapshot, which costs about $0.01 (see Pricing).
Output sample
Two of the Quick start rows and other rows from our test runs (a name lookup, and a changes run for SIC 62 in postcode area M), October 2026 snapshot:
| Record | Change | Company | Status | Incorporated | SIC (first) | Post town |
|---|---|---|---|---|---|---|
| company | – | TESCO PLC | Active | 1947-11-27 | Retail sale in non-specialised stores with food, beverages or tobacco predominating | WELWYN GARDEN CITY |
| company | – | J SAINSBURY PLC | Active | 1922-11-10 | Retail sale in non-specialised stores with food, beverages or tobacco predominating | LONDON |
| company | – | MARKS AND SPENCER GROUP P.L.C. | Active | 2001-07-23 | Other retail sale in non-specialised stores | LONDON |
| change | new_on_register | PIONEER INSIGHT RESEARCH TECH LTD | Active | 2026-09-05 | Business and domestic software development | MANCHESTER |
| change | status_changed | GLOBINA LIMITED | Active - Proposal to Strike off | 2025-06-17 | Information technology consultancy activities | MANCHESTER |
Two rows as JSON, from runs on 30 October 2026 (1 October 2026 snapshot): a lookup of Tesco PLC (build 0.1.9) and a new_on_register change from the SIC 62 / postcode area M changes run (build 0.1.8). Some fields are left out to keep it short, and the change row's postcode is left out of this sample. The full list is under Output.
{"recordType": "company","companyNumber": "00445790","companyName": "TESCO PLC","companyStatus": "Active","companyType": "Public Limited Company","countryOfOrigin": "United Kingdom","incorporatedOn": "1947-11-27","sicCodes": ["47110"],"sicDescriptions": ["Retail sale in non-specialised stores with food, beverages or tobacco predominating"],"registeredOffice": {"postTown": "WELWYN GARDEN CITY","postcode": "AL7 1GA","country": "UNITED KINGDOM"},"accountsNextDue": "2027-08-26","accountsOverdue": false,"lastAccountsMadeUpTo": "2026-02-28","lastAccountsType": "GROUP","confirmationStatementNextDue": "2027-07-02","confirmationStatementOverdue": false,"lastConfirmationStatementMadeUpTo": "2026-06-18","charges": {"total": 9,"outstanding": 2,"partSatisfied": 0,"satisfied": 7},"hasCharges": true,"hasOutstandingCharges": true,"previousNames": [],"sourceUrl": "https://find-and-update.company-information.service.gov.uk/company/00445790","dataAsOf": "2026-10-01","dataSource": "monthly-snapshot","licence": "Source: Companies House, Free Company Data Product (public register information, https://download.companieshouse.gov.uk/en_output.html). Companies House places no restriction on reuse of register information; it is not released under the Open Government Licence. Normalised by this Actor; not endorsed by Companies House."}
{"recordType": "change","changeType": "new_on_register","companyNumber": "17485002","companyName": "ZOA DIGITAL LTD","companyStatus": "Active","companyType": "Private Limited Company","incorporatedOn": "2026-09-28","sicCodes": ["62012"],"sicDescriptions": ["Business and domestic software development"],"registeredOffice": {"postTown": "MANCHESTER","country": "ENGLAND"},"accountsNextDue": "2028-06-28","accountsOverdue": false,"confirmationStatementNextDue": "2027-10-11","hasCharges": false,"previousNames": [],"sourceUrl": "https://find-and-update.company-information.service.gov.uk/company/17485002","dataAsOf": "2026-10-01","previousDataAsOf": "2026-09-01"}
Input examples
Paste any of these into the JSON view of the Input tab. Each one is the input of a ready-made example task.
UK company lookup by company number
{"mode": "lookup","companyNumbers": ["00445790", "00185647", "07524813"],"maxResults": 25}
SIC code search: new UK software companies (SIC 62012)
{"mode": "search","sicCodes": ["62012"],"companyStatus": ["active"],"incorporatedWithinDays": 60,"maxResults": 100}
Monthly changes for IT companies in Manchester (SIC 62, postcode area M)
{"mode": "changes","sicCodes": ["62"],"postcodes": ["M"],"changeTypes": ["new_on_register", "status_changed"],"maxResults": 100}
Input
All fields are optional. With no input it looks up three example companies (Tesco PLC, J Sainsbury PLC, Rolls-Royce Holdings PLC).
| Field | What it does |
|---|---|
mode | auto (default), lookup, search, changes or monitor. Auto picks lookup when you give numbers or names, changes when you pick change types, otherwise search. |
companyNumbers | Company numbers. Short numbers are zero-padded; SC, NI, OC and other prefixes work. In changes mode, a watchlist. |
companyNames | Up to 1,000 names, matched exact or normalised (case, punctuation, & / and, Limited / Ltd, PLC forms). Rows show matchConfidence. No match gives a free not_found row with up to 3 similar names. |
sicCodes | 2 to 5 digits, prefix match. |
companyStatus | active, proposal to strike off, liquidation, administration, receivership, voluntary arrangement, or an exact published status. |
companyTypes | Phrase match on the published type, e.g. "Limited Liability Partnership". |
incorporatedFrom, incorporatedTo, incorporatedWithinDays | Incorporation date range. |
postTowns, postcodes | Registered office post town; postcode area (M), district (M1) or postcode (M1 1AE). |
nameKeywords | Whole words or phrases in the name. |
accountsOverdue, confirmationStatementOverdue, hasOutstandingCharges | Only companies with that flag. |
changeTypes | Changes mode: which change types to return. |
monitorMode, stateStoreName | Monitor your list; one state store per watchlist. |
dataMonth | Use an older snapshot (the last 3 months are kept). |
maxResults | Maximum charged rows (default 25; 0 = no limit). |
countAllMatches | Keep counting after maxResults for the run summary (no extra charge). |
Output
One row per company (recordType: company) or per change (recordType: change), plus free status rows.
Company fields: companyNumber, companyName, companyStatus, companyType, countryOfOrigin, incorporatedOn, dissolvedOn, sicCodes, sicDescriptions, registeredOffice {postTown, postcode, country}, accountingReferenceDate, accountsNextDue, accountsOverdue, accountsDaysOverdue, lastAccountsMadeUpTo, lastAccountsType, confirmationStatementNextDue, confirmationStatementOverdue, lastConfirmationStatementMadeUpTo, charges {total, outstanding, partSatisfied, satisfied}, hasCharges, hasOutstandingCharges, previousNames, sourceUrl, dataAsOf, dataSource, licence, retrievedAt. Name lookups add companyNameQuery, matchConfidence.
Change rows add changeType, changedFields, previous (old values) and previousDataAsOf.
Status rows (free): not_found, not_on_live_register (left the register this month), invalid_number, duplicate, baseline_saved, no_new_snapshot, no_changes, no_matches, stale_data, error, no_company_numbers, too_many_numbers, too_many_names.
The run's SUMMARY record shows companies read, matched and returned, and why the rest were filtered out.
Changes and monitor mode
The October 2026 snapshot had 1,307,278 changes against September across all types, so filter the feed (changeTypes, SIC, postcode, status) or give a watchlist. Change types: new_on_register, removed_from_register, status_changed, name_changed, sic_changed, type_changed, registered_office_moved, accounts_now_overdue, accounts_filed, confirmation_statement_now_overdue, confirmation_statement_filed, new_charge, charges_changed.
removed_from_register means a company was in last month's file and not this one, which usually means it was dissolved. The snapshot lists live companies only.
In monitor mode, the first run saves a baseline (free). A run before the next snapshot is out returns a free no_new_snapshot row. Once a newer snapshot is available, you get one change row per change since your baseline.
Pricing
Pay per event:
| Event | Price |
|---|---|
| Company row | $0.003 |
| Change row | $0.005 |
| Actor start | $0.00005 |
Status rows, filtered-out companies, unmatched names and duplicates are free. Example: a monthly monitor of 500 suppliers with 12 changes costs 12 × $0.005 = $0.06 plus the start event. Set a maximum charge per run and the Actor stops before going over it.
FAQ
Can I get directors or shareholders? No. This Actor outputs company data only.
Can I check confirmation statement and accounts due dates for my client list? Yes. Use lookup mode with your clients' company numbers in companyNumbers. Each row has confirmationStatementNextDue, confirmationStatementOverdue, accountsNextDue and accountsOverdue, worked out against the monthly snapshot date. Because the data is monthly, a client who filed after the snapshot can still show as due. Check the live Companies House record before you send a client a reminder.
Why is a company I just registered missing? The snapshot is compiled to the end of the previous month. Companies registered since then appear in the next one.
Why not_found for a real number? The file lists live companies only. Companies dissolved before the earliest month kept don't appear; those dissolved this month get not_on_live_register.
How do I search Companies House by SIC code?
Use mode: "search" with sicCodes (a full 5-digit code such as 62012, or a prefix such as 62). Add companyStatus, postTowns, postcodes or incorporatedWithinDays to narrow it, and countAllMatches to count every match.
Can I do a UK company search by name?
Yes. Use mode: "lookup" with companyNames. Names are matched exactly or after normalising case, punctuation and Ltd / Limited forms; a name with no match comes back as a free not_found row with up to 3 similar names.
Do I need a Companies House API key? No. The Actor reads its own copy of Companies House's free monthly snapshot, so there's no key to register.
Feedback
Found a row that looks wrong? Open an issue on the Actor's Issues tab with the company number.