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