Back to list
dev_to 2026年3月15日

ベビーネームジェネレータに 15 以上の文化的名称起源を追加する方法(SEO 結果付き)

How We Added 15+ Cultural Name Origins to a Baby Name Generator (With SEO Results)

Translated: 2026/3/15 3:00:58

Japanese Translation

数週間前にベビーネームピックをリリースした際、約 8 つの文化的起源のネームが含まれていました。ユーザーたちから「イタリア系のネームはありますか?」「ヒAWAIIAN 系のネームは?」「ペルシア系のネームは見つけられますか?」との要望が相次ぎました。そこで、私たちは 8 つの起源から 22 つへと増やしました。今回は、技術面と戦略面で得た教訓を共有します。 当社の名称データは、タイプ付けされた配列である `nameData.ts` 内の 1 つの TypeScript ファイルに格納されています: ```typescript export interface NameEntry { name: string; meaning: string; origin: string; gender: "boy" | "girl" | "unisex"; popularity: "trending" | "classic" | "rare" | "rising"; style: string[]; } ``` 各カテゴリページは、`Next.js` の `generateStaticParams` を使用してビルド時に生成されます: ```typescript // app/[category]/page.tsx export function generateStaticParams() { return categories.map((cat) => ({ category: cat.slug })); } ``` 新しい起源を追加するには: - `nameData.ts` にネームを追加する - `filterFn`、SEO テキスト、FAQ スキーマを含むカテゴリ定義を追加する - リビルドを行う — `Next.js` が自動的に新しい静的ページを生成する データベース、API 呼び出し、ランタイムコストなし。純粋な SSG。 名称データベースを持つ際の誘惑は、公的データセットから数千ものネームをバッチでインポートすることですが、私たちは意図的にそうはしていません。その理由: 品質シグナルの方が数量よりも重要です。各ネームエントリには次の情報が含まれています: - 検証された意味(自動翻訳ではない) - 文化的文脈(起源言語と伝統) - 人気分類(トレンド、クラシック、稀、上昇) - スタイルフラグ(自然、王族、文学的など) 「Emrys」というネームは単に「不死者」ではなく、Merlin(メルリン)のウェールズ語のネームであり、ウェールズ人のベビーネームを探っている親にとっては重要である。 各カテゴリページに、`FAQPage` 構造化データを追加しました: ```typescript interface FaqItem { question: string; answer: string; } // カテゴリ定義内: faqs: [ { question: "Welsh baby names をどのように発音しますか?", answer: "Welsh 発音は一貫した規則に従います..." } ] ``` これにより、Google が検索結果に表示できる拡張可能な FAQ セクションとして表示される JSON-LD が生成され、ページの検索結果が占める可視的スペースが劇的に増加します。 3 ヶ月後の結果: - 提出された 25 ページのうち 20 ページがインデックス化されました - Google 検索での 187 回表示(週比 2 倍) - 表示を促す 57 件の異なる検索キーワード - 3 クリック(CTR 1.6% — 新サイトの平均) 最も興味深い発見:アイルランドのベビーネームが、比較的多くニッチなカテゴリでありながらも最も多くの表示を取得しました。文化的なネームページは、非常に具体的で高意欲度の検索を惹きつけます。 成功した点: - 文化的特異性 — 「イタリア系のベビーネーム」は「ベビーネーム」よりも変換率が良い - FAQ スキーマ — より富んだ検索結果 - 内部リンク — すべてのカテゴリページが関連カテゴリをリンクしている - 静的生成 — 完璧な Lighthouse スコア、高速インデックス まだ機能していない点: - バッチディレクトリ提出 — 多くの AI ディレクトリは $29-$247 を課金 - Reddit での自己PR — 新規アカウントはすぐに削除される - Medium 自動化 — 編集可能なエディタはすべてのブラウザ自動化を破る 最近、イタリアネーム(Matteo, Giulia, Valentina)、ペルシアネーム(Cyrus, Soraya, Darya)、スコットランドネーム(Hamish, Isla, Maisie)、ウェールズネーム(Rhys, Seren, Emrys)、ハワイアンネーム(Kai, Leilani, Moana)を追加しました。各ページには、ネーム命名の伝統に関する文化的文脈が含まれており、単なるリストではなく、なぜその文化がそのような形で子供たちを名付けたのかについてのストーリーも提供します。 SSG + TypeScript = コストゼロのスケーリング — 100 人のネームを追加してもランタイムコスト $0 文化的深さは数量を上回る — 15 人の十分に調査されたネームの方が、500 人もの収集されたネームよりも良い FAQ スキーマは無料で SEO の地盤 — 検索結果の可視的スペースが増える カテゴリページはロングテールの金鉱 — 「hawaiian baby names」の競争は「baby names」より少ない コンテンツサイトを作成する場合、以下の点を考慮してください:あなたのデータを何個の次元に分割できるでしょうか?各スライス(断面)は潜在カテゴリページになり、各カテゴリページは Google から新たなエントリポイントとなります。 ジェネレータを試す:babynamepick.com すべての起源をご覧になる:Boy Names · Girl Names · Nature Names

Original Content

When we launched BabyNamePick a few weeks ago, it had names from about 8 cultural origins. Users kept asking: "Do you have Italian names?" "What about Hawaiian names?" "Can I find Persian names?" So we went from 8 origins to 22. Here’s what we learned — technically and strategically. Our name data lives in a single TypeScript file (nameData.ts) as a typed array: export interface NameEntry { name: string; meaning: string; origin: string; gender: "boy" | "girl" | "unisex"; popularity: "trending" | "classic" | "rare" | "rising"; style: string[]; } Each category page is generated at build time using Next.js generateStaticParams: // app/[category]/page.tsx export function generateStaticParams() { return categories.map((cat) => ({ category: cat.slug })); } Adding a new origin means: Add names to nameData.ts Add a category definition with filterFn, SEO text, and FAQ schema Rebuild — Next.js generates the new static page automatically No database, no API calls, no runtime cost. Pure SSG. The temptation with a name database is to bulk-import thousands of names from public datasets. We deliberately didn’t do that. Here’s why: Quality signals matter more than quantity. Each name entry includes: A verified meaning (not auto-translated) Cultural context (origin language and tradition) Popularity classification (trending/classic/rare/rising) Style tags (Nature, Royal, Literary, etc.) A name like "Emrys" isn’t just "immortal" — it’s specifically the Welsh name for Merlin, which matters for parents exploring Welsh baby names. For each category page, we added FAQPage structured data: interface FaqItem { question: string; answer: string; } // In the category definition: faqs: [ { question: "How do you pronounce Welsh baby names?", answer: "Welsh pronunciation follows consistent rules..." } ] This generates JSON-LD that Google can display as expandable FAQ sections in search results — dramatically increasing the visual space your result occupies on the page. After 3 weeks: 20 pages indexed out of 25 submitted 187 impressions in Google Search (doubled week over week) 57 different search keywords driving impressions 3 clicks (CTR 1.6% — normal for a new site) The most interesting finding: Irish baby names gets the most impressions despite being a relatively niche category. Cultural name pages attract highly specific, high-intent searches. Worked: Cultural specificity — "Italian baby names" converts better than "baby names" FAQ schema — richer search results Internal linking — every category page links to related categories Static generation — perfect Lighthouse scores, fast indexing Didn’t work (yet): Bulk directory submissions — most AI directories charge $29-$247 Reddit self-promotion — new accounts get deleted immediately Medium automation — contenteditable editors break all browser automation We recently added Italian names (Matteo, Giulia, Valentina), Persian names (Cyrus, Soraya, Darya), Scottish names (Hamish, Isla, Maisie), Welsh names (Rhys, Seren, Emrys), and Hawaiian names (Kai, Leilani, Moana). Each page includes cultural context about naming traditions — not just lists, but stories about why these cultures name children the way they do. SSG + TypeScript = free scaling — adding 100 names costs $0 in runtime Cultural depth > volume — 15 well-researched names beat 500 scraped ones FAQ schema is free SEO real estate — more visual space in search results Category pages are long-tail gold — "hawaiian baby names" has less competition than "baby names" If you’re building a content site, consider: what dimensions can you slice your data by? Each slice is a potential category page, and each category page is a new entry point from Google. Try the generator: babynamepick.com Browse all origins: Boy Names · Girl Names · Nature Names