This repository provides a unified dataset of baby names registered across the UK, combining all available datasets published by the Office for National Statistics (ONS), National Records of Scotland (NRS), and the Northern Ireland Statistics and Research Agency (NISRA). It includes:
- Boys’ names
- Girls’ names
- Historic top 100 names for England and Wales
- Breakdowns by England, Wales, England and Wales jointly, Scotland, and Northern Ireland
ONS, NRS, and NISRA each publish their own baby name statistics, spread across many Excel and CSV files with different structures and naming conventions that change over time.
This repo fetches, cleans, and consolidates these into a tidy, long-format dataset for analysis and reuse.
| Dataset | Description | Link |
|---|---|---|
| Boys' names | Annual baby name stats for boys in England and Wales | ONS boys |
| Girls' names | Annual baby name stats for girls in England and Wales | ONS girls |
| Historic (England & Wales) | Top 100 baby names from 1904 onwards at 10-year intervals | ONS historic |
| Scotland | Full list of every name given, with rank and count, from 1974 onwards | NRS babies' first names |
| Northern Ireland | Full list of every name given, with rank and count, from 1997 onwards | NISRA baby names |
Unlike the ONS data (top 100 only), the Scotland and Northern Ireland sources publish every name given each year, however low the count — including names given to only a handful of babies.
download.Rfetches the latest datasets from ONS, NRS, and NISRA into thedata-rawdirectorymain.Rprocesses these files, harmonising formats and combining them into a single dataset which is output tobabynames.csv
You can query the dataset using the DuckDB shell — click the link to explore with SQL in the browser.
The dataset includes rankings for each decade from 1904 to 1994 for England and Wales, followed by annual data from 1996 onwards for England, Wales, and England and Wales jointly; annual data for Scotland from 1974 onwards; and annual data for Northern Ireland from 1997 onwards. Each row represents a baby name at a specific time and geography, along with its rank and number of registrations (count).
| year | sex | geography | geography_label | rank | name | count |
|---|---|---|---|---|---|---|
| 1996 | Female | K04000001 | England and Wales | 1 | Sophie | 7087 |
| 1996 | Female | K04000001 | England and Wales | 2 | Chloe | 6824 |
| 1996 | Female | K04000001 | England and Wales | 3 | Jessica | 6711 |
| 1996 | Female | K04000001 | England and Wales | 4 | Emily | 6415 |
| 1996 | Female | K04000001 | England and Wales | 5 | Lauren | 6299 |
| 1996 | Female | K04000001 | England and Wales | 6 | Hannah | 5916 |
Geography codes follow the standard ONS GSS coding:
| Code | geography_label |
|---|---|
| E92000001 | England |
| W92000004 | Wales |
| K04000001 | England and Wales |
| S92000003 | Scotland |
| N92000002 | Northern Ireland |
This project is open source under the MIT licence. Data is Crown copyright and reproduced under the terms of the Open Government Licence v3.0.