「解約時のアンケートは集めているが、集計して終わっている」。サブスクリプション型のサービスで、よく聞かれる悩みです。
解約理由は、全体の内訳を見るだけでは、打ち手につながりにくいデータです。「使う時間がなかった」が最も多いとわかっても、誰に、いつ、何をすればよいかは見えてきません。
本記事では、解約理由を打ち手につなげるための分析のやり方を解説します。
そのうえで、デモ用のデータを使い、解約理由を継続月数と利用度で分けて見た例と、契約データをClaudeで集計する方法、注意点を紹介します。
解約理由を分析する前に準備すること
選択肢を決めておく
解約理由を自由記述だけで集めると、集計に手間がかかり、時期によって書き方も変わります。解約の手続きの中で、選択肢から1つ選んでもらい、補足を自由記述で聞く形が集計しやすくなります。
選択肢は、次のような観点で作ります。
- 定着:使う時間がなかった、無料期間だけ使うつもりだった
- 価値:見たいコンテンツ(機能)が少ない、目的を達成した
- 価格・競合:価格が高い、他のサービスに乗り換える
- 使い勝手:使い方がわかりにくい、不具合がある
選択肢を「打ち手の担当」でまとめる
選択肢は、打ち手を考える担当ごとにまとめておくと、分析の結果をそのまま担当に渡せます。
| まとまり | 主な担当 | 打ち手の例 |
|---|---|---|
| 定着 | カスタマーサクセス | オンボーディング、利用のリマインド |
| 価値 | 企画・コンテンツ | コンテンツ・機能の追加、次の目標の提案 |
| 価格・競合 | マーケティング・企画 | プランの見直し、競合との違いの伝え方 |
| 使い勝手 | 開発 | 画面の改善、不具合の修正 |
| 決済 | カスタマーサクセス・開発 | 決済の再試行、カードの更新の案内 |
アンケートに答えない解約も記録する
決済の失敗による解約は、本人が解約の手続きをしていないため、アンケートの回答がありません。契約データから「決済失敗」として記録し、解約理由と同じ表で数えます。
全体の内訳を見る
ここからは、架空の動画学習のサブスクリプションサービス「Lumina」のデモ用のデータで、有料に転換したあとに解約した751人の解約理由を集計した例を紹介します。無料トライアルのまま終わった人は含めていません。

Claudeで作成した、解約理由の内訳(デモ用のデータ)
最も多いのは「使う時間がなかった」(24%)で、まとまりで見ると「定着」が29%を占めます。「価値」と「価格・競合」は、それぞれ約25%です。
注目したいのは、「決済失敗」が14%あることです。カードの期限切れや限度額などが原因で、本人が解約を望んでいない可能性が高い解約です。
継続月数・利用度で分けて見る
全体の内訳だけでは、どの顧客に、いつ手を打てばよいかがわかりません。継続月数(有料になってから解約までの月数)と、トライアル中の利用度で分けると、理由の偏りが見えてきます。

Claudeで作成した、継続月数・利用度別の解約理由(デモ用のデータ)
利用度が高い顧客の解約は、決済失敗が多い
利用度が高い顧客の解約では、「決済失敗」が21%を占め、「使う時間がなかった」と並んで最も多い理由でした。利用度が低い顧客では4%です。
また、決済失敗は、1か月目の解約では9%ですが、2か月目以降では16%に増えます。カードの期限切れなどは、継続期間が長いほど起きやすいためと考えられます。
使い続けたい顧客が、支払いの問題で離れている可能性があります。決済の失敗を検知したら、自動で再試行する、カードの更新を案内するといった対策で、解約を防げる余地があります。
利用度が低い顧客は、定着の問題が多い
利用度が低い顧客では、「使う時間がなかった」が28%、「無料期間だけ利用」が8%と、どちらも全体より高くなっています。「アプリが使いにくい」も9%です。
トライアルの段階で学習の習慣ができていない顧客です。トライアル中の利用を後押しするオンボーディングが、打ち手の候補になります。トライアル中の行動の指標の決め方は、「アクティベーションの指標の決め方(別タブで開く)」で解説しています。
打ち手と対象をまとめる
分けて見た結果を、打ち手と対象の組み合わせにまとめます。
| 対象 | 多い理由 | 打ち手 | 担当 |
|---|---|---|---|
| 利用度が高い・2か月目以降 | 決済失敗 | 決済の再試行、カードの更新の案内 | カスタマーサクセス・開発 |
| 利用度が低い | 使う時間がなかった、無料期間だけ利用 | トライアル中のオンボーディング | カスタマーサクセス |
| 全体 | 見たいコンテンツが少ない、価格が高い | コンテンツの追加、プランの見直し | 企画・マーケティング |
Claudeで解約理由を集計する方法
必要なデータ
- 契約のデータ:顧客ごとの有料への転換日、解約日、プラン、解約理由(アンケートの回答)
- 決済のデータ:決済の失敗による解約かどうか。Stripeなどの決済サービスのデータが使えます(「ClaudeでStripeのデータを分析する方法(別タブで開く)」)
- 利用のデータ:トライアル中や解約前の利用度
前提として渡すこと
前提の例
・対象は、有料に転換したあとに解約した顧客。無料トライアルのまま終わった顧客と、休止中の顧客は含めない
・解約理由は subscriptions テーブルの cancel_reason。決済の失敗による解約も「決済失敗」として数える
・継続月数は、有料になってから解約までの月数。1か月目、2〜3か月目、4か月目以降に分ける
・利用度は customers テーブルの engagement_level(トライアル中の利用度)
指示の例
プロンプト例
有料に転換したあとに解約した顧客の解約理由を、件数と割合で表にしてください。理由を「定着」「価値」「価格・競合」「使い勝手」「決済」のまとまりに分け、まとまりごとの割合も出してください。
プロンプト例
解約理由の割合を、継続月数(1か月目、2〜3か月目、4か月目以降)と利用度(高・中・低)で分けて表にしてください。全体の割合より1.4倍以上高いところに印を付けてください。
プロンプト例
解約理由の「その他」の自由記述を読み、内容が似ているものをまとめて、件数の多い順に5つ挙げてください。既存の選択肢に当てはまるものは、その選択肢として数え直してください。
自由記述が多い場合は、BigQueryの中でSQLだけで要約する方法もあります(「BigQueryのAI.AGG関数の使い方(別タブで開く)」)。
結果を確かめる
- 人数が少ない区分:解約が数十人の区分では、割合が大きくぶれます。人数を表に並べ、少ない区分の差は断定しないようにします
- 合計が合っているか:理由別の件数の合計が、解約した人数と一致するかを確かめます
解約理由を分析するときの注意点
アンケートの回答は、本当の理由と違うことがある
解約時のアンケートでは、答えやすい理由(「時間がなかった」など)が選ばれやすくなります。利用のデータと組み合わせて、回答と行動が合っているかを確かめます。
例えば、「見たいコンテンツが少ない」と答えた顧客が、実際にはほとんど検索や閲覧をしていなかった場合は、コンテンツの量ではなく、見つけやすさの問題かもしれません。
解約率と合わせて見る
解約理由の割合は、解約した人の中での内訳です。ある理由の割合が増えても、解約率そのものが下がっていれば、問題が悪化したとは限りません。解約率の推移と合わせて見ます。解約率の分析の仕方は、「チャーン分析のやり方(別タブで開く)」で解説しています。
選択肢を途中で変えない
選択肢を変えると、変える前と後で比べられなくなります。変える場合は、変えた日を記録し、新しい選択肢と古い選択肢の対応を決めておきます。
まとめ
解約理由は、全体の内訳だけでなく、継続月数や利用度で分けて見ることで、打ち手と対象が見えてきます。今回のデモ用のデータでは、利用度の高い顧客の解約の21%が決済失敗で、本人が望まない解約を防ぐ余地があることがわかりました。
- 準備:選択肢を決め、打ち手の担当ごとにまとめる。決済失敗もアンケートと同じ表で数える
- 分析:継続月数と利用度で分けて、理由の偏りを見る
- 打ち手:対象と理由の組み合わせごとに、担当と打ち手を決める
契約・決済・利用のデータがそろっていれば、これらの集計はClaudeに任せられます。定義を前提として渡し、毎月同じ形で確認できるようにしておくのがおすすめです。CSの指標全体の整理の仕方は、「カスタマーサクセスのKPIの決め方(別タブで開く)」で解説しています。




