---
title: Migration Program outcome by stream, Australia, 1984-85 onwards
resource: https://publicdata.au/d/au-migration-program-outcome/
publisher: Department of Home Affairs
licence: CC BY 3.0 AU
licence_url: https://creativecommons.org/licenses/by/3.0/au/
version: 2025-11-10
rows: 205
fields: 3
source: https://data.gov.au/data/dataset/2fe5e2a9-8a3d-4dcf-baec-c5147d953150/resource/b59a15df-86ea-4c4c-95be-4dd9fc9f8ac4/download/2024-25-historical-migration-statistics.xlsx
source_sha256: 0f8ed4639e9e252c4658d58858a1d1c3daf15a368bc1b686b60255c9e71578dd
language: en-AU
operator: National Digital
not_endorsed: true
---

# Migration Program outcome by stream, Australia, 1984-85 onwards

Permanent visas granted under Australia's Migration Program each financial year since 1984-85, by stream.

Published by Department of Home Affairs under CC BY 3.0 AU and republished here in other formats, with cells typed and suppressed values made null. Department of Home Affairs has not endorsed this site.

Also called: Australian immigration statistics by year, Migration Program planning levels and outcomes, Permanent migration to Australia by stream, Home Affairs historical migration statistics.

## Download

Latest version, redirects to `https://publicdata.au/d/au-migration-program-outcome/v/2025-11-10/`:

- csv: https://publicdata.au/d/au-migration-program-outcome/latest/data.csv (6.8 KB)
- xlsx: https://publicdata.au/d/au-migration-program-outcome/latest/data.xlsx (12 KB)
- json: https://publicdata.au/d/au-migration-program-outcome/latest/data.json (14 KB)
- parquet: https://publicdata.au/d/au-migration-program-outcome/latest/data.parquet (6.6 KB)
- sqlite: https://publicdata.au/d/au-migration-program-outcome/latest/data.sqlite (45 KB)
- duckdb: https://publicdata.au/d/au-migration-program-outcome/latest/data.duckdb (100 KB)
- ndjson: https://publicdata.au/d/au-migration-program-outcome/latest/data.ndjson (14 KB)
- arrow: https://publicdata.au/d/au-migration-program-outcome/latest/data.arrow (6.3 KB)
- csv.gz: https://publicdata.au/d/au-migration-program-outcome/latest/data.csv.gz (1.3 KB)

Pinned version 2025-11-10: `https://publicdata.au/d/au-migration-program-outcome/v/2025-11-10/data.<format>`. Dated versions never change.

## Query

The query API returns only the rows you ask for, as JSON, NDJSON or CSV, from the same typed rows as the files. It needs no key. Rows: https://publicdata.au/api/v1/datasets/au-migration-program-outcome/rows. Counts and sums: https://publicdata.au/api/v1/datasets/au-migration-program-outcome/aggregate.

- Rows: https://publicdata.au/api/v1/datasets/au-migration-program-outcome/rows?year=eq.2024%E2%80%9325&stream=neq.Total&limit=5
- Aggregate: https://publicdata.au/api/v1/datasets/au-migration-program-outcome/aggregate?group=stream&metric=sum.places&year=eq.2024%E2%80%9325&stream=neq.Total

Each filter is `field=operator.value` in the query string, and every filter must match. A number or date field compares as a number or date, and a text field compares as text. Values are case-sensitive except with `ilike`. Prefix `not.` to negate a filter, as `not.eq.value`. Operators: `eq.value`, `neq.value`, `gt.value`, `gte.value`, `lt.value`, `lte.value`, `like.*text*`, `ilike.*text*`, `in.(a,b,c)`, `is.null`.

- `select`: Fields to return, comma-separated. Every field when absent.
- `order`: `field.asc` or `field.desc`, comma-separated. The publisher's row order when absent.
- `limit`: Rows per page, 1 to 10,000. 100 when absent.
- `offset`: Rows to skip. The `next` URL in each answer sets it for you.
- `group`: On `aggregate`, fields to group by, comma-separated.
- `metric`: On `aggregate`, `count`, `sum.field`, `avg.field`, `min.field` or `max.field`, comma-separated. `count` when absent.
- `format`: `json`, `ndjson` or `csv`. JSON carries the provenance header, and the others carry it in response headers.

Without a version the API answers from the newest loaded version, and that answer changes when the publisher releases again. Put `versions/<date>/` before `rows` or `aggregate` for an answer that never changes. `/api/v1/datasets/<slug>/versions` lists the loaded versions. The API allows 60 requests in 10 seconds from one address. Above that it answers 429 for 10 seconds with a `Retry-After` header, a `RateLimit-Policy` header and a JSON body that gives the limit. Every API answer carries the same `RateLimit-Policy`. A client should wait the `Retry-After` seconds, or read the files, which have no limit. OpenAPI for this dataset: https://publicdata.au/d/au-migration-program-outcome/openapi.json

## Explore

Charts and dashboards in the browser: https://publicdata.au/d/au-migration-program-outcome/explore/. A dashboard can be shared as a link or embedded.

## Fields

| field | type | publisher's header | note |
|---|---|---|---|
| `year` | string | (row header 1) |  |
| `stream` | string | (column header 1) |  |
| `places` | integer | (cell) |  |

Key: `year, stream`.

## Versions

- 2025-11-10: 205 rows, 3 fields, sha256 0f8ed4639e9e. https://publicdata.au/d/au-migration-program-outcome/v/2025-11-10/

Machine-readable: https://publicdata.au/d/au-migration-program-outcome/versions.json, https://publicdata.au/d/au-migration-program-outcome/changes.json, https://publicdata.au/d/au-migration-program-outcome/datapackage.json, https://publicdata.au/d/au-migration-program-outcome/schema.json, https://publicdata.au/d/au-migration-program-outcome/history.tar.zst

## Part of Historical Migration Statistics

- [Migration Program outcome by stream and citizenship, Australia, 1996-97 onwards](https://publicdata.au/d/au-migration-program-by-citizenship/)
- [Humanitarian Program visa grants, Australia, 1977-78 onwards](https://publicdata.au/d/au-humanitarian-program-grants/)
- [Settler arrivals by country of birth, Australia, 1959 to 1996](https://publicdata.au/d/au-settler-arrivals-by-country/)
- [Permanent additions by country of birth, Australia, 1996-97 to 2016-17](https://publicdata.au/d/au-permanent-additions-by-country/)

## Same subject, other publishers

- [Interstate and overseas driver licences transferred to the ACT](https://publicdata.au/d/act-licences-transferred-to-act/) (ACT)
- [Driver licences transferred interstate, ACT](https://publicdata.au/d/act-licences-transferred-interstate/) (ACT)
- [Driver licences transferred to Victoria each quarter, by origin](https://publicdata.au/d/vic-driver-licence-transfers-to-victoria/) (Vic)
- [Driver licences transferred from Victoria each quarter](https://publicdata.au/d/vic-driver-licence-transfers-from-victoria/) (Vic)

## Attribution and citation

Department of Home Affairs, Australian Government, Historical Migration Statistics, sourced 29 September 2026, https://data.gov.au/data/dataset/historical-migration-statistics, licensed under CC BY 3.0 AU.

The licence requires the publisher's attribution. We ask that you also name publicdata.au and link to the version you used.

Plain text: Department of Home Affairs, Australian Government, Historical Migration Statistics, sourced 29 September 2026, https://data.gov.au/data/dataset/historical-migration-statistics, licensed under CC BY 3.0 AU. Serialised and versioned by National Digital at publicdata.au, https://publicdata.au/d/au-migration-program-outcome/v/2025-11-10/

Harvard: Department of Home Affairs (2025) Migration Program outcome by stream, Australia, 1984-85 onwards, version 2025-11-10 [data set], CC BY 3.0 AU, sourced 29 September 2026. Serialised and versioned by National Digital at publicdata.au. Available at: https://publicdata.au/d/au-migration-program-outcome/v/2025-11-10/

Markdown: Data: [Historical Migration Statistics](https://data.gov.au/data/dataset/historical-migration-statistics), Department of Home Affairs, [CC BY 3.0 AU](https://creativecommons.org/licenses/by/3.0/au/), sourced 29 September 2026. Files: [publicdata.au](https://publicdata.au/d/au-migration-program-outcome/v/2025-11-10/) by [National Digital](https://nationaldigital.com.au/).

## Questions

### How do I download Migration Program outcome by stream, Australia as a CSV file?

Open https://publicdata.au/d/au-migration-program-outcome/latest/data.csv. It redirects to the newest dated version, which is https://publicdata.au/d/au-migration-program-outcome/v/2025-11-10/data.csv today. The same path serves Excel, JSON, Parquet, SQLite, DuckDB, NDJSON, Arrow. A dated URL never changes, so use it when the file must stay the same.

### Can I open Migration Program outcome by stream, Australia in Excel?

Yes. https://publicdata.au/d/au-migration-program-outcome/v/2025-11-10/data.xlsx is a workbook with the 205 rows on a records sheet, the field list on a second sheet and the provenance on a third. The CSV also opens in Excel. https://publicdata.au/d/au-migration-program-outcome/v/2025-11-10/data.csv.gz is the CSV at about a tenth of the size.

### What years does Migration Program outcome by stream, Australia cover?

The current version covers the years since 1984. Each release from Home Affairs becomes a new dated version here, and earlier versions stay online.

### How often is Migration Program outcome by stream, Australia updated?

Home Affairs releases it yearly. This site checks the portal every week and adds a dated version when the file changes.

### Can I use Migration Program outcome by stream, Australia commercially?

Yes. CC BY 3.0 AU allows commercial use, redistribution and derived works as long as the attribution is kept. The attribution string is in this page's side column and inside every file.

### Is this the official source for Migration Program outcome by stream, Australia?

No. The publisher is Department of Home Affairs, and its page is https://data.gov.au/data/dataset/historical-migration-statistics. This site republishes the publisher's file without changing its content. The original sits beside every version as source.xlsx with its SHA-256, so the two can be compared.

### Is this the same as net overseas migration?

No. The Migration Program outcome counts permanent visas granted each financial year under the planned program. Net overseas migration is the ABS measure of people arriving minus people leaving, and it includes temporary residents such as students.

### Why do some stream names end in a number?

The numbers are the publisher's footnote markers, kept as published. The footnotes are in the workbook, and they explain changes in how each stream was counted.

### Are the early years exact?

The publisher notes that figures from 1983-84 to 1994-95 are rounded and reflect changes in reporting.

## What this site did to the data

Cells were typed, headers were renamed to snake_case and the encoding was made UTF-8. Rows were left alone. Nothing is derived. The publisher's file is beside every version as `source.xlsx`.

## Improve this dataset

This page is built from [register/au-migration-program-outcome.yaml](https://github.com/National-Digital/publicdata.au/blob/main/register/au-migration-program-outcome.yaml) on GitHub, and a fix to it is welcome as a pull request. https://publicdata.au/contribute/ explains how.
