UK Trade Data - Imports & Exports by Commodity 2000-2026
Pricing
from $0.03 / 1,000 uk trade records
UK Trade Data - Imports & Exports by Commodity 2000-2026
HMRC overseas trade statistics (OGL v3, no key): UK imports and exports by commodity (CN8/HS6/HS4/HS2), country and port, monthly from 2000 to the latest published month. Value in GBP, net mass and supplementary units, with server-side filtering and aggregation.
Pricing
from $0.03 / 1,000 uk trade records
Rating
0.0
(0)
Developer
Wenhao Yang
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
HMRC's Overseas Trade Statistics: what the UK imported and exported, by commodity code, country and port, every month from January 2000 to the latest published month (August 2026). 503,906 detail rows in the latest month alone, with £99.21 billion of trade. The lookup tables cover 16,243 commodity entries, 263 countries and 190 ports.
Low cost
From $0.00005 per record, down to $0.00003 at Gold. Pay only for the records you receive - the whole 122-million-row statistics table stays queryable, and you are never billed for the scan behind it.
What you get per row
| field | meaning |
|---|---|
month | the row's trade month, YYYY-MM (blank on a multi-month grouped row that does not group by month; groupKey then carries the dimension) |
flow | EU Imports, EU Exports, Non-EU Imports, Non-EU Exports |
commodityCode, commodityDescription | CN8 code and its HS2/HS4/HS6/CN8 description |
countryCode, countryName | ISO alpha-2 code and country |
portCode, portName | port or airport |
valueGbp | trade value in pounds sterling |
netMassKg | net mass in kilograms where published |
supplementaryUnits | quantity in the commodity's supplementary unit (litres, items, ...) where published |
groupKey, groupCount, groupBy | aggregate label, rows behind the group, dimension |
totalMatched, totalValueGbp | rows and value matched by your filters |
refreshedDate | latest published month |
Latest month at a glance
| flow | value | detail rows |
|---|---|---|
| EU Imports | £26.71 bn | 171,449 |
| EU Exports | £14.08 bn | 110,104 |
| Non-EU Imports | £41.21 bn | 103,682 |
| Non-EU Exports | £17.21 bn | 118,671 |
The default (empty) run returns this table for the latest month.
Search it
- Commodity -
commodity="30049000"(CN8),"300490"(HS6),"3004"(HS4) or"30"(HS2 chapter). A 2-digit chapter filter also includes HMRC's chapter-level rows (trade published without CN8 detail). - Country -
country="DE"orcountry="France". - Flow -
flow="import"(EU + non-EU),"export", or one exact flow. - Month -
month="2026-08"for one month, ormonthFrom/monthTofor a range. With both blank you get the latest month;monthToalone covers the 12 months ending there. - Port -
port="DOV"(port code) or a port ID.
Search results are the first maxResults matching rows in the API's own
order - not a random sample. Use mode=aggregate when you need every group,
and totalMatched / totalValueGbp for the true size and value of the match.
Example inputs
Wine imports by country, latest month
{ "month": "2026-08", "commodity": "2204", "flow": "import","mode": "aggregate", "groupBy": "country" }
German imports in one HS chapter
{ "commodity": "22", "country": "DE", "flow": "import", "maxResults": 100 }
One CN8 commodity's monthly history (last 12 published months)
{ "commodity": "30049000", "flow": "import", "mode": "aggregate","groupBy": "month" }
Aggregate it
groupBy = flow (default), country, commodity, port or month.
Aggregates return one row per group. The whole commodity universe is about
16,000 codes; an aggregate that would exceed 20,000 groups fails loudly
instead of silently truncating.
Scope, exclusions and licence
- Values are in GBP as published by HMRC. Net mass is kilograms.
- Ordinary OTS detail only: the actor keeps
SuppressionIndex = 0(excluding HMRC's disclosure-controlled index 2/3 rows) and drops the negative commodity IDs that HMRC uses as special aggregates. 2-digit chapter-level rows (01-99) are real published trade and are included, so a chapter filter returns more than the sum of its CN8 codes. Rows recorded at port "Not Collected" / "Estimates" are kept because they carry real trade; totals can therefore differ slightly from headline statistics. - Not trader-level data. No business or personal identifier is used.
- Published under the Open Government Licence v3, which permits commercial reuse with attribution.
Data source: HMRC UK Trade Info.