A community post on dev.to, attributed to an AI agent that says it operates the small Torix project of Apify scrapers and data tools on behalf of a human owner, walks through a Python approach for finding newly incorporated UK companies in a specific town using Companies House's free bulk data. The author states the code was tested on the real file before publication. This is an author claim published on a community platform, not an independently verified release or product announcement, and no new tool, version or service is being launched.
What the post outlines is a simple mechanism. On its download page, linked from GOV.UK's Companies House data products page, Companies House publishes the "Free Company Data Product," as the author terms it. No signup and no API key are needed, per the post, and the data comes as a zip holding either a single CSV or a handful of split files. Roughly 480 MB zipped and some 1.9 GB once unpacked is the size the author gives "at the time of writing," and the snapshot, the author says, reflects the end of the previous month and appears within the first working days of the next month.
The file holds one row per company. The author lists the columns useful for this kind of filtering: CompanyName, CompanyNumber, RegAddress.PostTown, RegAddress.PostCode, CompanyStatus, IncorporationDate in dd/mm/yyyy format, and SICCode.SicText_1. One practical gotcha the post flags is that some header names carry stray leading spaces, naming CompanyNumber as an example, so the script strips whitespace from field names before reading rows.
The sample script takes three arguments: the file path, a town name and a number of days. It computes a cutoff date, opens the CSV with utf-8-sig encoding, normalises the headers, then skips any row whose post town does not match the requested town in upper case or whose CompanyStatus is not "Active." It parses the incorporation date, skips rows where parsing fails, and prints the date, company number, name and primary SIC description for companies incorporated on or after the cutoff.
The author reports running it against a file named for the 1 October 2026 snapshot, with Leicester as the town and a 40-day window. According to the post, the run took roughly 30 seconds on a small VPS; 146 active Leicester companies registered in the previous 40 days were returned. Three example output lines appear, each dated 2026-09-30: an IT consultancy, a vehicle bodyshop and a barber, with company number and SIC description for each. These figures are the author's own reported results and were not independently checked.
Variations are also described in the post. To filter by industry you match text in the SICCode.SicText_1 column, and the author cites "62020" for IT consultancy and "96020" for hairdressers. For filtering by area, the postcode prefix can be used rather than the town name, since towns are free text in the registered address. CompanyCategory is used to filter by type, which the author says separates private limited companies from LLPs and others.
For anyone weighing this route, the limitations the author sets out matter. Because the data is monthly, it is not a daily feed; for daily freshness the post points to the Companies House Streaming API, requiring a free API key from the developer hub, and that part, the author explicitly says, has not been set up. Registered-office data is what this is, so a company registered at its accountant's address will show up under the accountant's town rather than where it actually operates.
There is also no contact data. The author states plainly that Companies House does not publish websites, emails or phone numbers, so adding them requires a separate lookup step. The post adds that anyone doing so must respect UK rules on marketing to companies, naming PECR and UK GDPR for named individuals, and advises checking the licence on the Companies House data page before commercial reuse.
The post closes with an offer rather than a product: a free 25-row sample CSV for one UK town and one or two industries, requested by email with the town and industry specified. The author frames this as a trial of whether people want the service at all and asks for honest feedback, including negative feedback. No pricing, service level or delivery commitment is stated, and the Apify scraper link is mentioned only as where the author's other tools live.
For freelancers and developers, the practical value is in the shape of the workflow rather than the specific script. Accountants, banks, insurers, web agencies and office suppliers are named in the post as the kinds of businesses that want to know who has just registered locally, and a monthly bulk file with no key or signup is a low-friction way to prototype that kind of list-building before committing to a paid feed or an API integration. The tradeoff is freshness and address accuracy: a monthly cadence and registered-office towns will not suit every use case.
Editorially, the most useful reading is conditional. The reported 30-second runtime and 146-company result depend on the author's machine, the snapshot date and the town chosen, and the post gives no benchmark across towns or file sizes. The header-whitespace warning and the free-text town field are the kind of detail that tends to break naive scripts, so anyone adapting the approach should expect to validate their own output rather than assume the sample generalises.
What remains unknown is substantial. The post does not state the exact publication date of the snapshot it used beyond the filename, does not quantify how often header quirks change between monthly releases, and does not describe the Streaming API beyond its existence and key requirement. The licence terms are referenced but not summarised. The sample offer has no stated turnaround. None of the reported results have been reproduced outside the author's account.
The takeaway for this audience is that the free monthly Companies House file is a documented, keyless starting point for local incorporation research, and the post's contribution is a concrete, attributed recipe plus an honest list of its limits. Treat the Leicester numbers as one author's reported run, check the licence before commercial use, and plan a separate step if contact details are actually needed.