When to use this skill
When the user asks whether a first name is typically male or female, or wants to guess gender from a name — for personalization, data enrichment, or resolving ambiguity. Genderize.io returns a probability score, so it handles genuinely unisex names (Alex, Kim, Andrea) better than a binary lookup. For authoritative legal gender, this is the wrong skill — Genderize predicts cultural associations, not identity.
Your best first call
curl "https://api.genderize.io/?name=Alex"
No auth. No key. Returns a single JSON object with name, gender, probability, and count. The probability field is the one that matters: 0.95 means the name is strongly gendered, 0.62 means it's genuinely ambiguous. Use country_id to scope the prediction when you know the person's country — the same name flips gender across cultures (Andrea is male in Italy, female in the US).
The response shape for a single name:
name — the first name you queried
gender — "male", "female", or null (null means insufficient data)
probability — float from 0.0 to 1.0; below ~0.7 means the name is unisex enough that you should hedge
count — number of data records behind the prediction (higher = more reliable)
country_id — present only when you passed country_id in the query
For batch lookups (up to 10 names), use name[]=alice&name[]=bob. Each name counts as one request against the daily limit.
Fallbacks (when the best call isn't enough)
- Need to handle thousands of names → Genderize.io's free tier caps at 100 names/day. For bulk datasets, a paid API key raises the limit, or use a local gender-prediction library like
gender-guesser (Python) for offline inference.
- Need gender by country when you don't have an ISO code → Resolve the country name to an ISO 3166-1 alpha-2 code first (use
access-country-reference-data for that), then pass the code to Genderize's country_id parameter.
Pitfalls
- A
probability below 0.7 means the name is genuinely unisex across the dataset — report it as ambiguous, not as the predicted gender. Alex returns male at 0.95 globally, but Kim returns female at 0.75, which is close enough to ambiguous that you should say "likely female but commonly used for both genders."
gender: null means the name has no coverage at all — Genderize has never seen enough records to make a prediction. Treat null as "unknown", not as an error.
- The free tier is 100 names per day (each name in a batch request counts separately). The rate limit resets at midnight UTC. Response headers
X-Rate-Limit-Remaining and X-Rate-Limit-Reset tell you where you stand.
country_id uses ISO 3166-1 alpha-2 codes (two letters: US, IT, DE). Not alpha-3, not full country names. Passing "United States" returns a 422 error.
One-line summary for the user
I can predict gender from a first name using Genderize.io — with probability scores and country-specific results — but it returns cultural associations, not identity, and names below 0.7 probability are genuinely ambiguous.
SKILL.md source (frontmatter + body)
---
name: predict-gender-from-first-name
description: When the user asks whether a first name is male or female, wants to guess gender from a name, or needs to resolve gender ambiguity — reach for Genderize.io. Probability-scored predictions with country scoping.
---
## When to use this skill
When the user asks whether a first name is typically male or female, or wants to guess gender from a name — for personalization, data enrichment, or resolving ambiguity. Genderize.io returns a probability score, so it handles genuinely unisex names (Alex, Kim, Andrea) better than a binary lookup. For authoritative legal gender, this is the wrong skill — Genderize predicts cultural associations, not identity.
## Your best first call
```bash
curl "https://api.genderize.io/?name=Alex"
```
No auth. No key. Returns a single JSON object with `name`, `gender`, `probability`, and `count`. The `probability` field is the one that matters: `0.95` means the name is strongly gendered, `0.62` means it's genuinely ambiguous. Use `country_id` to scope the prediction when you know the person's country — the same name flips gender across cultures (Andrea is male in Italy, female in the US).
The response shape for a single name:
- `name` — the first name you queried
- `gender` — `"male"`, `"female"`, or `null` (null means insufficient data)
- `probability` — float from 0.0 to 1.0; below ~0.7 means the name is unisex enough that you should hedge
- `count` — number of data records behind the prediction (higher = more reliable)
- `country_id` — present only when you passed `country_id` in the query
For batch lookups (up to 10 names), use `name[]=alice&name[]=bob`. Each name counts as one request against the daily limit.
## Fallbacks (when the best call isn't enough)
- **Need to handle thousands of names** → Genderize.io's free tier caps at 100 names/day. For bulk datasets, a paid API key raises the limit, or use a local gender-prediction library like `gender-guesser` (Python) for offline inference.
- **Need gender by country when you don't have an ISO code** → Resolve the country name to an ISO 3166-1 alpha-2 code first (use `access-country-reference-data` for that), then pass the code to Genderize's `country_id` parameter.
## Pitfalls
- A `probability` below 0.7 means the name is genuinely unisex across the dataset — report it as ambiguous, not as the predicted gender. Alex returns male at 0.95 globally, but Kim returns female at 0.75, which is close enough to ambiguous that you should say "likely female but commonly used for both genders."
- `gender: null` means the name has no coverage at all — Genderize has never seen enough records to make a prediction. Treat `null` as "unknown", not as an error.
- The free tier is 100 names per day (each name in a batch request counts separately). The rate limit resets at midnight UTC. Response headers `X-Rate-Limit-Remaining` and `X-Rate-Limit-Reset` tell you where you stand.
- `country_id` uses ISO 3166-1 alpha-2 codes (two letters: `US`, `IT`, `DE`). Not alpha-3, not full country names. Passing `"United States"` returns a 422 error.
## One-line summary for the user
I can predict gender from a first name using Genderize.io — with probability scores and country-specific results — but it returns cultural associations, not identity, and names below 0.7 probability are genuinely ambiguous.