この記事でわかること
この記事の目次Contents閉じる開く
Shopify管理画面で顧客レコードを開き、生年月日の欄を探してみてください。ありません。Customerオブジェクトが持つのは氏名、メールアドレス、電話番号、住所、タグ、メモまでで、誕生日は含まれていません。この一点をもって「Shopifyでバースデーメールをやるならアプリ必須」と結論づけている店舗は多いはずです。
その結論は半分だけ間違っています。そして間違っている半分は、余計なコストを生みます。Shopifyは誕生日を入れるための予約済みの置き場所も、繰り返し訪れる記念日を判定するためのセグメント関数も、あらかじめ用意された誕生日オートメーションも持っています。標準機能が用意していないのは、その欄に日付を入れる方法のほうです。
誕生日施策は三つの仕事に分解できます。そしてこの三つは別々に壊れます。
- 保存 — どのツールからも読める場所に日付を置く
- 収集 — 新規顧客と既存顧客から、その日付をどう集めるか
- トリガー — 当日の朝に起動して、実際に送る仕組み
Shopifyは1と3を標準で解決しています。判断が必要なのは2です。
保存: フィールドは無いが、置き場所は決まっている
Shopifyは標準メタフィールド定義の一覧を公開しています。名前空間とキーが予約された、プラットフォーム全体で意味が共通するプリセットです。ID 19 の定義名が Birth date です。
- タイプ:
date - 対象リソース:
CUSTOMER - 予約された名前空間とキー:
facts.birth_date - 顧客の生年月日をISO 8601形式で保存する
これは自分で作るカスタムメタフィールドではなく、Shopifyが定義した標準です。だからこそアプリ側とShopify側が「どこを見るか」で合意できます。同ドキュメントには、このメタフィールドを使って誕生日で顧客をセグメントし、自動的にディスカウントを送るフィルターを作れる、と書かれています。
運用上重要な点が二つあります。
一つめ。定義は有効化するまで存在しません。管理画面なら 設定 > カスタムデータ > 顧客 の標準定義一覧から追加し、APIなら gid://shopify/StandardMetafieldDefinitionTemplate/19 に対する standardMetafieldDefinitionEnable ミューテーションです。有効化前は書き込みもセグメント条件への指定もできません。
二つめ。タイプは date であって「月日」ではありません。つまり生年を含む完全な生年月日を保存します。年齢が算出できるということで、後述するプライバシーの話につながります。
トリガー: anniversary() と誕生日オートメーション
facts.birth_date が効くのは、ほとんど知られていないセグメント関数があるからです。Shopifyの顧客セグメントのリファレンスには、日付パラメータを取る anniversary フィルターが記載されています。
anniversary('metafields.facts.birth_date') BETWEEN today AND +30d
このフィルターの注記が肝心です。anniversary フィルターは年を考慮しません。また日付の値は丸一日単位で、ストアのタイムゾーンに依存します。年を見ないことが、まさに誕生日に必要な挙動です。通常のメタフィールドベースのセグメントフィルターでは =、<=、>=、BETWEEN を絶対日付に対して使うため、= 2026-09-03 はその日に生まれた人しか一致しません。anniversary() を使わずに誕生日セグメントを組もうとして「0件しか返らないのでメタフィールドが壊れている」と誤解する、という失敗はここで起きます。
送信側は、Shopify Messagingの Customer appreciation カテゴリにある Celebrate customer birthday テンプレートです。マーケティングオートメーションのドキュメントには、誕生日にディスカウントコード付きのマーケティングメッセージを送ること、Customer joined segment トリガーと birth date 標準メタフィールドを使うこと、利用できるチャネルは Email であることが明記されています。同じページで、誕生日の収集にはShopify Formsアプリのカスタム入力フィールドの利用が推奨されています。
要件は重くありません。Basicプラン以上、フル機能にはShopify Flowアプリのインストール、スタッフにMarketing権限とFlowのアプリ権限の両方。カゴ落ち系以外のオートメーションはデスクトップでのみ作成できます。
見落としやすいのはコストです。Shopify Messagingは Basic / Grow / Advanced / Plus のストアに対し、毎月初に10,000通の無料メールを付与し、それを超えると300,000通までは1,000通あたり$1 USD、300,000通超で1,000通あたり$0.65、750,000通超で$0.55を課金します。オートメーションの送信もこの10,000通を消費し、例外はカゴ落ちオートメーションだけです。未使用分は翌月に繰り越されません。誕生日施策そのものの通数は小さくても、キャンペーン配信と同じ枠を共有します。
メッセージを複数回にしたい場合はテンプレートから外れます。Shopify Flowの Scheduled time トリガーは指定したスケジュールで起動し、最短間隔は10分、最長は1年、既定ではストアのタイムゾーンで動きます。イベントデータが付かないため Get customer data アクションと組み合わせます。誕生日前の予告、当日、期限リマインドという三段構成はこの形で作ります。
収集: 標準が薄くなるのはここ
面ごとに、何がどう足りないのかを正確に押さえておく価値があります。
Shopify Forms. ポップアップおよびインラインフォームのカスタムフィールドは Date データ型を選べ、ローカルフィールドではなく顧客メタフィールドとして保存できます。ただしドキュメントに明記された挙動が三つあります。ローカルフィールドをメタフィールドに変更した場合、メタフィールドに保存されるのは変更後に送信されたデータだけです。いったんメタフィールドとして保存すると、ローカルフィールドには戻せません。同じ顧客が同じ項目を複数回入力した場合、プロフィールに表示されるのは最新の送信内容だけです。フォームあたりのフィールド数は31が上限で、すべてのフォームにEmailまたはPhoneを必須項目として含める必要があります。標準の収集経路としてはこれが最も整っており、Shopify自身が案内しているルートでもあります。周辺の制約はShopify Formsの制約とポップアップアプリで扱っています。
チェックアウト. ShopifyのCheckout Blocksアプリには Custom field ブロックがあり、入力タイプに Date of birth が含まれ、Birthday テンプレートも用意されています。制約が二つ。まず、カスタムフィールドブロックの作成はShopify Plusプランのマーチャントのみです。そしてShopify自身がそのページで注記しているとおり、既定のBirthdayテンプレートはディスカウントコードを自動生成・自動送信せず、注文のメタフィールドのデータを顧客プロフィールに自動反映もしません。カスタムフィールドの保存先は注文メタフィールド(名前空間 checkoutblocks)、注文のnote attribute、または注文メモです。つまりPlusならチェックアウトで質問はできますが、答えは注文側に残り、facts.birth_date へ移すのは自分で書くFlowワークフローになります。Plus以外のプランでは、そもそもチェックアウトでの収集は標準の選択肢に入りません。
顧客アカウント. メタフィールドを顧客が書き込めるようにするには、定義のCustomer Account APIアクセスを Read and write に設定する必要があります。ただし新しい顧客アカウントのプロフィールページに編集可能な生年月日欄を出すには、customer account UI extensionの実装が要ります。拡張からメタフィールドへ書き込む方法はドキュメント化されていますが、プロフィールに日付ピッカーを置くノーコードの設定項目はありません。開発かアプリのどちらかです。
既存顧客. ここまでのどれも、既存顧客のバックフィルはしません。CSVインポート、顧客リストを巡回するFlowワークフロー、あるいは「誕生日を教えてください」というメール施策のいずれかになります。ShopifyのFlowテンプレートには、顧客メタフィールドの値を全顧客のタグへ1回100件ずつバックフィルするスケジュール実行のワークフローがあり、これが作業の形そのものです。ただし形であって、解ではありません。
公開前に確認しておきたい落とし穴
- 年を取るか、月日だけか。
facts.birth_dateは完全な日付です。当日判定にしか使わないなら、必要のない生年まで集めていることになります。Shopify自身の保護対象顧客データのルールでも、アプリはアプリ機能の提供に必要な最小限の個人データのみを処理し、保持期間を適用することが求められています。同じ規律を自分にも課すべきです。 - タイムゾーン。 セグメントの日付はストアのタイムゾーンで丸一日単位に評価されます。ストアのタイムゾーン設定と顧客の所在地がずれていると、現地時間で1日ずれた配信が発生します。
- 2月29日。 うるう日生まれを
anniversary()がどう扱うかは、公式ドキュメントに記載がありません。2000-02-29のテスト顧客を作り、平年をまたいでセグメントの挙動を確認してから告知してください。 - 上書き。 フォームを再送信すると値は最新のもので置き換わります。何がいつ変わったかの標準の監査履歴はありません。
- 注文メタフィールドは顧客メタフィールドではない。 Plusストアがチェックアウトで誕生日を集めてもセグメントが空になることがあります。Shopify自身の注記どおり、テンプレートは注文のデータを顧客プロフィールに反映しないためです。
- 1通はプログラムではない。 標準オートメーションは当日に送ります。事前告知と期限リマインドはFlowでの作り込みになります。
アプリ5本と、それぞれが実際に担う仕事
アプリは担当する仕事で三つに分かれます。自分が解けていない仕事から表を読んでください。料金は日本語ロケール(?locale=ja)のリスティング表示に基づきます。
| アプリ | 開始価格(USD / 月) | 無料プラン | 無料体験 | Built for Shopify | 主な担当 | 顧客メタフィールドへの書き込み |
|---|---|---|---|---|---|---|
| Happy Birthday Email by UW | $10 | なし | 28日間 | なし | 収集と送信 | あり(リスティング記載) |
| Happy Birthday Marketing | $9.95 | あり(顧客50人) | 30日間 | なし | 収集と送信 | あり(既定で facts.birth_date) |
| Helium Customer Fields | $30 | なし | 14日間 | なし | 収集のみ | あり(リスティング記載) |
| Seguno Email Marketing | 無料インストール | 250サブスクライバーまで | 10日間 | あり | 送信のみ | 読み取り側 |
| Joy Loyalty Program Rewards | 無料 | あり(毎月150件の注文) | 14日間 | あり | メールではなく特典 | メタフィールドから同期 |
Happy Birthday Email by UW

出典: Shopify App Store(Happy Birthday Email by UW、2026-09-03時点)
開発元はUnion Works Apps、評価5.0・レビュー118件。課金の単位がメール通数ではなく保存件数である点が特徴で、ベース $10/月が最大1,000人、グロース $20/月が最大5,000人、無制限が $40/月、無料体験は28日間です。リスティングには、チェックアウト・POS・ランディングページで誕生日と年齢データを収集すること、既存のメール配信基盤と連携するか自身でメールを送ること、そしてShopifyの顧客誕生日メタフィールドに書き込むことが明記されています。連携先としてCustomer accounts、Shopify POS、Shopify Flow、Shopify Admin、Klaviyo、Mailchimp、Omnisend、Privy、Recharge、SMSBumpが挙げられています。
保存も送信も未解決で、Flowでの作り込みもしたくないストアには、これが最も完結した答えに近い構成です。Shopifyのメタフィールドに書くため、アンインストール後もデータはShopifyが定義した場所に残ります。
Happy Birthday Marketing

出典: Shopify App Store(Happy Birthday Marketing、2026-09-03時点)
開発元はNorthern Apps、評価4.6・レビュー26件です。母数が小さいので評価はその前提で読んでください。無料プランは顧客50人まで、無制限プランが $9.95/月、無料体験30日間。特徴的な収集面は、購入完了後に表示されるサンキューページ(注文状況ページ)で、ほかにホスト型のサインアップ用ランディングページとポストパーチェスページのブロックがあります。
保存先について開発元のドキュメントは明快で、既定では標準の facts.birth_date メタフィールドを使い、自分で作ったメタフィールド定義を選ぶこともできると書かれています。既存顧客はCSVインポートで取り込めます。
導入前に知っておく価値のある制約が一つあります。開発元のFAQには、誕生日当日の午前10時に個別のディスカウントが送られること、ユニークなディスカウントコードがメールで届くことが書かれています。2026年4月8日のレビューはこの送信タイミングが固定で、誕生日より前に送る設定ができないと指摘しており、開発元も2026年4月10日の返信で、固定の送信日ではうまくいかない事業があることを認め、設定可能なタイミングをロードマップに追加したと回答しています。生産や配送のリードタイムの都合で当日メールでは間に合わない業態では、ここが効いてきます。
Helium Customer Fields

出典: Shopify App Store(Helium Customer Fields、2026-09-03時点)
開発元はHelium、評価4.5・レビュー314件。日本語ロケールのリスティングでは Pro $30/月(顧客10,000人同期、フォーム5つ)と Advanced $60/月(顧客50,000人同期、フォーム無制限)の2プランが表示されます。英語ロケールでは Basic $15/月と Plus $200/月を含む4プラン構成になっており、ロケールで表示が異なるため、契約前に自店の管理画面で必ず確認してください。無料体験は14日間です。
このアプリはバースデーメールを送りません。担う仕事は収集です。ドラッグ&ドロップの登録フォーム、Shopify顧客メタフィールドとして保存されるカスタムフィールド、そして標準スタックがコードなしでは実現できない顧客自身によるデータ編集を提供します。Checkout、Customer accounts、Shopify Flow、Shopify Adminと連携します。
送信経路(Shopify Messaging、Klaviyo、Segunoなど)はすでにあり、足りないのが一次情報としての誕生日の取得と顧客自身による修正手段である場合に選ぶ構成です。
Seguno Email Marketing

出典: Shopify App Store(Seguno Email Marketing、2026-09-03時点)
開発元はSeguno、評価4.8・レビュー653件、Built for Shopify。スターターは無料インストールで250サブスクライバーまで、スタンダードが $35/月で2,500サブスクライバー、プロが $215/月で25,000サブスクライバーを含みます。
Segunoは、標準の仕組みをサードパーティが利用している例として最も明快です。誕生日オートメーションのサポートドキュメントは、有料のSegunoサブスクリプション、Shopify Flowアプリ、そして metafields.facts.birth_date に保存された誕生日を要件として挙げ、実際のセグメントクエリまで公開しています。当日判定なら anniversary(date: 'metafields.facts.birth_date') = today AND email_subscription_status = 'SUBSCRIBED' です。メタフィールド名が完全に一致しないとセグメントは何も返さないと警告し、誕生日が未登録の顧客はそもそも一致しないことも明記されています。Segunoを導入しない場合でも、この設計図は読む価値があります。メール配信側の全体像はShopifyメールマーケティングアプリの比較を参照してください。
Joy Loyalty Program Rewards

出典: Shopify App Store(Joy Loyalty Program Rewards、2026-09-03時点)
開発元はJoy Loyalty Program & Rewards、評価4.9・レビュー1,710件、Built for Shopify。日本語ロケールでは「Joy: メンバープログラム&ポイントアプリ・ポイ活リワード」として表示されます。スタータープランは無料で毎月150件の注文まで、プロフェッショナルが $29/月で500件まで、以降100件ごとに$15追加。アドバンストプランが $129/月、エンタープライズプランが $499/月です。英語ロケールではスターターの注文数が250件と表示されるため、この数値もロケール差があります。
Joyを取り上げたのは、誕生日の保存先が別の場所になりうるからです。ドキュメントには Birthday reward という獲得プログラムと、二つの収集経路が説明されています。一つはテーマの登録フォームテンプレートに日付入力欄を追加する方法で、値は設定した項目名で**Shopifyの顧客メモ(customer note)**に書き込まれます。もう一つは設定からShopifyの顧客メタフィールドをJoyへ同期する方法です。Joyは両方から読みます。登録フォーム経由だけで運用すると、誕生日が顧客メモに入ったまま facts.birth_date には届かず、ロイヤルティ側は動いているのにShopifyのセグメントは空、という状態になり得ます。この構成を採るならメタフィールドのマッピングも併せて設定してください。
ロイヤルティアプリは誕生日をメールではなくポイントや会員特典に変換します。経済的な賭け方が異なるので、その観点はShopifyロイヤルティアプリの比較を参照してください。
プライバシー: 生年月日はただの一項目ではない
Shopifyの保護対象顧客データの要件では、単一の顧客に関連するメタフィールドは保護対象顧客データに分類されます。これに触れる公開アプリはアクセス申請のうえ、アプリ機能の提供に必要な最小限の個人データのみを処理し、処理を明示した目的に限定し、同意とオプトアウトの判断を尊重し、保持期間を適用し、保存時と通信時に暗号化することが求められます。データ保護レビューは、顧客レコードの量が多く保持期間が長いアプリが対象になりやすいと明記されています。
実務上の示唆は二つです。誕生日アプリを入れる前に、リスティングのData accessセクションを確認すること。年齢を推定できる項目を渡す相手だからです。もう一つは、なぜ聞くのか、顧客に何が返るのかをフォーム上で明示すること。Seguno自身のガイダンスも、誕生日特典を受け取れるといった理由を明示するとオプトイン率が上がると助言しています。具体的に書くことは、プライバシー上も獲得効率上も有利に働きます。
どう選ぶか
- プランを問わずShopify Messagingを使っていて、当日の1通で十分。
facts.birth_dateの標準定義を有効化し、Shopify Formsで収集し、Celebrate customer birthdayをオンにする。アプリ購入は不要です。 - 複数ステップのプログラムにしたい。 保存とセグメントは標準のまま、送信をShopify FlowのScheduled timeまたはCustomer joined segmentへ移す。事前にShopify Flowの制約を確認してください。
- 課題が収集で、配信基盤はすでにある。 Helium Customer Fields。日本語ロケール表示では $30/月から、登録時の取得と顧客自身による編集を追加できます。
- 収集と送信を1本で、しかもデータはShopifyのメタフィールドに置きたい。 Happy Birthday Email by UW、$10/月から。
- リストが小さくコストを抑えたい、購入後の収集で構わない。 Happy Birthday Marketingは顧客50人までの無料枠と $9.95/月の無制限プランがあります。ただし送信タイミングが固定である点が自店のリードタイムに合うかを先に確認してください。
- 誕生日はメールではなく会員特典にしたい。 Joy Loyalty Program Rewardsは無料から始められます。Shopify側のセグメントも動かすなら、メタフィールドのマッピングを忘れずに。
やってはいけないのは、自店で facts.birth_date が有効化されているかを確認しないまま誕生日アプリを入れることです。有効化されていなければ、Shopifyがすでに解決済みの保存の問題にアプリ費用を払い、しかも顧客の誕生日をそのアプリしか読めない場所に貯めることになりかねません。
参考
- List of standard metafield definitions — Shopify.dev
- Shopify-based customer segment filters — Shopify Help Center
- Metafield-based customer segment filters — Shopify Help Center
- Creating and managing marketing automations in Shopify Messaging — Shopify Help Center
- Shopify Messaging email pricing — Shopify Help Center
- Settings for both popup and inline forms — Shopify Help Center
- Custom field blocks — Shopify Help Center
- Scheduled time trigger — Shopify Help Center
- Customer joined segment trigger — Shopify Help Center
- Work with protected customer data — Shopify.dev
- Send a birthday automation to subscribed customers — Seguno support
- How metafield syncing works on Happy Birthday Marketing — Northern Apps
- Happy Birthday Marketing FAQs — Northern Apps
- Collect customer birthday in registration form — Joy Help Center
課金の分母が揃っていないShopifyのダイレクトメールアプリ6本を、同じ土俵に並べ直した。Direct Mail ManagerはApp Storeで月額$0/$5/$10と表示される一方、自社の料金ページでは月額$0または$199に加えて4x6ポストカード1枚$0.686〜$0.873となっている。PostPilotはリスティング上は無料インストールだが、実際には月額$99または$499と1通あたりの単価がかかる。Poplar MailのApp Store表示の単価は自社ページよりおよそ8〜11パーセント安く、住所の名寄せは1マッチ$0.07という別建ての行になっている。郵送料が含まれると明記しているのは6本中3本だけである。Shopify自体には郵便チャネルもFlowの郵送アクションもZIPコードのセグメントフィルターも無い。調査日は2026年9月3日です。