Gender from an email address
ayse.yilmaz84@example.com becomes ayse, and ayse becomes female. The second step is the one with benchmarks; the first is the one that actually breaks.
100 free credits every day. No card.
The exact transform
Four steps, no cleverness. Everything before the @ is lowercased. Runs of dot, underscore, hyphen, plus and digits become spaces. Titles and single letters are dropped. The first surviving token is looked up.
Two cases stop before the lookup. A role address such as admin, info, sales or support returns null, because it is not a person. An initial followed only by one more token, as in j.smith, returns null too: that last token is a surname, and looking it up as a given name would produce a confident wrong answer.
So jean.dupont+news@x.fr resolves as jean, and dr.hans.mueller@x.de drops the title and resolves as hans.
curl "https://namegender.com/api/v1/gender/email?email=ayse.yilmaz84%40example.com" \
-H "Authorization: Bearer YOUR_KEY"
Copy failed. Select and copy the text.
What comes back, with real output
These are live results, no country hint. Until 11 September 2026 the last two rows returned a gender: admin@ as male at 95 and j.smith@ as the surname Smith, male at 100 with high confidence. Both now return null, which costs a credit but never writes a wrong gender into your data.
| Input | Extracted | Answer |
|---|---|---|
| ayse.yilmaz84@example.com | Ayse | female, 100, 655 obs, high |
| info@acme.com | — | null, unknown |
| mgarcia@x.es | Mgarcia | null, unknown |
| admin@acme.com | — | null, unknown |
| j.smith@example.com | — | null, unknown |
The pre-filter that removes most of the damage
Drop role addresses locally before you spend a credit: admin, info, sales, support, contact, hello, help, office, billing, accounts, noreply, postmaster, webmaster, marketing, press, jobs, careers, hr, legal, security, team. The API returns them as null, but each still costs a credit, and filtering them is faster than a round trip.
Treat a local part with no separator as low-trust regardless of the confidence field. mgarcia and jsmith are an initial glued to a surname with nothing to split on; today both come back null, but a compressed local part can still happen to match a rare dictionary entry.
Then read the name field. If you expected a given name and got a surname, the answer is an extraction failure wearing a confidence tier.
Use a real name column when you have one
Email extraction is a fallback for rows with nothing else, not a substitute for data you already hold. Where both exist, the name column wins every time — it removes an entire class of failure that no confidence field can see.
There is also a limit no parser can fix: a mailbox is not always one person. Shared household addresses, assistant-managed inboxes and aliases forwarding to a team all carry one name and belong to somebody else, or to several people. That error is invisible in the data and no vendor can detect it for you.
So measure the hit rate on your own addresses before you commit. Run a representative sample, count how many rows come back at high or medium confidence after the role filter, and decide from that number. On a consumer list built from real signups it is usually respectable; on a B2B list full of firstinitial-lastname corporate addresses it is often not worth the credits.
Questions
How accurate is gender from an email address?
Classification accuracy is the same as for the extracted name; the extra error comes from extraction. That is why we publish the failing cases above rather than a single blended percentage.
Do you handle plus-addressing and dots?
Yes. Both are separators, so jean.dupont+news@x.fr resolves as jean.
Can I pass a country as well?
Yes, and you should when you have one. It changes the answer for names whose dominant gender differs by country.
Is an email address personal data?
In most jurisdictions you are likely to operate in, yes, and so is inferred gender. The processor terms are in the data processing agreement.
Related pages
Detect gender from a username or handle. camelCase splitting, separator and digit stripping, and the handles that are not names at all.
Predict gender from a full name. How the given name is extracted from titles, initials, particles and surname-first orders, and how to audit that it worked.
Append a gender column to a customer list, CRM export or lead database, with a confidence field you can filter on and no monthly reset on purchased credits.
Turning an address into a gender is two jobs, and almost every failure is in the first. The exact transform, the confidently wrong cases, and a pre-filter.
Reading the gender field alone discards everything that says whether to believe it. What each response field means and the thresholds behind confidence.
Check it against your own list
Every number on this page is reproducible with a free key. If your data breaks it, that is the more interesting result.