# UK Companies House Search: New Companies by SIC & Postcode (`yodeling_november/uk-companies-house-search`) Actor

🇬🇧 Fresh UK business leads every month. Search all 5.5 million live companies in the official Companies House data and pull new companies by SIC code, postcode or town, with registered address, accounts due dates and previous names. Get only companies you haven't seen yet.

- **URL**: https://apify.com/yodeling_november/uk-companies-house-search.md
- **Developed by:** [João Fernandes](https://apify.com/yodeling_november) (community)
- **Categories:** Business, Lead generation, Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.80 / 1,000 companies

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## UK Companies House Search: New Companies by SIC & Postcode

**Fresh UK business leads every month, straight from the official register.**

Around 60,000 to 80,000 companies are incorporated in the UK every month. This Actor searches **all ~5.5 million live companies** in the official Companies House data and pulls exactly the ones you want: new companies by **SIC code, postcode, town, status, category or name**, with registered address, accounts and confirmation-statement due dates, charges and previous names. Run it monthly in *New* mode and receive only companies you have not seen before.

### ✨ Why use it

- 🗂️ **The whole register:** every live private and public company, LLP, community interest company and partnership, not a sample.
- 🎯 **Precise targeting:** SIC codes (62 for IT, 56101 for restaurants), postcode areas or districts, and towns.
- 🆕 **Monthly lead lists:** *New* mode returns only companies you haven't received yet.
- ⚡ **No API key, no rate limits:** the full register is filtered in about a minute.
- 🔒 **No personal data:** no directors, and "care of" address lines are removed.
- 💸 **Pay per company:** $1 per 1,000 companies, plus $0.03 per run.

### 💡 Use cases

- **B2B lead generation:** every new IT company, restaurant, builder or estate agent in your area, every month.
- **Accountants and formation agents:** new companies with no accounts filed yet, and their first accounts due date.
- **Banks, insurers and suppliers:** reach companies in their first weeks of trading.
- **Market research:** company formation trends by SIC code and region.
- **Due diligence and KYC:** status, category, charges and previous names of a company.

### 🚀 How to use it

1. Click **Try for free**.
2. Choose SIC codes, postcode prefixes or towns, and how recently the companies were incorporated.
3. Run it and download the results as **Excel, CSV or JSON**, or read them from the **Apify API**.
4. Want a monthly list? Save it as a task in *New* mode, add a **schedule**, and send new companies to your CRM through Make, Zapier, n8n or a webhook.

### 📥 Input examples

New software companies in London incorporated in the last month:

```json
{ "sicCodes": ["62"], "postTowns": ["London"], "incorporatedWithinDays": 31 }
```

New restaurants in Manchester postcodes (M), every month (schedule it):

```json
{ "sicCodes": ["56101"], "postcodePrefixes": ["M"], "mode": "new", "monitorId": "manchester-restaurants" }
```

Companies in liquidation in the EC1 district:

```json
{ "statuses": ["Liquidation"], "postcodePrefixes": ["EC1"], "incorporatedWithinDays": 0 }
```

Postcode filters accept an area (`SW`), a district (`SW1` matches SW1A and SW1E but not SW10; `M1` does not match M11) or a full postcode.

### 📦 Output

```json
{
  "companyNumber": "SC904493",
  "companyName": "CAIRNKEEP LIMITED",
  "status": "Active",
  "category": "Private Limited Company",
  "incorporationDate": "2026-09-30",
  "sicCodes": ["62012", "63110"],
  "sicDescriptions": ["Business and domestic software development", "Data processing, hosting and related activities"],
  "addressLines": ["SUMMIT HOUSE", "4-5 MITCHELL STREET"],
  "postTown": "EDINBURGH",
  "postcode": "EH6 7BD",
  "country": "UNITED KINGDOM",
  "accountsCategory": "NO ACCOUNTS FILED",
  "accountsNextDue": "2028-06-30",
  "confirmationStatementNextDue": "2027-10-13",
  "mortgagesOutstanding": 0,
  "previousNames": [],
  "url": "https://find-and-update.company-information.service.gov.uk/company/SC904493",
  "snapshotDate": "2026-10-01"
}
```

### 💰 How much does it cost?

| Event | Price |
|---|---|
| Register scan (once per run) | $0.03 |
| Company (one row) | $0.001, i.e. **$1 per 1,000 companies** |

Every run reads the whole register (about 470 MB), hence the small fixed fee per run. A list of 100 new companies costs $0.13. Higher Apify plans get volume discounts. You can set a maximum cost per run in the run options.

### ℹ️ Good to know

- **Monthly data:** Companies House publishes the snapshot within 5 working days of each month end, covering the register up to that date. Companies incorporated this month appear next month.
- **Live companies only:** dissolved companies are not in the snapshot.
- **Newest first:** results are sorted by incorporation date. With *Max results* at 0, the run returns up to the 100,000 newest matches; add filters for more specific lists.
- **No personal data:** the snapshot has no directors. "Care of" address lines, which can name a person, are removed.

### 📚 Source and terms

Companies House Free Company Data Product. Companies House places no restriction on how register information is used. This Actor is not affiliated with or endorsed by Companies House.

### 🔗 More official data from the same developer

- [European Fuel Prices](https://apify.com/yodeling_november/eu-fuel-prices): cheapest stations in 6 countries and averages for 29.
- [North America Fuel Prices](https://apify.com/yodeling_november/north-america-fuel-prices): Mexican stations plus US and Canada averages.
- [Public Tenders: Portugal, Spain & EU](https://apify.com/yodeling_november/public-tenders-pt-es-eu): a daily feed of new calls for tender.
- [Public Contract Awards: Portugal & Spain](https://apify.com/yodeling_november/public-contract-awards-pt-es): who wins, at what price and against whom.
- [New Companies & Insolvencies: Spain & France](https://apify.com/yodeling_november/company-events-spain-france): fresh leads and risk alerts from the official gazettes.
- [EU Company Verification (KYB)](https://apify.com/yodeling_november/eu-company-verification): bulk checks in 5 official registries.
- [European Public Data MCP Server](https://apify.com/yodeling_november/public-data-mcp): all of this as tools for your AI agent.

# Actor input Schema

## `incorporatedWithinDays` (type: `integer`):

Companies incorporated in this many days before the snapshot date. The snapshot covers the register up to the end of the previous month. 0 means any date, unless you set the dates below.

## `incorporatedFrom` (type: `string`):

Optional (YYYY-MM-DD). Replaces 'Incorporated within'.

## `incorporatedTo` (type: `string`):

Optional (YYYY-MM-DD).

## `sicCodes` (type: `array`):

Optional. SIC 2007 codes or prefixes: 62 (IT), 56101 (restaurants), 41 (construction of buildings), 68 (real estate).

## `postcodePrefixes` (type: `array`):

Optional. Postcode area (SW, M), district (SW1, M1, EC1A) or full postcode of the registered office.

## `postTowns` (type: `array`):

Optional. E.g. London, Manchester, Edinburgh.

## `statuses` (type: `array`):

Default Active. Others: Active - Proposal to Strike off, Liquidation, In Administration, Voluntary Arrangement. Empty means every live company.

## `categories` (type: `array`):

Optional. Partial match, e.g. Private Limited Company, Public Limited Company, Limited Liability Partnership, Community Interest Company.

## `nameKeywords` (type: `array`):

Optional. Words in the company name.

## `maxResults` (type: `integer`):

Newest incorporations first. 0 means no cap.

## `mode` (type: `string`):

New returns only companies not delivered before for the same Monitor ID. Schedule it monthly (the snapshot is refreshed within 5 working days of each month end).

## `monitorId` (type: `string`):

Name for the saved state in New mode.

## Actor input object example

```json
{
  "incorporatedWithinDays": 31,
  "sicCodes": [
    "62"
  ],
  "statuses": [
    "Active"
  ],
  "maxResults": 100,
  "mode": "snapshot",
  "monitorId": "default"
}
```

# Actor output Schema

## `companies` (type: `string`):

Companies matching the filters, newest incorporations first.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "incorporatedWithinDays": 31,
    "sicCodes": [
        "62"
    ],
    "maxResults": 100
};

// Run the Actor and wait for it to finish
const run = await client.actor("yodeling_november/uk-companies-house-search").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "incorporatedWithinDays": 31,
    "sicCodes": ["62"],
    "maxResults": 100,
}

# Run the Actor and wait for it to finish
run = client.actor("yodeling_november/uk-companies-house-search").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "incorporatedWithinDays": 31,
  "sicCodes": [
    "62"
  ],
  "maxResults": 100
}' |
apify call yodeling_november/uk-companies-house-search --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,yodeling_november/uk-companies-house-search"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/AIbLgesmRkRgfU7kY/builds/ORcpekzKUJDFiye8N/openapi.json
