続行 → 概要

名前から性別を推定するAPI

名前を送ると、性別、確率、サンプルサイズ、信頼区分、データ出典が返ります。リクエストは1回で済み、漢字・かな・ローマ字を受け付け、一括APIは入力の順序を保ちます。

これは統計的な推定であり、本人確認ではありません。集計や傾向分析、「不明」を残せる処理には使えますが、特定の個人についての判断には使えません。

クレジットカード不要。購入した分は毎月リセットされません。

データベースの名前数
8.0M
対応国数
198
日本の名前の正解率
78.0%
固定テスト 51 件のうち、回答した名前における正解率
日本の名前のカバレッジ
98.0%
同じテストで回答を返せた割合

最初のリクエスト

ダッシュボードでキーを作成し、エンドポイントを呼びます。ここではPOSTでJSONを送っています。漢字やかなのURLエンコードを手で扱わずに済むためで、GETでも同じことができます。

リクエスト
curl -X POST "https://namegender.com/api/v1/gender" \
  -H "Authorization: Bearer ng_live_xxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{"name":"さくら","country":"JP"}'
実際のレスポンス
{
  "query": "さくら",
  "name": "さくら",
  "gender": "female",
  "probability": 95,
  "sample_size": 0,
  "confidence": "unverified",
  "country": "JP",
  "source": "script",
  "matched_as": "sakura"
}

`sample_size` が `0`、`confidence` が `unverified` である点に注意してください。日本には名前単位で監査できる公開登録統計がないため、この結果は計数された記録ではなく文字規則に基づいています。正しい可能性は高くても、件数に支えられてはいません。

レスポンスの各項目

`gender` だけを保存すると、強い結果とほぼ半々の結果を区別できなくなります。後から閾値を変えられるように、根拠の項目も一緒に保存してください。

項目 実装上の意味
gender 根拠が閾値を満たしたときの主要カテゴリ。満たさなければ null。
probability データ上の主要カテゴリの比率。その人についての確率ではありません。
sample_size 結果を支える集計可能な件数。0 は出典が監査可能な件数を公開していないことを示します。
confidence 証拠量に基づく区分:high、medium、low、unverified、unknown。
source データベース、文字規則、あいまい一致、LLM、該当なしのいずれか。
matched_as 実際に照合されたエントリ。入力と異なる場合は転写やあいまい一致が起きています。

`probability: 90` は「この人が90%の確率でその性別」という意味ではありません。データ上でその名前が主要カテゴリと結びつく比率です。この二つを混同することが、名前由来の性別データで最も多い誤用です。

漢字・かな・ローマ字の扱い

日本人名で難しいのは検索ではなく入力です。同じ漢字に複数の読みがあり、文字列だけから読みを確定できません。

同じ漢字が複数の読みを持つ

例えば「薫」はカオル、「郁」はイクにもカオリにもなり得ます。読みが決まらなければ、名前が持つ性別の手がかりも決まりません。

漢字はときに別の読みに寄る

日本の名前に計数された登録データがないため、漢字はCJK共通の読みに引き寄せられることがあります。右の実例では「美咲」が中国語読みの xiao に照合され、確率は54まで下がっています。

かなとローマ字は読みが確定する

「さくら」や Sakura は読みが一意なので照合は安定します。姓名を分けて持っているなら、名のかな表記を送るのが最も確実です。

姓名の順序を先に決める

日本語の表記は姓が先、ローマ字では名が先になることが多く、データセット内で混在しがちです。APIに送る前にどちらの順序かを決め、可能なら名だけを `name` に送ってください。

同じ製品、二つの入力
# かな:読みが確定するので素直に当たる
{"query": "さくら", "gender": "female", "probability": 95,
 "confidence": "unverified", "source": "script", "matched_as": "sakura"}

# 漢字:読みが確定せず、別の読みに寄ることがある
{"query": "美咲", "gender": "female", "probability": 54,
 "sample_size": 84, "confidence": "medium", "matched_as": "xiao"}

これは実際のレスポンスです。かなは安定して当たり、漢字は読みが確定しないぶん弱くなります。この差は日本語データを扱う際の設計判断に直接効いてくるので、隠さずに示しています。

日本の名前での実測結果

公開している固定テストでは、日本のグループは 51 件です。カバレッジは 98.0%、回答した名前における正解率は 78.0%、未回答も誤りとして数える端から端までの正解率は 76.5% です。

この標本は小さく、日本全体の名前の分布を示すものではありません。他国の数値より明確に低く、その事実をここに書いておきます。導入前にご自身の正解付きデータで小規模に検証してください。ベンダーの総合正解率より確実です。

テスト方法を見る

氏名の一括処理

名前ごとに接続を張らないでください。一括APIは1リクエストで最大 100 件を受け取り、返却順は入力順と一致します。

一括リクエスト
curl -X POST "https://namegender.com/api/v1/gender/bulk" \
  -H "Authorization: Bearer ng_live_xxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{"names":["太郎","さくら","美咲","Taro"],"country":"JP"}'

使ってはいけない場面

名前からの性別判定は確率的な推定です。以下は免責のための文章ではなく、ドキュメント、API、レスポンスで実際に守っている方針です。

  • 採用、医療、金融、保険、法務、資格判定には使わないでください。
  • UIとデータベースで「不明」を保持し、null を確率の高い側へ自動的に寄せないでください。
  • 閾値は自分のデータセットで決めてください。一般的な数値をそのまま使わないでください。
  • カバレッジと回答後の正解率を同時に見てください。片方だけでは必ず判断を誤ります。
  • 日本語データは漢字・かな・ローマ字を分けて検証してください。

よくある質問

漢字のまま送れますか。

送れます。漢字・ひらがな・カタカナ・ローマ字のいずれも受け付けます。ただし読みが確定するかな表記のほうが安定します。

なぜ日本の結果は unverified が多いのですか。

名前単位で監査できる公開登録統計がないためです。confidence は答えの正しさではなく、根拠が計数可能かどうかを表します。見栄えのよい数字で上書きせず、そのまま返しています。

日本の名前での正解率は。

51 件の固定テストで、カバレッジ 98.0%、回答後の正解率 78.0%、端から端まで 76.5% です。標本は小さく、他国より低い数値です。テスト方法は公開しています。

送った名前は保存されますか。

保存しません。問い合わせ内容は保存も学習もされません。アカウントには利用回数と課金記録だけが残ります。

本人の性自認を判定できますか。

できません。どの名前APIにもできません。返るのはデータ上の統計的な傾向です。個人に関わる重要な判断には本人の申告を使ってください。

まず自分のデータで試す

登録すると1日 100 件まで無料で呼べます。正解付きの名前を少量流せば、カバレッジと正解率を自分で確かめてから導入を判断できます。

NameGender エンジニアリングチームが管理 · ベンチマーク更新日 2026/08/28