Rail freight transport, annual (million tonne-km)
Annual rail freight transport in million tonne-kilometres, by reporting country, for EU member states, EFTA countries, EU candidates and EU aggregates. Eurostat dataset rail_go_total ('Goods transported'), unit MIO_TKM (million tonne-kilometres). Each row is one (year, country): the total freight moved by rail in the reporting country, counting both national and international traffic loaded or unloaded there. Method: Eurostat compiles rail freight statistics reported by national statistical offices; non-EU/EFTA/candidate countries (notably the UK) are dropped by the connector's commercial-use geo rule. Units: million tonne-kilometres (tkm). Caveats: countries without a rail network (e.g. Malta, Cyprus) report no values; the EU27_2020, EU28 and EU27_2007 aggregates are included as published; recent years are provisional and revised. Coverage: ~36 geographic units after the geo rule, 2004 to the present, annual. Provenance: Eurostat keyless JSON-stat API, free reuse with attribution (Commission Decision 2011/833/EU) - please cite Eurostat. Primary key: (year, country_code). Join keys: country_code (ISO 3166-1 alpha-3), year. Cadence: refreshed yearly; Eurostat publishes the annual series each autumn. Sample use: filter country_code='DEU' to track German rail freight over time.
- Source
- Eurostat
- Rows
- 659
- Columns
- 4
- Source cadence
- Yearly
- Last refreshed
- Sep 23, 2026
- Theme
- transport
| Column | Type | Description |
|---|---|---|
| year | string | Reference year of the observation (stored as January 1), from the 'time' dimension. |
| country_code | string | Reporting country: ISO 3166-1 alpha-3 (mapped from Eurostat's alpha-2 codes). Also carries the provider aggregates (e.g. 'EU', 'EU27_2020', 'EU28', 'EA', 'EA21', 'EA20', 'EA19' for the house price index) verbatim; the exact set varies by dataset. |
| country_name | string | Canonical English country name (hub.normalize), or the Eurostat-published label for the EU/EA aggregates. |
| freight_million_tkm | float | Total rail freight transported in million tonne-kilometres (tkm), from the 'unit' indicator MIO_TKM, dataset rail_go_total ('Goods transported'). Each observation is one reporting country's total freight moved by rail in a year, counting national and international traffic loaded or unloaded there. Countries without a rail network (e.g. Malta, Cyprus) report no values; the EU aggregates (EU27_2020, EU28, EU27_2007) are included as published; the UK is dropped by the connector's commercial-use geo rule. (unit: million tonne-kilometres) |
First 10 sample rows — a preview, not the complete dataset.
| year | country_code | country_name | freight_million_tkm |
|---|---|---|---|
| 2004-01-01 | AUT | Austria | 18,757 |
| 2005-01-01 | AUT | Austria | 18,957 |
| 2006-01-01 | AUT | Austria | 20,980 |
| 2007-01-01 | AUT | Austria | 21,371 |
| 2008-01-01 | AUT | Austria | 21,915 |
| 2009-01-01 | AUT | Austria | 17,767 |
| 2010-01-01 | AUT | Austria | 19,833 |
| 2011-01-01 | AUT | Austria | 20,345 |
| 2012-01-01 | AUT | Austria | 19,499 |
| 2013-01-01 | AUT | Austria | 19,356 |
Profiled Sep 23, 2026 from snapshot 20260923T210309Z-c48f83316d6f
Measured- Completeness
- 100%
- Rows
- 659
- Columns
- 4
- Columns with gaps
- 0
| Column | Missing | Distinct | Range | Distribution |
|---|---|---|---|---|
| yearvarchar | 0% | 21 | — |
|
| country_codevarchar | 0% | 37 | — |
|
| country_namevarchar | 0% | 38 | — |
|
| freight_million_tkmdouble | 0% | 584 | 6 → 451,989median 9,230 | 14 outside 1st–99th percentile |
- Current
20260923T210309Z-c48f83316d6f · sha256 c48f83316d6f…
659 rows · first snapshot
Point any LLM at the metadata endpoint — the documentation above is machine-readable too (JSON-LD + Croissant).
curl "https://datazimuts.com/v1/datasets/eurostat/eurostat_rail_freight_annual" | jq '{title, rows, columns_count, license}'import requests
ds = requests.get("https://datazimuts.com/v1/datasets/eurostat/eurostat_rail_freight_annual").json()
print(ds["title"], ds["rows"], "rows")
# Sample rows for an LLM context window
for row in ds.get("sample_rows", [])[:5]:
print(row)API endpoint: https://datazimuts.com/v1/datasets/eurostat/eurostat_rail_freight_annual
Tip: fetch /llms.txt for the full machine-readable catalog.
Where this data comes from and what was made from it. Other people's work shows as counts; only shared projects are named.
Cite this snapshot
Pinned to snapshot 20260923T210309Z-c48f83316d6f and its content hash, so readers get exactly the data you used.
Eurostat. (2026). Rail freight transport, annual (million tonne-km) [Data set, snapshot 20260923T210309Z-c48f83316d6f, sha256 c48f83316d6f]. Datazimuts. Retrieved 2026-09-23, from https://datazimuts.com/en/datasets/eurostat/eurostat_rail_freight_annual?snapshot=20260923T210309Z-c48f83316d6f
@misc{dz_eurostat_eurostat_rail_freight_annual_c48f8331,
title = {{Rail freight transport, annual (million tonne-km)}},
author = {{Eurostat}},
year = {2026},
publisher = {Datazimuts},
howpublished = {\url{https://datazimuts.com/en/datasets/eurostat/eurostat_rail_freight_annual?snapshot=20260923T210309Z-c48f83316d6f}},
note = {Snapshot 20260923T210309Z-c48f83316d6f, sha256 c48f83316d6f53da4a2871e19876fba18b38b1cd29c3dbd84f12224d6554040c; accessed 2026-09-23}
}Embed a table or a chart
Paste this into any page. The embed is pinned to the same snapshot, follows the reader's light or dark setting, and always shows the source, license and a link back.
<iframe src="https://datazimuts.com/embed/chart?dataset=eurostat%2Feurostat_rail_freight_annual&lang=en&theme=auto&snapshot=20260923T210309Z-c48f83316d6f&x=year&y=freight_million_tkm&agg=avg" title="Rail freight transport, annual (million tonne-km)" width="100%" height="380" style="border:0" loading="lazy"></iframe>
Ask about this dataset. Answers come only from its catalog record, measured profile and change history, and list the facts they used.