オーディエンス(顧客リストの媒体インポート)

顧客リスト(メールアドレス / 電話番号)をプロジェクトに登録し、各広告媒体へカスタムオーディエンスとしてインポートできます(カスタマーマッチ)。インポートしたオーディエンスは、各媒体の管理画面やプリセットのオーディエンス選択にそのまま使えます。

  • 対応媒体: Google広告(カスタマーマッチ)/ Meta / TikTok / Yahoo!ディスプレイ・LINE(顧客データ)

画面の場所: 左ナビのプロジェクト配下 「オーディエンス」(アナリティクス・スタジオと同列)。

オーディエンスを登録する

  1. 「オーディエンスを登録」で、まず取込方法を選びます:
    • CSVファイル — 顧客リストの CSV をアップロード。1行目にヘッダー(email / 電話番号 など)があれば該当列だけを読み取ります。ヘッダーが無ければ全セルから自動判別します。
    • 貼り付け — メールアドレス / 電話番号を1行1件(またはカンマ区切り)で直接貼り付けます。
    • 外部DB(Supabase) — 連携済みの顧客DBのテーブルから取り込みます(後述。日次自動同期も選べます)。
    • GA4オーディエンス — GA4 で作成済みのオーディエンスを Google 広告で使えるようにします(後述。Google 広告専用・会員データの登録は不要)。
  2. オーディエンス名を入力します(この名前がそのまま媒体側のオーディエンス名になります)。
  3. 選んだ方法に応じて会員リストを入力します。CSV / 貼り付けはプレビューに「メール n 件 / 電話 n 件 / 無効 n 件」が表示されるので件数を確認して「登録」。外部DBはテーブル・列・条件を指定して「登録して取込」を押すと、設定の検証 → 登録 → 初回取込までその場で実行されます。

ヒント

メールは小文字化、電話番号は国際形式(先頭の 0 は日本の国番号 81 に変換)へ自動で正規化され、重複は自動で除外されます。ハイフンや空白が混ざっていても大丈夫です。

媒体へインポートする

オーディエンスカードの下部に、このプロジェクトの対応媒体フォルダ(広告アカウント連携済み)の一覧が表示されます。

  1. インポートしたい媒体の行で「インポート」を押します。
  2. 媒体側にオーディエンスが作成され、会員がハッシュ化されてアップロードされます。媒体側のオーディエンス名は {オーディエンス名}_yyyymmdd(インポート実行日)になります(例: 購入者_20260809)。
  3. 完了すると「完了 n 件」と日時、媒体側のオーディエンスが 名前[ID] 形式で表示されます(プリセットのオーディエンス欄へコピーして使えます)。

ヒント

再インポートは最初に作成したオーディエンスへの追記なので、媒体側の名前は初回インポート時の日付のまま変わりません。

類似オーディエンスを作成する

インポート完了後、フォルダの行をクリックするとアコーディオンが開き、そのインポートを種(シード)にした類似オーディエンス(lookalike)の一覧と「+ 類似を作成」ボタンが表示されます。同じフォルダから何件でも作成できます。

ボタンの手前にある範囲(類似度)のチップは複数選べます。「狭い/バランス/広い」や「1%/3%/5%」のように選ぶと、選んだ範囲ごとに1つずつまとめて作成します(1回あたり最大10件)。名前は {オーディエンス名}_類似{範囲}_yyyymmdd(範囲未指定なら {オーディエンス名}_類似_yyyymmdd)になります。

ヒント

まとめて作成したうちの一部だけが失敗した場合は、成功したぶんは一覧に残り、失敗した範囲と理由がエラーとして表示されます。

重要

  • Google: 類似セグメントは Demand Gen キャンペーン専用です(他のキャンペーンタイプでは配信に使われません)。種のリストに100人以上のマッチが必要で、利用可能になるまで数日かかることがあります。
  • Meta / TikTok: 種のオーディエンスに一定数以上のマッチ(TikTok は100人以上)が必要です。反映まで時間がかかります。
  • Yahoo!ディスプレイ/LINE: 類似ユーザーリストとして作成されます(サイズは媒体既定)。

状態バッジの意味:

バッジ意味
未同期まだこの媒体へインポートしていない
完了 n 件インポート済み(送った識別子の件数と日時)
差分あり会員リストを更新したのに再インポートしていない → 「再インポート」を推奨
失敗エラーで中断。メッセージを確認して再実行

重要

個人情報(メール・電話番号)はそのまま媒体へ送られるわけではありません。送信直前に媒体ごとの仕様で SHA-256 ハッシュ化され、媒体は自社ユーザーとの照合にのみ使います。また、媒体側で実際に広告配信に使えるようになるには一定数以上のマッチが必要です(Meta は目安100人、TikTok は1,000人以上)。

会員を更新する

カードの「会員を更新」から、CSV / 貼り付けで会員を追記または入れ替えできます。更新するとインポート済みの媒体は「差分あり」表示になるので、「再インポート」で媒体側へ反映します。

注意

媒体への反映は追加方向のみです。アプリ側で会員を減らして再インポートしても、媒体側のオーディエンスから削除はされません(削除反映は未対応)。

外部の顧客DB(Supabase)から自動で取り込む

CSV の代わりに、自社サービスの Supabase(顧客データベース)から会員を直接取り込めます。

1. 接続を登録する(プロジェクトに1つ)

  1. 外部 Supabase のダッシュボード → Project Settings → API で「Project URL」と service_role キーを控えます。
  2. 本アプリの PJ概要 →「外部顧客DB連携(オーディエンス)」カードに入力して「保存して連携」。保存前に接続テストが走り、キーは暗号化保存されます(画面には下4桁のみ表示)。

注意

service_role キーは外部データベースの全テーブルを読み書きできる強力なキーです。可能であれば、外部DB側に取込専用の読み取りビュー(メール・電話番号の列だけを公開する view)を作成し、次のステップでそのビューを指定する運用をおすすめします。

2. どのテーブルのどの列を読むかを指定する

新規作成なら登録フォームで取込方法「外部DB(Supabase)」を選ぶとそのまま指定できます。既存のオーディエンスに後から設定する場合は、カードの「外部DBソース」を開きます(いずれもオーディエンスごとに別のテーブル・条件を指定できます)。

項目内容
テーブル名読み取るテーブル(またはビュー)customers
メール列 / 電話番号列会員情報が入っている列名(どちらか一方でも可)email / phone
絞り込み条件(任意)列=演算子.値& でつなぐ形式status=eq.active&deleted_at=is.null
日次自動同期ON で毎日自動取込+媒体反映

絞り込みで使える演算子: eq(等しい)/ neq(等しくない)/ gt・gte・lt・lte(大小比較)/ like・ilike(部分一致)/ is(null 判定)/ in(いずれか。例 plan=in.(pro,team)

「保存」時に外部DBへテストクエリを投げて、テーブル・列・条件が正しいかを検証します。保存後「今すぐ取込」で初回取込を実行してください。

3. 取込のルール

重要

外部DBからの取込は常に入れ替え(replace)= 外部DBが会員リストの正です。手動で追加した会員は次回の取込で消えるため、CSV で管理したいオーディエンスには外部DBソースを設定しないでください。安全のため「有効な会員が0件」「20万行超」の場合は入れ替えを行わずエラーにします。

日次自動同期

外部DBソースの「日次自動同期」を ON にすると、毎日 朝4時(JST) に自動で実行されます:

  1. 外部DBから会員を再取込(入れ替え)
  2. 会員に差分が出たオーディエンスを、インポート済みの媒体へ自動で再インポート(CSV 運用のオーディエンスも、会員更新後に再インポートし忘れていれば対象になります)
  • 失敗したインポートは自動リトライしません。オーディエンス画面の「失敗」バッジ・「取込エラー」表示を確認し、手動で再実行してください。
  • 自動同期を動かすには初回のみサーバー側の設定(シークレット登録)が必要です。詳細は docs/user-tasks/task-20.md §6 を参照してください。

GA4 オーディエンスを使う(Google 広告専用)

GA4 で作成済みのオーディエンスを Google 広告で使いたいときは、取込方法で GA4オーディエンス を選びます。会員データ(メール・電話番号)の登録は不要です。仕組みは GA4 プロパティと Google 広告アカウントを「リンク」でつなぐもので、GA4 は Google の広告プロダクトにしか共有できないため、この方法は Google 広告フォルダ専用です(Meta / TikTok / Yahoo! には出せません)。

  1. あらかじめ、アナリティクスで GA4 を連携しておきます(未連携なら登録フォームから連携画面へ案内されます)。
  2. 取込方法「GA4オーディエンス」を選ぶと、連携中の GA4 プロパティのオーディエンス一覧が出ます。使いたいものを選んで「登録」。
  3. カードの Google 広告フォルダ行で「Google広告へリンク」を押すと、GA4 プロパティとその Google 広告アカウントのリンクを作成します。

重要

「Google広告へリンク」を実行すると、その Google 広告アカウントには GA4 プロパティの対象オーディエンスが全件流れます(選んだ1件だけではありません)。また広告側で使えるようになるまで**反映に時間差(24〜48時間)**があります。

ヒント

リンクの作成には GA4 を**書き込み権限(analytics.edit)**で認可する必要があります。権限が足りないときはカードに「書き込み権限で再認可」ボタンが出るので、そこから再認可してください(初回のみサーバー側の準備が必要です。docs/user-tasks/task-20.md §7 を参照)。

よくある質問

  • インポートしたオーディエンスはどこで使える? — 各媒体の管理画面のほか、本アプリのプリセット編集・「変更して複製」のオーディエンス選択肢に(媒体から取得されるため)自動で現れます。表示される 名前[ID] をプリセットへコピーすることもできます。
  • オーディエンスを削除したら媒体側はどうなる? — アプリ側の登録だけが消え、媒体側に作成済みのオーディエンスはそのまま残ります。
  • Google/Meta でインポートがエラーになる — Google はアカウントにカスタマーマッチの利用資格が必要、Meta は広告アカウントごとにカスタムオーディエンス利用規約の承諾が必要です(docs/user-tasks/task-20.md 参照)。