UK public tenders from Find a Tender and Contracts Finder
Returns UK public procurement notices from the government's two official services, one row per notice with title, buyer, region, CPV codes, estimated value in GBP, deadline, stage and a link to the notice.
Find a Tender carries the notices UK buyers publish under the Procurement Act 2023 and the older regulations. Contracts Finder carries the smaller contracts, mainly in England, from 12 000 GBP for central government and 30 000 GBP for other public bodies. Both publish open OCDS APIs. This tool reads both and returns their notices newest first in one dataset with the same fields.
Filter by keywords, CPV codes, stage (tender, planning or award), minimum value and publication date, at most 31 days per run. A run with empty input returns the 50 newest open tender notices from the last seven days, from both services.
Sample from a real run
5 of 50 rows (selected fields) from run hkpLhGPdB4xcFeAtV on 6 October 2026, exactly as the tool returned them.
id | title | buyer | buyerCity | mainCpvCode | estimatedValue | currency | deadlineDate | source | url |
|---|---|---|---|---|---|---|---|---|---|
| 094482-2026 | The Essex Carers Hub | Essex County Council | Chelmsford | 85312300 | null | null | 2026-11-10 | find-a-tender | www.find-tender.service.gov.uk/Notice/094482-2... |
| 094481-2026 | T189 - Corporate Healthcare | Northern Ireland Water | Belfast | 66512200 | 346000 | GBP | 2026-10-20 | find-a-tender | www.find-tender.service.gov.uk/Notice/094481-2... |
| 094479-2026 | Design and Installation of Water Break Tanks | Test Valley Borough Council | Andover | 44611000 | 15000 | GBP | 2026-10-23 | find-a-tender | www.find-tender.service.gov.uk/Notice/094479-2... |
| 094476-2026 | Competitive Flexible Procedure (CFP) Aldbanks Supported Living CBC-2074-CFP-SK | Central Bedfordshire Council | Shefford | 85311000 | 2772000 | GBP | 2026-11-05 | find-a-tender | www.find-tender.service.gov.uk/Notice/094476-2... |
| 9e406bf2-0f16-423c-a4f2-98f1431438a6-916843 | Tourism Campaign - Digital Marketing | North York Moors National Park | York | 79342100 | null | null | 2026-11-10 | contracts-finder | www.contractsfinder.service.gov.uk/Notice/9e40... |
Fields
Every row has these fields. Field names are stable between versions.
| Field | What it holds |
|---|---|
id | Notice id in its service: 093549-2026 on Find a Tender, a release id such as 9e406bf2-0f16-423c-a4f2-98f1431438a6-916843 on Contracts Finder |
ocid | OCDS process id. All notices for the same procurement (planning, tender, award) share it |
title | Title of the procurement |
description | Short description, plain text, at most about 1 000 characters |
buyer | Name of the buying organisation |
buyerCity | Town of the buyer |
buyerRegion | ITL/NUTS region code of the buyer, for example UKC14. null on Contracts Finder, which does not give one |
deliveryRegions | Where the work is delivered, as the notice states it: ITL/NUTS codes on Find a Tender (UKC14), region names on Contracts Finder (North East) |
country | Always GB |
cpvCodes | All CPV codes in the notice |
mainCpvCode | Main CPV code of the notice |
estimatedValue | Estimated value excluding VAT, or the sum of the lots when all lots have a value in the same currency |
currency | Currency of estimatedValue, for example GBP |
awardedValue | Value of the contracts or awards in an award notice |
suppliers | Winning suppliers that are registered companies (Companies House number) |
supplierCount | Number of winning suppliers, including those that are not named |
publicationDate | Publication date, YYYY-MM-DD |
publishedAt | Exact publication time, ISO 8601 with time zone |
deadline | Deadline for tenders, ISO 8601, when the notice has one |
deadlineDate | Date part of deadline |
stage | tender, planning or award |
releaseTag | The OCDS release tag, for example tender or tenderUpdate |
noticeType | Find a Tender notice type when stated, for example UK4 (tender notice) or UK6 (contract award notice). null on Contracts Finder |
tenderStatus | active, planned, complete, cancelled and so on |
procedureType | The procedure as the notice names it, for example Open procedure (below threshold) |
contractNature | goods, services or works |
aboveThreshold | Whether the procurement is above the threshold. On Contracts Finder it is read from the procedure text and is null when the text does not say |
legalBasis | The law the procurement is run under, for example Procurement Act 2023. null on Contracts Finder |
url | Link to the notice on the service it came from |
noticeUrl | The same link as url |
source | find-a-tender or contracts-finder |
sourceName | Name of the service, for attribution |
license | Name of the license the notice is published under |
Input example
Paste it into the JSON tab of the actor in Apify Console, or send it to the Apify API.
{
"stages": [
"tender"
],
"onlyNew": false,
"sources": [
"find-a-tender",
"contracts-finder"
],
"maxResults": 50
}What people use it for
- Tender alert. A daily run for your CPV codes or keywords with
onlyNewset to true returns only notices published since the last run. Connect an Apify integration to send them to Slack or e-mail. - Deadline tracking. Sort the open tenders in your field by
deadlineDatein a spreadsheet and see what has to be answered first. - Following a procurement to award. All notices for the same procurement share
ocid, so you can go from pipeline notice to tender to contract award and see the awarded value and the winning companies.
Price
4 USD per 1 000 notices, plus Apify platform usage.
A run with the default input returns at most 50 notices, so it costs at most 0.20 USD in results. The run on 6 October 2026 shown above returned 50 notices from both services in under 5 seconds, which is 0.20 USD. maxResults caps every run.
Run it on a schedule
Set onlyNew to true and add the actor to a schedule in Apify Console (for example the cron expression 0 7 * * * for 07:00 every day). The actor remembers what it has already delivered for the same input, in a named key-value store in your own Apify account (nightwave-state-uk-find-a-tender), and each run returns and charges only what is new. The first run returns everything in the selection. A run with nothing new finishes with 0 rows and costs nothing beyond platform usage.
Source and license
The data comes from the public Find a Tender OCDS API and the Contracts Finder OCDS search API, both run by the Cabinet Office. No API key is needed. Contact names, e-mail addresses and phone numbers in the notices are left out, and winning suppliers are named only when they are registered companies. The tool is not affiliated with or endorsed by the Cabinet Office.
Both services publish their notice data under the Open Government Licence v3.0, which allows commercial and non-commercial reuse with attribution. Use the attribution "Contains public sector information licensed under the Open Government Licence v3.0." Every row carries sourceName and license for that purpose.
Try it
The tool runs on Apify. Apify handles your account, the runs and the payment, and you can try it with the input above before you schedule anything.
Built and maintained by Nightwave AB. Questions or bugs: kontakt@nightwave.se