International migrant stock by destination (UN DESA, 1990-2024)
Mid-year international migrant stock by destination from UN DESA Population Division International Migrant Stock 2024 (234 countries and areas; 1990, 1995, 2000, 2005, 2010, 2015, 2020, 2024): stocks by sex, female share, share of population, annual rate of change, source-type code, global share and rank. Raw data: UN DESA Population Division, CC BY 3.0 IGO.
- Rows
- 1,872
- Columns
- 15
- Source cadence
- Yearly
- Last refreshed
- Oct 2, 2026
- Theme
- demographics
| Column | Type | Description |
|---|---|---|
| date | date | Reference date: 1 July of the reference year (mid-year estimates). |
| year | integer | Reference year (1990, 1995, 2000, 2005, 2010, 2015, 2020, 2024). |
| country | string | Country/area name via the hub normalization layer. |
| country_code | string | ISO 3166-1 alpha-3 code of the destination. |
| migrant_stock_total | float | International migrant stock at mid-year, both sexes (persons). People born in a country other than that in which they live, including refugees. |
| migrant_stock_male | float | Male international migrant stock (persons). |
| migrant_stock_female | float | Female international migrant stock (persons). |
| female_share_pct | float | 100 * female / total. |
| migrant_stock_pct_of_population | float | Migrant stock as a percentage of the total population (Division Table 3; population from World Population Prospects). |
| annual_rate_of_change_pct | float | Exponential annual rate of change of the migrant stock (Division Table 5, percent per year) over the interval ending in the reference year (null for 1990: the edition publishes no preceding interval). |
| data_type_code | string | Division source-type code(s): B = foreign-born data, C = foreign-citizenship data, R = refugee/asylum-seeker records added, I = imputed (combinations like 'B R' occur). |
| data_type_label | string | English label(s) for data_type_code. |
| global_share_pct | float | 100 * stock / world stock that year. |
| migrant_rank | integer | Cross-destination rank on migrant_stock_total within the year (1 = largest stock). |
| row_hash | string | Deterministic 12-hex row identity hash over source, country, year and sex-split stocks. |
First 10 sample rows — a preview, not the complete dataset.
| date | year | country | country_code | migrant_stock_total | migrant_stock_male | migrant_stock_female | female_share_pct | migrant_stock_pct_of_population | annual_rate_of_change_pct | data_type_code | data_type_label | global_share_pct | migrant_rank | row_hash |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1990-07-01 | 1,990 | United States | USA | 23,266,147 | 11,386,092 | 11,880,055 | 51.062 | 9.183 | — | B | foreign-born population data | 15.122 | 1 | aef91b7fb637 |
| 1990-07-01 | 1,990 | Russia | RUS | 11,524,948 | 5,655,422 | 5,869,526 | 50.929 | 7.736 | — | B R | foreign-born population data + refugee/asylum-seeker records added | 7.491 | 2 | 624c2a90b20e |
| 1990-07-01 | 1,990 | India | IND | 7,212,791 | 3,718,790 | 3,494,001 | 48.442 | 0.834 | — | C R | foreign-citizenship data + refugee/asylum-seeker records added | 4.688 | 3 | 5f2eea9c9ec7 |
| 1990-07-01 | 1,990 | Germany | DEU | 6,960,112 | 3,480,056 | 3,480,056 | 50 | 8.732 | — | B R | foreign-born population data + refugee/asylum-seeker records added | 4.524 | 4 | b1c328e4b7aa |
| 1990-07-01 | 1,990 | Ukraine | UKR | 6,892,920 | 2,953,603 | 3,939,317 | 57.15 | 13.242 | — | B | foreign-born population data | 4.48 | 5 | 1e1671727044 |
| 1990-07-01 | 1,990 | Pakistan | PAK | 6,208,204 | 3,264,380 | 2,943,824 | 47.418 | 5.345 | — | B R | foreign-born population data + refugee/asylum-seeker records added | 4.035 | 6 | 3d61b9d43a24 |
| 1990-07-01 | 1,990 | France | FRA | 5,890,023 | 2,995,574 | 2,894,449 | 49.142 | 10.335 | — | B R | foreign-born population data + refugee/asylum-seeker records added | 3.828 | 7 | 77e747b3b257 |
| 1990-07-01 | 1,990 | Saudi Arabia | SAU | 4,484,868 | 2,950,373 | 1,534,495 | 34.215 | 42.148 | — | C R | foreign-citizenship data + refugee/asylum-seeker records added | 2.915 | 8 | d85f890be0dd |
| 1990-07-01 | 1,990 | Iran | IRN | 4,291,601 | 2,369,093 | 1,922,508 | 44.797 | 7.351 | — | C R | foreign-citizenship data + refugee/asylum-seeker records added | 2.789 | 9 | b1f1ad4d52e0 |
| 1990-07-01 | 1,990 | Canada | CAN | 4,251,056 | 2,085,083 | 2,165,973 | 50.951 | 15.297 | — | B | foreign-born population data | 2.763 | 10 | 723c6f2ed3db |
- Current
20261002T205628Z-eea6031292b3 · sha256 eea6031292b3…
1,872 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/un_desa_migrant_stock_intel/migrant_stock_by_destination" | jq '{title, rows, columns_count, license}'import requests
ds = requests.get("https://datazimuts.com/v1/datasets/un_desa_migrant_stock_intel/migrant_stock_by_destination").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/un_desa_migrant_stock_intel/migrant_stock_by_destination
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 20261002T205628Z-eea6031292b3 and its content hash, so readers get exactly the data you used.
UN DESA international migrant stock intelligence. (2026). International migrant stock by destination (UN DESA, 1990-2024) [Data set, snapshot 20261002T205628Z-eea6031292b3, sha256 eea6031292b3]. Datazimuts. Retrieved 2026-10-04, from https://datazimuts.com/en/datasets/un_desa_migrant_stock_intel/migrant_stock_by_destination?snapshot=20261002T205628Z-eea6031292b3
@misc{dz_un_desa_migrant_stock_intel_migrant_stoc_eea60312,
title = {{International migrant stock by destination (UN DESA, 1990-2024)}},
author = {{UN DESA international migrant stock intelligence}},
year = {2026},
publisher = {Datazimuts},
howpublished = {\url{https://datazimuts.com/en/datasets/un_desa_migrant_stock_intel/migrant_stock_by_destination?snapshot=20261002T205628Z-eea6031292b3}},
note = {Snapshot 20261002T205628Z-eea6031292b3, sha256 eea6031292b32c976d0e2e7f6a313880725c7eadc828c4062c1c182d981745f4; accessed 2026-10-04}
}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=un_desa_migrant_stock_intel%2Fmigrant_stock_by_destination&lang=en&theme=auto&snapshot=20261002T205628Z-eea6031292b3&x=date&y=year&agg=avg" title="International migrant stock by destination (UN DESA, 1990-2024)" 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.