「このジャンルはリピートしない」と、何年も思い込んでいました
売上データを眺めていて、こんなふうに感じたことはありませんか。
- 「このジャンルは一度買ったら満足してしまって、二度目がない」
- 「あの商品はお客さんが飽きやすいから、リピートは期待できない」
- 「消耗品のほうがリピートするはずなのに、思ったほど戻ってこない」
私はEC運営を2010年から続けていて、Amazon、メルカリShops、eBay、Shopify、Shopeeなど複数の販路で中古品を在庫販売してきました。いまはトレーディングカード・コレクティブルの実店舗も経営しています。16年以上売る側にいると、勘はそれなりに育ちます。
ところが、その「勘」こそが落とし穴でした。
先日、顧客ごとの購入履歴をAIに渡して「購買間隔」を分析させました。すると、私が「リピート率が低い」と決めつけていたジャンルの理由は、商品の魅力不足ではありませんでした。私の測り方と思い込みの問題だったのです。
この記事では、次のことをお伝えします。
- 購買間隔とは何か、なぜリピート率より大事なのか
- ChatGPTなどのAIに、専門知識なしで購買間隔を分析させる手順
- 分析で私が気づいたこと(実体験ベース)
- 分析を間違えないための注意点
統計の知識も、高額な分析ツールも要りません。パソコンで売上データを出力できれば、小さなお店や個人事業でも今日から試せます。
なお、AIサービスの仕様や料金は変動が激しいので、この記事の内容は執筆時点(2026年)のものとして読んでください。
結論:リピート率を眺める前に「購買間隔」を見る

先に結論をお伝えします。
「リピート率が低い」と感じたら、商品を疑う前に「お客さんが何日おきに買っているか」を見てください。
リピート率は「一定期間内に2回以上買った人の割合」です。この「一定期間」の設定がジャンルの実態と合っていないと、本当は戻ってきているお客さんが「リピートしていない」ことになってしまいます。
高額な分析ツールは要りません。必要なのは次の3つだけです。
- 売上データ(CSVやスプレッドシート)
- ChatGPTなどの生成AI(無料プランでも試せる範囲があります。ファイルの扱いや回数制限は執筆時点でプランにより異なるので、各サービスで確認してください)
- 「AIの計算結果を鵜呑みにしない」という姿勢
そもそも「購買間隔」とは何か

購買間隔とは、同じお客さんが1回目に買ってから、次に買うまでの日数のことです。
例えば、あるお客さんが3月1日に買って、3月20日、4月25日にも買ったとします。
- 1回目→2回目:19日
- 2回目→3回目:36日
この「19日」「36日」が購買間隔です。これをお客さん全員、ジャンルごとに集めると、そのジャンルの「買われるリズム」が見えてきます。
リピート率だけを見ると何が起きるか
リピート率は便利ですが、次の2点を隠してしまいます。
- 買われるタイミングのリズム:30日以内の再購入で測るのか、90日以内なのかで、結果がまったく変わります。
- 買う理由のきっかけ:新商品の発売、大会、季節イベントなど、外部の出来事に合わせて買う商品は、周期が毎月ではありません。
つまり、リピート率が低く見える商品の中には、「お客さんは戻ってきているのに、私が見ている窓が狭すぎた」というケースが紛れ込んでいます。
ステップ1:売上データを「匿名化」して取り出す

まず、分析に使うデータを準備します。ここで一番大事なのは、個人情報をAIに渡さないことです。
必要な列はたった4つ
| 列名 | 中身 | 注意点 |
|---|---|---|
| 顧客ID | お客さんを区別する番号 | 名前・住所・電話・メールは含めない。 | 番号に置き換える | 購入日 | 買った日付 | 形式を統一する(例:2026-01-15) | 商品ジャンル | カテゴリ名 | 表記ゆれを直しておく | 金額 | 購入金額 | なくても分析できる |
ECであれば、Shopifyや各モールの注文一覧をCSVで出力できます。実店舗のPOPレジでも、販売履歴をCSV出力できる機種が多いはずです。会員カードやアプリの購入履歴がある店なら、そこからでも大丈夫です。
顧客IDの作り方
名前をそのまま使わず、スプレッドシート上で「A0001、A0002……」のような連番に置き換えます。お客さんの特定につながる列は、AIに渡すファイルから必ず削除してください。
ここで私は、ちょっとした失敗をしました。最初に出力したCSVには、注文者名やメールアドレスの列がそのまま入っていたのです。アップロードする前に気づいて削除しましたが、「いつものデータ出力」の感覚でそのまま渡していたら危ないところでした。アップロード前に、列の見出しを必ず目で確認する習慣をつけてください。
「どれくらいの期間のデータ」が必要か
購買間隔を見るには、ある程度の期間が必要です。目安として、お客さんの来店・購入サイクルの2〜3周分がほしいところです。半年〜1年分あると、季節イベントや新商品発売のサイクルまで含められます。ただし、データが少ない店でも、傾向をつかむ練習としては十分に意味があります。
ステップ2:AIに「購買間隔」を計算させる
データが用意できたら、AIに渡します。ChatGPTの現行モデルはGPT-5系ですが、サービスの仕様は変わるため、ファイルのアップロードやデータ分析機能の有無・制限は、お使いのプランで確認してください。
私が使った指示文(そのままコピーして使えます)
あなたはデータ分析のアシスタントです。添付のCSVは、小売店の販売履歴(顧客ID、購入日、商品ジャンル、金額)です。個人情報は含まれていません。
次の分析をしてください。
1. 顧客IDごとに、購入日を古い順に並べ、前回購入から次の購入までの日数(購買間隔)を計算してください。
2. 商品ジャンルごとに、購買間隔の「中央値」「平均」「最短」「最長」を表にしてください。
3. 30日以内、60日以内、90日以内、180日以内で再購入した顧客の割合を、ジャンルごとに表にしてください。
4. 計算の前提(どの行を除外したか、ジャンルを跨ぐ購入をどう扱ったか)を最初に説明してください。
5. 結果から読み取れる傾向を、専門用語を使わずに説明してください。ただし、データだけでは断定できないことは「断定できない」と書いてください。
指示文のポイント
- 「中央値」も出させる:平均だけだと、たまにすごく間が空いたお客さんに引っ張られます。「真ん中のお客さん」の感覚をつかむには中央値が便利です。
- 複数の期間で割合を出させる:30日・60日・90日・180日と並べると、「どの窓で見れば実態に近いか」が一目で分かります。
- 前提を説明させる:AIがどのルールで計算したのかを確認するためです。ここを飛ばすと、間違いに気づけません。
- 「断定できないことは断定できないと書いて」と頼む:AIは、それらしい理由づけをもっともらしく書く傾向があります。釘を刺しておくと、いくらか抑えられます。
出てくる表のイメージ(架空のサンプルです)
以下は説明用に作った架空のサンプルです。実際の店の数字ではありません。
| ジャンル | 購買間隔の中央値 | 30日以内に再購入 | 90日以内に再購入 | ジャンルA | 約20日 | 高い | 高い | ジャンルB | 約75日 | 低い | 中程度 | ジャンルC | 約120日 | とても低い | 低い |
|---|
ここでジャンルBを見てください。30日以内のリピート率は低いので、「リピートしないジャンル」に見えます。でも購買間隔の中央値は約75日なので、お客さんは「約2か月半おきに戻ってきている」のです。30日という窓で見ていたら、このリズムを見逃します。
私が気づいたこと:思い込みは「測り方」に隠れていた
ここからは、私自身が店のデータを分析して気づいたことをお話しします。具体的な数字は店の内部情報なので載せず、傾向と気づきを中心に書きます。
気づき①:「一度買ったら終わり」だと思っていたジャンルは、戻ってくる時期がズレていただけだった
トレーディングカードの店では、新しいシリーズの発売、大会、イベントなど、お客さんが動くきっかけが「周期的」に訪れます。私は日頃から売り場を見ているので、そのことは知っていたつもりでした。
ところが売上管理では、いつの間にか「月次」「30日以内」という単位でばかり見ていました。そのため、発売サイクルに合わせて動くお客さんは、30日という窓には収まらず、「リピートしていない人」として扱われていたのです。
AIに購買間隔を出してもらうと、そのジャンルのお客さんは何か月かの間隔を空けて、きっかけが来たタイミングでまとめて戻ってきている傾向がはっきり見えました。「一度買ったら飽きて来なくなる」のではなく、「次の買う理由が来るまで待っている」のでした。
私は「飽きられている」という物語を、データを見る前に勝手に作っていたわけです。
気づき②:「消耗品はリピートするはず」も思い込みだった
逆の驚きもありました。保護用のスリーブやケースのような消耗品は、「なくなったら買い足すから、リピート率は当然高い」と思っていました。
ところが、お客さんによって買うタイミングはかなりバラバラでした。まとめ買いする人、カードを買うついでにしか買わない人、そもそも他の店やネットで買う人がいるようでした。「消耗品だから自動的にリピートする」というのも、ただの思い込みだったのです。
ここで大事なのは、AIが「理由」を教えてくれたわけではない、という点です。AIが示すのは数字上のパターンだけです。「なぜそうなるのか」は、お客さんと話している私たち自身が考える部分です。
気づき③:2回目の購入までは長く、2回目以降は短くなる
もう一つの発見は、「1回目→2回目」の間隔が一番長く、そこを超えたお客さんは、その後の間隔がぐっと縮まることでした。
つまり、このジャンルの課題は「リピート率が低い」ことではなく、「2回目に来てもらうまでのハードルが高い」ことだったのです。同じ「リピート率が低い」という症状でも、打つ手がまったく違います。
- 「商品に魅力がない」と考えると、仕入れや品揃えの見直しが対策になる
- 「2回目までのハードルが高い」と考えると、初回購入後のフォローや、次回来店のきっかけづくりが対策になる
私は前者だと思い込んでいたので、長いあいだ見当違いの対策を考えていた可能性があります。
ステップ3:分析結果を「次の一手」に変える
数字が出ただけでは、売上は変わりません。ここからは、AIに「次の一手」を一緒に考えてもらいます。
手順1:AIに「仮説」を複数出してもらう
ひとつの結論に飛びつかないために、次のように頼みます。
先ほどの分析結果から、「ジャンルBの30日以内リピート率が低い」理由として考えられる仮説を5つ挙げてください。それぞれ、「この仮説が正しいなら、データにこういう特徴が出るはず」という検証方法も付けてください。
こうすると、AIが「思いつき」を並べるだけでなく、どのデータで確かめられるかまで示してくれます。確かめられない仮説は、お客さんに直接聞いたり、現場の感覚で補ったりします。
手順2:現場の肌感覚と照らし合わせる
実店舗の場合、ここが一番おもしろいところです。AIの仮説をスタッフに見せて、「これ、現場の感覚と合ってる?」と聞いてみてください。
私の店でも、データだけでは分からなかった背景が、スタッフとの会話で見えてきました。「あのシリーズは、大会の直前に買いに来る人が多い」「大会がない時期は、見に来るだけの人も多い」といった現場の声は、購買間隔の数字と合わせると納得感が大きく変わります。
AIは数字を整理するのが得意で、現場は理由を知っています。両方を合わせて初めて、使える分析になります。
手順3:小さく試して、また測る
対策は、いきなり大がかりにやらず、小さく試します。例えば次のようなものです。
- 購買間隔に合わせたタイミングでの案内:中央値の少し手前に、SNSやLINEなどで新入荷や次の発売の案内を出す
- 初回購入後のひと言:レジで「次のシリーズは○日に発売ですよ」と一声かける
- ジャンルごとに「リピートの窓」を変える:30日で見るジャンル、90日で見るジャンルを分けて、管理の物差しを変える
AIには、案内文の下書きもその場で作ってもらえます。店頭POPやSNS投稿の文面づくりも日頃からAIに手伝ってもらっているので、分析から施策の文面作成まで同じ流れでできるのは大きな利点です。
ひとこと:施策を打った後も、同じ指示文でもう一度購買間隔を出してみてください。「前後でどう変わったか」まで確認できて、はじめて分析が完結します。
この分析は、ECでも実店舗でもそのまま使えます
ここまで店舗の例が中心でしたが、考え方は同じです。
EC・ネットショップの場合
- Shopifyなら、顧客・注文のCSVから、顧客ごとの購入履歴をまとめられる
- モール型(Amazon、メルカリShopsなど)は、お客さんの情報に制限があり、顧客単位の追跡が難しい場合がある。使える範囲の注文データで、商品ジャンル別の動きを見るだけでも意味がある
- 「再入荷通知」「メルマガ」「クーポン」のタイミングを、購買間隔の中央値に合わせて設計できる
実店舗・地域のお店の場合
- ポイントカード・会員アプリ・予約システムのデータがあれば、そのまま使える
- データが少なくても、「常連さん10人の来店間隔」を手でスプレッドシートに書き出して、AIに見せるだけでも傾向がつかめる
- 美容室、整骨院、飲食店、修理店など、「次に来る時期」がある業種ほど効果が出やすい
「うちは小さな店だから、データ分析なんて関係ない」と考える方は多いです。でも、ポイントカードの台帳や予約帳、レジの履歴があれば、材料はすでに手元にあります。必要なのは、それを整えて、AIに聞く一歩だけです。
注意点:AIの分析をそのまま信じてはいけない理由
1. 個人情報は絶対に入れない
繰り返しますが、名前・住所・電話番号・メールアドレスなど、個人を特定できる情報はAIに渡さないでください。顧客IDなどに置き換えて、匿名化してから渡すのが大前提です。使うAIサービスの「入力データの取り扱い」設定(学習への利用など)も、事前に確認しておきましょう。会社や店のルールがある場合は、それに従ってください。
2. AIの計算は必ずチェックする
AIは計算ミスや、データの解釈ミスをすることがあります。特に注意したいのは次の点です。
- 日付の形式が揃っていないと、間隔が正しく計算されない
- 同じ日に複数回買った場合の扱いが、想定と違うことがある
- ジャンルをまたいだ購入を、どう数えたかが不明確になりやすい
対策は簡単です。数人分のお客さんだけ、手作業(またはスプレッドシート)で計算して、AIの結果と合っているか確認すること。5人分でも合っていれば、全体も大きくは外れていないと判断できます。
3. サンプル数が少ないと、結論は不安定になる
お客さんの数が少ないジャンルは、数人の動きで結果が大きく変わります。「中央値が75日」と出ても、わずか数人のデータなら、たまたまの可能性が高いです。AIに「各ジャンルの対象顧客数も表示して」と頼み、人数が少ないジャンルは参考程度に扱いましょう。
4. 「相関」と「原因」は別物
「2回目までの間隔が長い」という事実は分かっても、「なぜ長いのか」はデータだけでは断定できません。AIが出す理由づけは、あくまで仮説です。現場のスタッフやお客さんの声と照らし合わせて、人間が最終判断してください。
5. 分析のしすぎで動けなくならない
分析は、施策のための手段です。完璧なデータを待つより、おおまかな傾向が見えた時点で小さく試すほうが、ずっと早く学べます。
購買間隔分析を始めるための3日間プラン
「やってみたいけど、何から手をつければいいか分からない」という方のために、最小限の進め方をまとめます。
- 1日目:データを集めて匿名化する。顧客ID・購入日・ジャンル・金額の4列だけを残し、個人情報の列は削除します。
- 2日目:AIに指示文を渡して、購買間隔の表を出してもらう。数人分は手計算でチェックします。
- 3日目:自分の思い込みと照らし合わせる。「このジャンルはこうだろう」と思っていたことを、先に書き出しておくと、ズレが見つけやすくなります。
コツは、分析結果を見る前に、自分の予想をメモしておくことです。「うちの商品ジャンルAは、リピート率が高い」「Cは一度きりで終わる」といった予想を書いておけば、後で答え合わせができます。この「予想とのズレ」こそが、思い込みに気づく入口になります。
データ分析の基礎を、もう少し体系的に学びたい方は、入門書を一冊手元に置いておくと安心です。
まとめ:思い込みは、データを見た瞬間に崩れる
今回の要点を振り返ります。
- 「リピート率が低い」と感じたら、商品を疑う前に購買間隔を見る。測る窓の長さが実態に合っていないだけかもしれません。
- 購買間隔は、CSVとAIだけで分析できる。高額なツールは不要です。
- 私の思い込みは、「飽きられている」「消耗品だから戻る」という2つの物語でした。実際は、買うきっかけ待ちだったり、2回目までのハードルが高かったりしました。
- AIが示すのは数字上のパターンまで。理由の判断と施策の決定は、現場を知る人間の仕事です。
- 個人情報の匿名化、計算のチェック、サンプル数の確認を忘れないでください。
16年以上EC運営をしていても、実店舗を運営していても、思い込みは平気で居座ります。経験が長いほど、「分かっているつもり」になりやすいとも感じます。だからこそ、AIという「感情を持たない集計係」に、一度データを見せてみる価値があります。
まずは、お手元の売上データから4列だけ取り出して、AIに購買間隔を出してもらってください。「うちのお客さんは、こんなリズムで動いていたのか」という発見は、きっと次の一手のヒントになります。
「自分の店でどう始めればいいか分からない」という方へ
データの取り出し方、匿名化のやり方、指示文の調整、分析結果の読み方などは、業種や使っているレジ・カートシステムによって異なります。「自分の店の場合はどうすればいいのか」と迷ったときは、AI導入のご相談も承っています。EC、実店舗、どちらの運営経験も踏まえて、無理なく続けられる活用方法を一緒に考えます。お気軽にご相談ください。
AI導入・業務効率化のご相談を承っています
「自社の業務のどこにAIを使えばいいか分からない」「もっと本格的に効率化したい」——そんな中小企業・個人事業主の方に向けて、AI導入と業務効率化のサポートを行っています。EC運営16年以上の現場経験をもとに、実際に使える形でのAI活用をご提案します。まずはお気軽にご相談ください。
また、AI活用やEC運営の実践ノウハウは、noteメンバーシップでより詳しく発信しています。▶ noteメンバーシップを見る
