SATORIのリード分析をClaudeで進める方法
SATORIの外部連携の一覧に、見込み客の一括取得用APIはありません。リード分析はCSV出力が起点になります。2つの出力ルートとスコアの定義、Claudeへの読み込み方までを確認します。
SATORIの外部連携に見込み客データの一括取得APIはない
SATORIが外部連携の方法として挙げるAPIは、外部システムからカスタマー情報を登録・更新する用途と、カスタマーアクションを追加する用途です。一覧に読み出し用のAPIは入っていません。フォームからSATORIへ情報を送り込む方向は手厚くカバーされています。逆方向の「溜まったデータを引き出して読み解く」用途は、このAPIの守備範囲の外です。SATORIへデータを送り込む方向の連携(APIキーの取得やClaude Codeでの実装手順)はClaude SATORI連携ガイドで扱いました。本記事は逆方向、つまり見込み客データを取り出して分析する手順に絞ります。
管理画面で自分で完結する取り出し方はCSV出力です。日次でストレージにデータを自動出力したいなら、有料の「データ提供オプション」を契約します。このほかに、「データ連携オプション」という個別サービスもあります。対象は特定の外部サービスに限られ、連携先ごとに対象データ・タイミング・料金が異なります。
| データ提供オプションの種類 | 提供される内容 | 頻度 |
|---|---|---|
| カスタマーデータ | 提供される内容CSV出力で取得できる全項目 + カスタマーIDとハッシュコード | 頻度日次 |
| アクションデータ | 提供される内容カスタマー詳細画面の「アクション履歴」で確認できる項目(詳細画面の節名は「最新アクション一覧」) | 頻度日次 |
| DMPデータ | 提供される内容匿名・実名を問わないWeb上のアクションデータ | 頻度日次 |
3種類とも指定したストレージへ自動出力される仕組みで、社内のBIツールやデータ基盤へ常時流し込みたい体制向けです。個人やチーム単位の単発分析には過剰です。
カスタマー管理とセグメント、2つのCSV出力を使い分ける
CSV出力の入り口は2つあります。目的によって使い分けます。
| 出力元 | 取れるデータ | 向く用途 |
|---|---|---|
| カスタマー管理画面 | 取れるデータ全カスタマーのカスタマー項目・カスタムフィールド | 向く用途全体像の把握、初回のリード分析 |
| セグメント画面 | 取れるデータ特定セグメントに該当するカスタマーのみ | 向く用途「メルマガ開封済み」など条件を絞った分析 |
セグメント画面を経由しなくても、カスタマー管理の検索条件「該当セグメント」で同じ絞り込みができます。どちらの経路でも、最後は一覧の「検索結果」から「CSV出力」を押す点は同じです。
CSVを手元に届けるまで
- 1
対象の一覧を出す
カスタマー管理では虫眼鏡アイコンから検索条件を指定します。セグメントからは、対象セグメントのレポートを開いて総計の数値をクリックします。
- 2
「検索結果」から「CSV出力」を押す
出力項目はカスタマー項目とカスタマーカスタム項目から選びます。「出力設定を保存」で名称を付けて残すと、次回から同じ項目で出せます。
- 3
完了メールを待つ
実行したユーザーアカウントのメールアドレスに、件名「【SATORIからのお知らせ】カスタマーCSVの出力が終了しました」のメールが届きます。件数が多いと時間がかかり、進み具合は[ジョブ確認]で見られます。
- 4
24時間以内にダウンロードする
メール本文のダウンロードURLを使います。期限を過ぎたら出力からやり直しです。
カスタマーリストの画面表示は400ページ(10,000件)までです。それを超えると「Xページ中の400ページまで表示できます」というメッセージが出ますが、「検索結果」に対するCSV出力は401ページ目以降のカスタマーも対象になります。画面で見えない件数でも、出力されたCSVの行数で全体を確かめられます。保存した出力設定は、左カラムの[CSV出力設定]から確認・削除できます。
出力されるCSVには「スコア」列が含まれますが、この値は過去90日間のアクションスコアを合計したものです。瞬間値ではありません。「過去のトータルスコア」でもないので、分析の前提として覚えておきます。
スコアだけでなくアクション履歴も分析に加える
スコアはリードの温度感を1つの数字に圧縮したものなので、「なぜそのスコアになったか」はCSVのスコア列だけでは分かりません。カスタマー詳細画面には、その中身を見る場所が2つあります。
スコアの中身を見る場所
スコア獲得推移
詳細画面で、過去90日のスコア数の推移を確認できます。CSVのスコア列と同じ期間なので、合計値がどの時期に積み上がったかを読めます。
最新アクション一覧
メール送信やタグ付与といった動作と、カスタマーの行動履歴が並びます。ファイルダウンロードやウェブアクセス、メール開封といった個々の行動はここで確認します。
カスタマー管理のCSV出力で取れるのはカスタマー項目とカスタマーカスタム項目までで、アクション履歴そのものは含まれません。行動データをまとめて外部に持ち出すには、前節のデータ提供オプション(アクションデータ)を契約するか、対象リードを絞ったうえで詳細画面を1件ずつ確認します。
母数が数十件程度の重点リードなら、詳細画面のアクション履歴を手作業でコピーし、スコアCSVと突き合わせてClaudeに渡す運用でも十分に回ります。180日より古い行動は詳細画面に出ないため、この手作業では追えません。「このリードは資料請求ページを見てから何日でスコアが跳ね上がったか」のような個別の解釈は、スコアの数字だけでは出せません。件数が多く自動化したい場合にだけ、データ提供オプションの契約を検討する、という順番で考えると過剰投資を避けられます。
エクスポートしたCSVをClaudeでリード分析する
Claudeはチャット画面へのファイルアップロードでCSV・XLSXを含む複数形式に対応しています。
CSVを渡す前に見る上限
チャットのアップロード
500MB/ファイル
1チャットあたり最大20ファイル
コード実行での集計
30MB/ファイル
アップロード・ダウンロードとも
プロジェクトのファイル
30MB/ファイル
テキスト抽出のみ
SATORIのCSVが30MBを超える場合は、検索条件で対象を絞って30MB以下に収めるか、後述するClaude Codeでのローカル処理に切り替えます。SATORIの検索はスコアの最小・最大や、ステータス、カスタマー状況(ホット・アクティブ・非アクティブ)でも絞れるので、出力前に範囲を狭めればClaudeに渡す行数も減ります。アップロードしたCSVを使った集計・グラフ化の基本操作はClaude CSV分析の使い方にまとめてあります。ここではSATORIのCSVに固有の観点だけを扱います。
SATORIのCSVをそのままアップロードして、次のような依頼をすると実務に近い分析になります。
- 「スコア列の上位50件を抽出し、情報獲得経路の項目でグループ集計して」(情報獲得経路は、カスタマーに登録した経路を入れる項目です)
- 「ステータスごとにカスタマー数を比較し、多い順に並べて」
- 「情報獲得日の項目から、直近30日と過去30日で新規リード数の増減を出して」
- 「スコアの分布をヒストグラムにして画像で出して」
Claudeのファイル作成機能はPythonスクリプトによるデータ処理に対応しており、集計結果をPNG画像のグラフとして出力できます。グラフ化まで一気に任せられます。
集計や可視化に加えて、データの質そのものをチェックさせるのも実務的な使い方です。「情報獲得日の項目に未来日付や明らかな異常値が無いか調べて」「会社名の列で表記ゆれ(株式会社の前置・後置など)を洗い出して」といった依頼を、アップロード直後に挟んでおきます。そうすれば、その後の集計結果を信頼して使えるかどうかを先に判断できます。
メールアドレスの重複確認は、SATORIのCSV単体ではほぼ不要です。SATORIはメールアドレスを一意のキーとしてカスタマーを管理するため、同じメールアドレスは複数登録できません。重複が起きうるのは、社内の別の名簿と結合した後です。
定期的な分析はClaude Codeでスクリプト化する
毎週や毎月、同じ形式のCSVを繰り返し分析するなら、チャットへのアップロードより手元のPythonスクリプトに落とすほうが再現性が高くなります。ダウンロードしたCSVをローカルに保存し、Claude Codeにスクリプトを書かせて実行する形です。出力側でも、前述の出力設定を保存しておけば毎回同じ項目構成のCSVが届くので、列名が変わってスクリプトが止まる事態を避けられます。
列名はSATORIが出力するCSVのヘッダに合わせて置き換えます。以下は「会社名」「スコア」「ステータス」列を使う例です。
import pandas as pd
df = pd.read_csv("customer_export.csv")
top_leads = df.sort_values("スコア", ascending=False).head(50)
by_status = df.groupby("ステータス")["スコア"].mean()
print(top_leads[["会社名", "スコア", "ステータス"]])
print(by_status.sort_values(ascending=False))CSVの文字コードは実物で確かめます。文字化けする場合は read_csv に encoding を指定します。
このスクリプトを毎週のCSVに対して再実行すれば、Claudeとの対話を毎回組み立て直さずに同じ切り口の集計を再現できます。列名や集計軸をコードとして固定できるので、担当者が変わっても同じ定義で数字を出し続けられる点は、チャットでの対話に依存する運用より引き継ぎコストが低くなります。継続的な自動実行までまとめて任せたい場合は、Coworkのスケジュールタスクでファイル取り込みから要約までを定期実行する構成も選べます。作成方法はCoworkスケジュールタスクの作成方法、Excel分析との組み合わせ方はCoworkのExcel・スプレッドシート分析にまとめてあります。
| 用途 | 向くツール | 理由 |
|---|---|---|
| 単発の深掘り分析 | 向くツールClaude(チャット) | 理由質問を重ねながら切り口を試せる |
| 毎週同じ集計を繰り返す | 向くツールClaude Code | 理由スクリプト化して再実行できる |
| 取り込みから要約まで自動化したい | 向くツールCowork | 理由スケジュールタスクで定期実行できる |
SATORIへ分析結果を書き戻すときの注意点
分析結果をSATORI側のスコアとして反映したい場合は、カスタマーアクション追加APIで書き込む形になります。ただし、このAPIで登録した値はSATORI側のスコア定義を無視してそのまま書き込まれるため、CSVのスコア(過去90日の合計)と同じ基準では扱われません。APIキーの取得方法や実装手順は冒頭で触れた連携ガイドにまとめてあるので、書き戻しを検討する段階になったらそちらを参照してください。
CSVのリード分析でつまずきやすいポイント
スコアを「直近の反応」と誤読する
キャンペーン直後にスコア上位を抽出しても、それは過去90日の累積が高いリードであって、そのキャンペーンに反応したリードとは限りません。反応そのものを見たいなら、最新アクション一覧の項目を時系列で確認します。
上位リードにメールが届かない相手が混ざる
スコア上位から営業やメール施策の対象を選ぶとき、配信ステータスも見ます。「アドレス不正」「エラー」「スパム」のカスタマーには、SATORIからメールが送信されません。「未確認」「正常」「一時エラー」は次回以降も送信が続きます。配信ステータスは検索条件に指定できるため、出力前に除外しておけば、Claudeが作る上位リストにも混ざりません。
セグメント件数のズレをバグと勘違いする
セグメントレポートの総計は前日分の集計です。総計の数値をクリックして開いたカスタマーリストの件数は現時点の値なので、この2つの数字は一致しないことがあります。SATORI側の仕様です。CSV出力やClaudeの分析結果が誤っているわけではありません。社内でこの仕様を共有しておくと、出力のたびに「件数が合わない」と問い合わせが来る事態を防げます。
XLSXをアップロードしたのに処理が止まる
コード実行とファイル作成の設定が無効なアカウントでXLSXをアップロードすると、分析が進みません。SATORIのCSV出力はもともとCSV形式です。Excelに変換してから渡すのではなく、出力されたCSVをそのままアップロードすれば、XLSX用の設定変更なしで読み込めます。
不要な項目まで出力してしまう
CSV出力の対象項目はカスタマー項目とカスタマーカスタム項目から選ぶ形式です。業種・商材によって分析に使いたい項目は変わります。出力前に「どの項目が分析に必要か」を決めてから項目を選択しないと、後から出力をやり直す手戻りが発生します。メモ項目は最大65,535バイト(約21,000文字)まで入るため、分析に使わないなら外すとファイルが軽くなります。
まとめ
スコア列は過去90日の累積値なので、行動の中身が要るリードだけ詳細画面で補います。手作業が回らなくなるほど件数が増えた時点が、データ提供オプションを検討するタイミングです。他の業務SaaSでも同じ発想を試したい場合は、Claude楽楽精算連携ガイドもあわせてどうぞ。