publicdataau publicdata.au on GitHub
Published by NSW Registry of Births Deaths and Marriages under CC BY 4.0 and republished here without change to the content. NSW Registry of Births Deaths and Marriages has not endorsed this site.An independent republication of open government data. No government agency has endorsed it. Read more

Popular baby names by year and sex, New South Wales

live
Publisher NSW Registry of Births Deaths and MarriagesUpdated yearlyLicence CC BY 4.0Latest 2026-03-26Rows 14,801Fields 5

The Popular Baby Names list from the NSW Registry of Births Deaths and Marriages, which combines each year's list since 1952 into one file. Each row is one name, sex and year, with the name's rank in that year's list and the number of births registered with it. Names are in capitals as published.

Also called: NSW top 100 baby names, Most popular baby names NSW by year, NSW BDM popular names list, Baby name rankings New South Wales.

Part of Baby names registered in New South Wales, 3 tables the publisher releases together: Top three names registered for boys by council area, New South Wales, Top three names registered for girls by council area, New South Wales.

Before you use it
What is in each row?
One name in one year's list for boys or for girls, with its rank in that list and the number of babies registered with it. Each year's list has the 100 names given most often to each sex.
Which year does a list belong to?
The Registry builds each year's list from the births registered in that calendar year. A baby born late in one year and registered early in the next is counted in the later year.
Why can a list have more than 100 names?
Names with the same count share a rank, so a tie at the bottom of a list can carry it past 100 names. The rows are kept as the Registry publishes them.
14,801names
1952 to 2025years drawn
5fields
9formats
1version
020k40k60k80k1952 Female: 27,2901952 Male: 33,8951953 Female: 27,7441953 Male: 33,8491954 Female: 26,8811954 Male: 33,2161955 Female: 27,1241955 Male: 33,72019551956 Female: 27,2361956 Male: 34,6101957 Female: 28,1441957 Male: 35,4941958 Female: 28,2421958 Male: 35,0261959 Female: 28,3321959 Male: 35,2751960 Female: 28,4141960 Male: 36,2801961 Female: 29,8371961 Male: 37,3841962 Female: 28,7401962 Male: 37,2051963 Female: 27,8611963 Male: 36,0061964 Female: 26,2391964 Male: 34,5131965 Female: 25,2821965 Male: 33,43619651966 Female: 24,7461966 Male: 33,4711967 Female: 24,9691967 Male: 33,4551968 Female: 25,4761968 Male: 34,3201969 Female: 26,6781969 Male: 35,8311970 Female: 26,9341970 Male: 36,4801971 Female: 29,0661971 Male: 39,3371972 Female: 27,8441972 Male: 38,1371973 Female: 25,1981973 Male: 34,6961974 Female: 24,9291974 Male: 34,2421975 Female: 22,9301975 Male: 31,53619751976 Female: 22,3401976 Male: 30,5891977 Female: 21,9481977 Male: 30,3581978 Female: 22,2181978 Male: 30,0171979 Female: 21,7561979 Male: 30,0671980 Female: 21,8961980 Male: 30,7451981 Female: 23,0011981 Male: 31,9701982 Female: 22,6461982 Male: 31,7371983 Female: 22,6241983 Male: 31,5811984 Female: 22,6931984 Male: 31,6081985 Female: 22,7631985 Male: 32,00719851986 Female: 22,6551986 Male: 31,5011987 Female: 22,9111987 Male: 31,4311988 Female: 23,2801988 Male: 31,7541989 Female: 22,8641989 Male: 31,7491990 Female: 22,8801990 Male: 32,4121991 Female: 21,9571991 Male: 31,5891992 Female: 22,5061992 Male: 32,3421993 Female: 21,8031993 Male: 31,2811994 Female: 21,1551994 Male: 30,7871995 Female: 21,0211995 Male: 29,90419951996 Female: 19,9161996 Male: 29,3011997 Female: 19,9331997 Male: 28,8261998 Female: 19,4911998 Male: 27,9491999 Female: 19,4611999 Male: 27,6852000 Female: 19,2612000 Male: 27,5272001 Female: 18,6582001 Male: 26,4302002 Female: 18,5132002 Male: 25,7562003 Female: 18,2622003 Male: 25,5112004 Female: 17,7792004 Male: 24,6232005 Female: 18,7062005 Male: 25,26620052006 Female: 18,7732006 Male: 25,5102007 Female: 19,2692007 Male: 25,5992008 Female: 19,3542008 Male: 24,9952009 Female: 18,9982009 Male: 24,7662010 Female: 18,9362010 Male: 24,1282011 Female: 18,9872011 Male: 24,3062012 Female: 19,0742012 Male: 24,4012013 Female: 18,6042013 Male: 23,7542014 Female: 18,5282014 Male: 23,1232015 Female: 18,2792015 Male: 22,20520152016 Female: 18,3712016 Male: 22,1772017 Female: 17,2652017 Male: 20,6162018 Female: 17,0372018 Male: 20,5272019 Female: 16,8452019 Male: 20,2102020 Female: 16,9972020 Male: 19,9302021 Female: 17,4452021 Male: 20,5682022 Female: 16,4172022 Male: 18,7662023 Female: 15,1212023 Male: 17,5302024 Female: 15,2492024 Male: 17,2612025 Female: 15,0812025 Male: 17,2882025
FemaleMale
Babies given a top-100 name per year by sex, 1952 to 2025. The figure is a sum of the babies registered column from version 2026-03-26, worked out in the build. Nothing else is added.

Made for agents

Connect your AI agent

Any agent that connects to publicdata.au/mcp can find this dataset, read its 5 fields, count and filter across all 14,801 rows and diff its versions. Every answer names the version and carries NSW BDM's attribution. No key.

Then ask it: What does Popular baby names by year and sex, New South Wales hold, and what changed in the newest version?

claude mcp add --transport http publicdata https://publicdata.au/mcp

One command. No key, no account, no sign-up.

Download it as Excel, CSV, JSON and 6 more formats

Pick a format and a version. Excel is picked first because it opens in the tools most offices have. The URL is yours to keep. A dated version never changes.

Format
"Latest" redirects to the newest version and will change when the publisher releases again. A dated version never changes.
https://publicdata.au/d/nsw-popular-baby-names/latest/data.xlsx
Download

In your own tools

Use it in Excel, R, Python and more

Excel and Power BI read the CSV from its address and refresh from it. The R and Python packages take any dataset on this site by its slug, so a new dataset needs no new release. The DuckDB file attaches read-only over HTTPS, and a query reads only the blocks it touches.

The dated URL in the code never changes. https://publicdata.au/d/nsw-popular-baby-names/latest/ redirects to the newest version.

https://publicdata.au/d/nsw-popular-baby-names/latest/data.csv

In Excel choose Data, then From Web, and paste this address. Excel keeps it, so Refresh All reads the newest version. A sheet holds about a million rows; past that, load the query to the Data Model.

What is in it

Column names are made snake_case and the publisher's original header is kept beside each one. Blank cells are null. Nothing is added, removed, ranked or summarised.

FieldTypePublisher's headerNote
rankintegerRank
namestringName
numberintegerNumber
genderstringGender
yearintegerYear

Download this table as a data dictionary (Excel), or read it as a Frictionless Table Schema at schema.json. The key is year, gender, name.

A sample of 10 rows

The top five names for girls and for boys in the newest year, in rank order. A blank cell is shown as null.

ranknamenumbergenderyear
1NOAH589Male2025
1CHARLOTTE421Female2025
2OLIVER464Male2025
2AMELIA364Female2025
3THEODORE440Male2025
3OLIVIA331Female2025
4LUCA393Male2025
4ISLA317Female2025
5LEO379Male2025
5MIA308Female2025
The first row as JSON

As it appears in data.json.

GET https://publicdata.au/d/nsw-popular-baby-names/latest/data.json
{
  "rank": 1,
  "name": "NOAH",
  "number": 589,
  "gender": "Male",
  "year": 2025
}

Query it without downloading

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. Build a query here and run it, then copy the URL or the code into your own work.

Try rows or aggregate for this dataset. The query builder needs JavaScript.

How filters work

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.

OperatorWhat it matches
eq.valueEqual to the value.
neq.valueNot equal to the value. A blank cell does not match.
gt.valueGreater than the value.
gte.valueGreater than or equal to the value.
lt.valueLess than the value.
lte.valueLess than or equal to the value.
like.*text*Matches a pattern where * stands for any run of characters. Case-sensitive.
ilike.*text*The same as like, ignoring case.
in.(a,b,c)Equal to any value in the list. A value cannot contain a comma.
is.nullBlank in the source, or suppressed by the publisher.
ParameterWhat it does
selectFields to return, comma-separated. Every field when absent.
orderfield.asc or field.desc, comma-separated. The publisher's row order when absent.
limitRows per page, 1 to 10,000. 100 when absent.
offsetRows to skip. The next URL in each answer sets it for you.
groupOn aggregate, fields to group by, comma-separated.
metricOn aggregate, count, sum.field, avg.field, min.field or max.field, comma-separated. count when absent.
formatjson, 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 1 newest version is loaded; versions lists them.

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.json describes this dataset's query paths for client generators and agents.

https://publicdata.au/mcp is a remote MCP server over Streamable HTTP with the same tools, defined in the same place, so a tool added to the pages is added here too. It needs no key and no account. The row tools are held to the query API's limit of 60 queries in 10 seconds from one address, and each call is two queries because it also counts the matching rows. Add it to Claude Code with claude mcp add --transport http publicdata https://publicdata.au/mcp, add the URL in Claude as a custom connector, or give it to any client that connects to remote MCP servers. Each queryable dataset is also a resource at https://publicdata.au/d/<slug>/fields.json, which lists its fields with their types, the publisher's descriptions, their ranges and the values they hold, so an agent can read a dataset's shape before it writes a query.

Smaller files

The same rows split by a field, one JSON file each. Each file carries the same provenance header.

By gender (2 files)

by/gender/index.json lists every file with its row count.

What changed

One version for every release the publisher has made since this site started following the dataset. The date is the day the file changed on the portal.

  • 2026-03-26
    14,801 rows5 fieldsutf-8-sig1335e7311868

versions.json · changes.json · history.tar.zst (49 KB, every version's Parquet and manifest)

Questions

How do I download Popular baby names by year and sex as a CSV file?

Open https://publicdata.au/d/nsw-popular-baby-names/latest/data.csv. It redirects to the newest dated version, which is https://publicdata.au/d/nsw-popular-baby-names/v/2026-03-26/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 Popular baby names by year and sex in Excel?

Yes. https://publicdata.au/d/nsw-popular-baby-names/v/2026-03-26/data.xlsx is a workbook with the 14,801 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/nsw-popular-baby-names/v/2026-03-26/data.csv.gz is the CSV at about a tenth of the size.

What years does Popular baby names by year and sex cover?

The current version covers 1952 to 2025. Each release from NSW BDM becomes a new dated version here, and earlier versions stay online.

How often is Popular baby names by year and sex updated?

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

Can I use Popular baby names by year and sex commercially?

Yes. CC BY 4.0 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 Popular baby names by year and sex?

No. The publisher is NSW Registry of Births Deaths and Marriages, and its page is https://data.nsw.gov.au/data/dataset/popular-baby-names-from-1952. This site republishes the publisher's file without changing its content. The original sits beside every version as source.csv with its SHA-256, so the two can be compared.

How do I get only the rows for one gender?

Every version has one JSON file per value of gender, 2 files in the current version, listed with row counts at https://publicdata.au/d/nsw-popular-baby-names/v/2026-03-26/by/gender/index.json. For example https://publicdata.au/d/nsw-popular-baby-names/v/2026-03-26/by/gender/male.json holds the 7,401 rows where gender is Male.

What this site did to the data. Cells were typed, headers were renamed and the encoding was made UTF-8. Rows were left alone. The publisher's file sits beside every version as source.csv so the change can be checked.

Baby names registered in New South Wales is 3 tables here, and each takes its version date from its own file.