BYTETOOLS

Genderize API

Free API estimating the gender statistically associated with a first name, with a probability score. 100 requests/day, no key. Tested example and caveats.

No API key requiredCORS enabledHTTPSFree tier

Endpoint tested and returned HTTP 200 on 2026-08-19

What is the Genderize API?

Genderize is a free API that returns the gender statistically associated with a first name, along with a probability score and sample size. It allows 100 requests per day with no API key.

Genderize returns a predicted gender plus a `probability` between 0 and 1 and the `count` of records behind it. Those two fields are the important part: a 0.98 probability from 50,000 records is a very different claim from a 0.51 probability from 30.

This API should be used carefully. Gender is not reliably derivable from a name — many names are used across genders, vary by culture, and people's gender may not match any statistical association at all. Use it for aggregate dataset analysis, never to label an individual user or to personalise their experience.

Quick facts

Base URL
https://api.genderize.io
Authentication
No key for the free tier; optional key for higher volume.
Rate limit
100 requests per day without a key.
Pricing
Free tier; paid plans available.
CORS
Enabled — callable directly from browser JavaScript
Official docs
Read the docs

How to use the Genderize API

Every request below was executed against the live API on 2026-08-19, and the response shown is the real body it returned — not an illustration.

1. Estimate the gender associated with a name

GET https://api.genderize.io?name=luc

curl
curl 'https://api.genderize.io?name=luc'
JavaScript (fetch)
const res = await fetch("https://api.genderize.io?name=luc");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);
Python (requests)
import requests

res = requests.get("https://api.genderize.io?name=luc", timeout=20)
res.raise_for_status()
print(res.json())
Response — HTTP 200
{
  "count": 114766,
  "name": "luc",
  "gender": "male",
  "probability": 0.99
}

Parameters

ParameterTypeRequiredDescription
namestringRequiredFirst name to analyse. luc
country_idstringOptionalISO alpha-2 code to localise the estimate. FR

Response fields

namestring
The name queried.
genderstring|null
`male`, `female`, or null when unknown.
probabilityfloat
Confidence from 0 to 1 — read this, not just `gender`.
countinteger
Number of records behind the estimate.

What you can build with the Genderize API

  • Analyse aggregate gender distribution in an anonymised dataset
  • Study name usage patterns across countries in research
  • Teach probabilistic inference and its ethical limits
  • Prototype with synthetic demographic data

Common errors and how to fix them

gender: null

Name not in the dataset.

Fix: Handle null; coverage is weakest for non-Western names.

Low probability value

The name is used across genders.

Fix: Set a probability threshold and treat anything below it as unknown rather than guessing.

429

Daily limit reached.

Fix: Cache per name; results are stable over time.

Genderize API — frequently asked questions

How accurate is Genderize?

It reports a statistical association, not a fact. Always read the `probability` and `count` fields — a low probability means the name is genuinely ambiguous, and the API is often wrong for individuals.

Is Genderize free?

Yes, 100 requests per day with no API key required. Paid plans raise the limit.

Should I use this to set a user's gender?

No. Gender cannot be reliably inferred from a name, and doing so misgenders people. Ask users directly if you need this information, and use the API only for aggregate analysis.

Does it support country-specific results?

Yes, pass `country_id` with an ISO alpha-2 code. The same name can skew differently by country, so this meaningfully improves aggregate accuracy.

Tools that pair with this API

Genderize is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-19; always check the official documentation before relying on this API in production, as terms and limits can change.