UK Companies House Company Data (Official Monthly Bulk File) avatar

UK Companies House Company Data (Official Monthly Bulk File)

Pricing

Pay per usage

Go to Apify Store
UK Companies House Company Data (Official Monthly Bulk File)

UK Companies House Company Data (Official Monthly Bulk File)

Filter the UK Companies House register of live companies by name, SIC code, status, type, incorporation date and postcode, using the official free monthly bulk file. Company-level data only.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Cole Cassel

Cole Cassel

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Filter the UK's register of live companies by name, SIC code, status, company type, incorporation date, postcode or post town. The data comes from the free monthly "Basic Company Data" snapshot that Companies House publishes for download, not from the Companies House website or its API.

Pricing: $0.001 per company saved, plus $0.03 per part of the file read. The snapshot comes in 7 parts. A name-prefix search usually reads 1 part; other filters read all 7.

Compliance first

  • Official source only. The actor reads the BasicCompanyData-…-partN_7.zip files listed on download.companieshouse.gov.uk/en_output.html, the "Free Company Data Product". It doesn't use the Companies House website search, the API, or any login. That server's robots.txt allows all automated access (User-agent: * / Disallow: with nothing after it).
  • What GOV.UK says about this data (Companies House data products, quoted 2026-10-18):
    • "The company data product is a free monthly snapshot of information for live companies on the public register."
    • "We impose no rules or requirements on how the information on the public register is used, and we're not responsible for your use of the company data. You are responsible for complying with any applicable data protection, copyright and other legislation and regulations."
  • Company-level fields only. This file holds no officers, directors, or people with significant control, and the actor doesn't add any. The one column that can contain a person's name, RegAddress.CareOf ("care of"), is dropped. There is no enrichment of any kind: no emails, phone numbers, websites or social profiles.
  • Note on addresses. A small company's registered office can be someone's home, because some owners register at home. It is public register data, but please handle it with UK GDPR in mind if you contact or profile the businesses.

Reliable by design

  • Official bulk files, not scraped pages. No browser, no proxies, nothing breaks when a web page changes.
  • Fails loudly instead of returning an empty "success". The run fails with a clear error code if:
    • the download page changed or lists fewer than all parts: INDEX_CHANGED, INDEX_INCOMPLETE;
    • the newest snapshot is older than maxSnapshotAgeDays (45 by default): SNAPSHOT_STALE;
    • a zip is cut short or corrupt. The actor checks every part against its built-in CRC-32 checksum and stated size: ZIP_TRUNCATED, ZIP_CORRUPT;
    • the CSV columns change: COLUMNS_CHANGED;
    • a part holds far fewer companies than normal, or many damaged rows: CSV_EMPTY, CSV_MALFORMED;
    • a file is replaced mid-download: SOURCE_CHANGED;
    • a name-prefix search finds a part that is no longer sorted by name, so skipping parts would be unsafe: NOT_SORTED.
  • A part is charged only after it passes those checks.
  • Streams and resumes. Each 50–74 MB zip is unzipped as it downloads, never fully in memory. After a dropped connection the download resumes from the last byte, with the file's version tag checked.
  • Skips what it doesn't need. The parts are sorted by company name, so with companyNameStartsWith the actor reads only the part(s) that can contain those names. It finds them by reading the first few KB of each part, and remembers that index for the month. Each part is read at most once per run.

How fresh is the data? (Monthly)

This is a monthly snapshot, not live data. GOV.UK: "The snapshot contents are compiled up to the end of the previous month and made available for download within 5 working days of the previous month end." The snapshot used on 2026-10-18 is dated 2026-10-01. Every row has snapshotDate. Companies formed, renamed or dissolved since then won't show the change until the next snapshot. The file lists live companies only, so dissolved companies aren't in it. Running more than once a month returns the same data; a monthly schedule around the 8th of each month is enough.

Use cases

  • Market maps. For example, every active IT consultancy (SIC 62020) incorporated this year.
  • Local prospect lists by business. Companies in a postcode district or post town, filtered by industry.
  • Data checks. Confirm a company's number, status, registered office, accounts dates and previous names in bulk.
  • Watch new formations. Run monthly with incorporatedFrom set to the previous month.

Input

{
"sicCodes": ["62020"],
"statuses": ["Active"],
"incorporatedFrom": "2026-01-01",
"maxResults": 1000
}
FieldDefaultNotes
companyNameStartsWithnoneCheapest filter: usually reads 1 of 7 parts
companyNameContainsnoneAny of the words, not case-sensitive. Reads all parts.
sicCodesnonePrefix match on any of a company's up to 4 SIC codes: 62 matches 62011, 62012, 62020
statusesnonee.g. Active; Active - Proposal to Strike off; Liquidation; In Administration
companyTypesnonee.g. Private Limited Company; Public Limited Company; Limited Liability Partnership
incorporatedFrom / incorporatedTononeYYYY-MM-DD
postcodePrefixesnoneArea (M), district (SW1A) or sector (SW1A 1). M1 doesn't match M11.
postTownsnoneExact post town, e.g. MANCHESTER
maxResults1000Up to 500,000
maxSnapshotAgeDays45Fail rather than return an out-of-date snapshot
selfTestfalseHealth check: ignores other fields, fetches 5 active companies, fails if key fields are empty

All filters must match (AND); within one filter, any value can match (OR).

Output

A real row from a local run on 2026-10-18 (ET), searching names starting with GREEN in post town BRISTOL with status Active:

{
"companyNumber": "09702488",
"companyName": "GREEN ACORN HOLIDAY HOMES LTD",
"status": "Active",
"companyType": "Private Limited Company",
"incorporationDate": "2015-07-24",
"dissolutionDate": null,
"countryOfOrigin": "United Kingdom",
"registeredOffice": {
"poBox": null,
"addressLine1": "27-29 NEWMINSTER HOUSE",
"addressLine2": "BALDWIN STREET",
"postTown": "BRISTOL",
"county": null,
"country": "ENGLAND",
"postcode": "BS1 1LT"
},
"sicCodes": [
{
"code": "55100",
"description": "Hotels and similar accommodation"
}
],
"accounts": {
"category": "MICRO ENTITY",
"referenceDay": 31,
"referenceMonth": 8,
"nextDueDate": "2027-05-31",
"lastMadeUpDate": "2025-08-31"
},
"confirmationStatement": {
"nextDueDate": "2027-08-05",
"lastMadeUpDate": "2026-07-22"
},
"mortgages": {
"charges": 0,
"outstanding": 0,
"partSatisfied": 0,
"satisfied": 0
},
"previousNames": [
{
"name": "GREEN ACORN PROPERTY PONTYPRIDD LTD",
"changedOn": "2017-01-19"
}
],
"companiesHouseUrl": "https://find-and-update.company-information.service.gov.uk/company/09702488",
"uri": "http://business.data.gov.uk/id/company/09702488",
"snapshotDate": "2026-10-01",
"sourceFile": "BasicCompanyData-2026-10-01-part3_7.zip"
}

A RUN_SUMMARY record in the key-value store lists the parts read, companies checked and saved, MB downloaded and seconds taken.

Measured locally on 2026-10-18 (ET), snapshot 2026-10-01:

  • SIC 62020 + Active + incorporated since 2026-01-01: 22,530 companies out of 5,704,711 checked. All 7 parts were read (494 MB) and all 7 checksums passed. About 84 s.
  • Name starts with GREEN + BRISTOL + Active: 144 companies, part 3 only (73.6 MB, 850,000 companies checked, name order confirmed), about 14 s.

Pricing

EventPrice
company, one company saved$0.001
part-scanned, one of the 7 parts read, charged after it passes its checks$0.03

From the runs above:

  • the GREEN/BRISTOL search cost 1 × $0.03 + 144 × $0.001 = $0.174;
  • the SIC 62020 search cost 7 × $0.03 + 22,530 × $0.001 = $22.74. Use maxResults to cap it.

Apify's own small start fee also applies. If maxResults is reached partway through a part, that part is still charged once.

Limits and honest caveats

  • Monthly data, see above. Not a substitute for a live register check before a legal or financial decision. Use companiesHouseUrl for that.
  • Live companies only. Dissolved companies aren't in this snapshot.
  • No people data. If you need officers or owners, this actor deliberately doesn't provide them.
  • Part skipping relies on the files being sorted by name. That was checked on the 2026-10-01 snapshot (all 5.7 million rows in order). Every name-prefix run re-checks the order of each row it reads and fails with NOT_SORTED if it breaks. A run that stops early at maxResults checks only the rows it read.
  • This actor isn't affiliated with Companies House. Contains public sector information from Companies House.