817 MB
40 files
Updated 3 months ago
README.md

Onomaverse Names Datasets

Open data on 38,069 names across 106 countries and 94 languages: name frequencies, multilingual transliterations, gender inference, a name-equivalence graph, and name-day calendars.

๐Ÿ”— Source & full documentation: onomaverse.com/datasets ๐Ÿ“„ License: CC BY 4.0 ยท ๐Ÿ†” DOI: 10.5281/zenodo.20797446

Names data from Onomaverse, licensed CC BY 4.0.

Subsets

Each subset is a separate config โ€” load any of them by name. Per-subset documentation lives on the website.

Subset (config_name) Rows What it is Page
given-name-frequency 53,868 First-name frequency per country, with gender & in-country share page
surname-frequency 41,248 Surname frequency per country, with in-country share page
name-gender-inference 18,208 Male/female counts and P(male) per first name page
name-transliterations 1,126,144 Each name across up to 94 languages & scripts page
name-equivalence 70,626 Variants & cross-language equivalents (John โ†” Juan โ†” Ivan) page
name-days 2,426 Name-day dates by name & region (CSV + importable .ics) page
popular-names-by-country-2026 15,654 Top 100 given names & surnames per country page

Quick start

from datasets import load_dataset

# Pick any subset by its config name:
ds = load_dataset("onomaverse/names", "name-transliterations", split="train")
print(ds[0])

gnf = load_dataset("onomaverse/names", "given-name-frequency", split="train")

Every subset also ships as CSV / JSON Lines / Parquet in this repo, so you can grab files directly:

import pandas as pd
df = pd.read_parquet("hf://datasets/onomaverse/names/given-name-frequency.parquet")

Attribution (required)

Names data from Onomaverse, licensed CC BY 4.0. A link back to onomaverse.com/datasets satisfies the attribution requirement.

This dataset contains no descriptive prose (meanings, etymology, biographies). For that โ€” for every name, in 94 languages โ€” visit onomaverse.com.

Total size
817 MB
Files
40
Last updated
Jul 6
Pre-warmed CDN
US EU US EU

Contributors