Limits and fair use
There is no requests-per-second limit on a paid key. What limits a key is its plan's monthly allowance (or your credit, on the transactions API), how much one request can carry, and for some checks how fast the official source behind it can be read. Every limit below says what you get back when you reach it: an HTTP status and a code you can act on, never a silent drop.
Monthly plan allowances
Each plan includes a number of calls a month. Past that, extra calls are billed at the plan's per-call rate on your next invoice. At twice the allowance, calls pause for the rest of the month (HTTP 429) so a bug in your code can't run up a large bill; upgrade, or email us and we'll raise it. During the free trial, calls stop at the allowance, so nothing extra is charged before you've paid. We email you at 80% and 100% of the allowance and if calls pause. Sanctions and export screening answers also carry x-checks-used, x-checks-included and x-checks-limit headers.
| Plan | Included a month | Each extra call | Calls pause at |
|---|---|---|---|
| UK Sanctions Screening | |||
| Starter | 2,000 | 4p | 4,000 |
| Growth | 25,000 | 3p | 50,000 |
| Pro | 250,000 | 2p | 500,000 |
| Export Controls Screening | |||
| Starter | 2,000 | 5p | 4,000 |
| Growth | 25,000 | 4p | 50,000 |
| Pro | 250,000 | 3p | 500,000 |
| UK FCA Regulated Firm Verification | |||
| Starter | 500 | 5p | 1,000 |
| Growth | 5,000 | 3p | 10,000 |
| Pro | 25,000 | 2p | 50,000 |
| UK Postcode Intelligence | |||
| Starter | 500 | 6p | 1,000 |
| Growth | 5,000 | 4p | 10,000 |
| Pro | 50,000 | 2p | 100,000 |
| UK EPC Energy Performance | |||
| Starter | 200 | 25p | 400 |
| Growth | 2,000 | 12p | 4,000 |
| Pro | 25,000 | 5p | 50,000 |
| UK Companies House Watch | |||
| Starter | 500 | 6p | 1,000 |
| Growth | 5,000 | 4p | 10,000 |
| Pro | 50,000 | 2p | 100,000 |
| UK Business Risk + Director Score | |||
| Starter | 500 | 10p | 1,000 |
| Growth | 5,000 | 6p | 10,000 |
| Pro | 50,000 | 3p | 100,000 |
A bulk request counts each name or company in it. A request that would take you past the pause point is refused whole, so you never get half an answer that was half billed.
Credit, the test key and PEP
- The transactions API has no monthly allowance: each check is paid from your credit. If a run needs more credit than you have, it is refused with
insufficient_credit, the amount needed and your balance, and nothing runs or is charged. - Your free test key gets 50 real checks in total, once, shared across every API and the transactions API. After that, a request is refused with HTTP 429 and
test_limit; use your account key. Fixed test names (anything starting “Stratum Test” on sanctions screening) stay free, up to 200 a day. Watchlists need a plan. A test key is for building and testing, not for checking real clients. - PEP checks: up to 1,000 a day per account. Past that, the answer says the PEP check did not run, and you can try again the next day (UTC) or email us to raise it.
How much one request can carry
| Request | Limit |
|---|---|
| Sanctions bulk screen | 100 names per call. After 20 seconds it stops starting new names and returns the rest in notScreened; only screened names are charged. |
| A name or reference | 200 characters for a name, 100 for your reference |
| Business risk bulk | 50 company numbers per request |
| Company watchlist (set) | 1,000 company numbers per request |
| Disqualified directors check | 50 people per request |
| Suites (letting, sale, finance) | 50 parties per call; for more, use a screening list transaction |
| Screening list transaction | 2,000 names |
| Evidence files on a record | 15 MB per file, 10 files per record |
| Any request | Answered within 30 seconds, or it fails with a 5xx you can retry |
Over a size limit, the request is refused with HTTP 400 and a message saying the limit.
The speed of the official sources
Company checks read Companies House, which lets our whole service make 600 requests every 5 minutes. We keep recent answers, so repeat lookups don't use that up. If Companies House can't be read at that moment, the answer says so instead of guessing (for example, an ownership tree returns HTTP 503 with companies_house_unavailable and charges nothing). Try again after a minute.
Planning a one-off run of more than 10,000 checks, or steady traffic above 10 requests a second? Email support@stratumapis.com first and we'll make sure the sources keep up.
What to do when you reach a limit
- Read the
codeandmessagein the answer: they say which limit and what to do. - HTTP 429 from a plan or the test key won't clear by retrying: wait for the next month or day, or upgrade.
- HTTP 503 or another 5xx: retry after a short wait (for example 1, 5, then 30 seconds). Don't retry a 400.
- A name that errored, timed out or came back in
notScreenedhas not been screened. Don't treat it as clear. - Webhooks we send you are retried 1, 5, 30, 120 and 720 minutes after a failed delivery. See the transactions docs.
Working around these limits (sharing keys across organisations, rotating keys to dodge an allowance) breaches the acceptable use policy.