プッシュ通知で嫌われずに復帰を促すリエンゲージメント設計
通知許可は「使い放題のレバー」ではない
プッシュ通知は、休眠したプレイヤーへアプリの外から接触できる強力な手段である。同時に、使うほど残量が減る「信用の予算」でもある。関係の薄い通知を一斉配信し、短期的に起動数が増えたとしても、通知を無効化されれば次の大型イベントも、期限が迫った受け取り忘れも届けられない。
iOSでは、通知許可を初めて要求したときの回答がシステムに記録され、その後に同じ許可要求を実行してもダイアログは再表示されない。再許可には原則として設定アプリでの操作が必要となる。Apple自身も、初回起動直後ではなく、通知の用途を理解できる文脈で許可を求めるよう案内している。[1] Android 13以降も、新規インストール時の通知は初期状態で無効であり、POST_NOTIFICATIONS の実行時許可が必要である。対象SDKや拒否回数によって再要求できる場合はあるが、Android 12L以下を対象とするアプリでは、一度「許可しない」を選ぶと再インストールまたは対象SDK更新まで再表示されない。[2]
したがって、OS標準ダイアログは基本的に片道切符として扱うべきである。押せるから押すのではなく、「この人が、いま価値を理解して判断できるか」を確認してから使う。
本稿が扱うのは、通知疲れによる拒否や離脱を防ぎながら、休眠者に戻る理由を届ける設計である。既存記事「ゲームのログインボーナスで継続率を下支えするコツ」が、主に継続中のプレイヤーへゲーム内報酬で再訪理由を作るのに対し、本稿は端末外からの連絡路をどう守るかに焦点を置く。
通知疲れはなぜ起きるのか
通知疲れは、単に「回数が多い」状態ではない。次の三つが重なることで、通知が価値ある情報から処理すべきノイズへ変わる。
慣化によって合図が背景へ沈む
同じ時刻、同じ文型、同じ誘因の通知を繰り返すと、プレイヤーは内容を読む前にスワイプするようになる。これは刺激への反応が反復によって弱くなる慣化として整理できる。通知を増やして表示回数を稼いでも、同じ合図を薄めているだけなら、肝心な通知まで見落とされる。
関連性が低いと「自分宛て」ではなくなる
未解放コンテンツの開催告知、すでに受け取った報酬の催促、参加していない対戦モードのリマインドは、データ上は正しく送れていても体験として誤配である。一斉配信は対象母数を広げるが、無関係な人へ割り込む確率も同時に上げる。
割り込みには認知コストがある
通知は、ゲームを開いていない時間へ入ってくる。仕事、睡眠、移動、別の娯楽を中断して注意を要求するため、内容の価値が割り込みコストを下回ると苛立ちになる。プッシュ通知の過剰さや侵入感がストレスと利用中止に関係することは、モバイルアプリ利用の研究でも報告されている。[3] また、通知頻度に関する研究レビューは、頻度を上げれば利用が増える場面がある一方、高すぎる頻度は迷惑と受け取られ、許容度には個人差があると整理している。[4]
つまり疲れは「送信数」だけでなく、価値、文脈、割り込みの強さの比で決まる。短期の開封率だけを最大化すると、この比率の悪化を見落としやすい。

通知疲れは「回数」ではなく、慣化・関連性・割り込みコストの3要素が重なることで起きる。
まず通知を三階層に分ける
すべての通知を同じ配信枠、同じ重要度、同じ許諾で扱ってはならない。実務では、少なくとも次の三階層へ分ける。
| 階層 | ゲームでの例 | プレイヤーにとっての必要性 | 基本方針 |
|---|---|---|---|
| トランザクション通知 | 購入処理の完了、申請結果、本人が設定したリマインド | 高い | 発生事実にひもづけ、遅延や重複を防ぐ |
| エンゲージメント通知 | スタミナ回復、フォロー中イベントの開始、未完了ミッションの期限 | 選択的 | 種類別に選べるようにし、行動履歴と期限で絞る |
| マーケティング通知 | 新商品、セール、復帰キャンペーン、横断的な販促 | 任意 | 明示同意を取り、アプリ内で解除可能にする |
ここでいう「トランザクション」は事業上の分類であり、OS許可を迂回できるという意味ではない。Appleは、プッシュ通知をアプリ動作の必須条件にしてはならず、販促やダイレクトマーケティングに使う場合は、アプリ内の文言による明示的なオプトインと解除方法を求めている。[5] 地域ごとの法令や自社のプライバシーポリシーは別途確認が必要である。
Android 8.0以降では通知チャネルごとに表示・音・重要度を分けられ、最終的な制御権はプレイヤーにある。[6] たとえば「取引・申請結果」「イベントと回復」「キャンペーン」を別チャネルにする。販促だけ止めたい人へ、全通知を止める二択を迫らないためである。重要度 HIGH は、即時対応が必要な情報に限る。単なるイベント開始を緊急通知に見せれば、OSの分類を満たしていても信用を失う。
許可ダイアログの前に価値を理解してもらう
ソフトアスクは「許可を取る画面」ではない
ソフトアスクとは、OS標準ダイアログの前にアプリ内で用途を説明し、プレイヤーが希望したときだけ許可要求へ進める設計である。Android公式も、アプリの利点を体験してから、ベルボタンなどのユーザー操作を起点に許可を求める流れを推奨している。[2]
悪いソフトアスクは「通知を許可するとお得!」という抽象的な全画面で、閉じてもすぐOSダイアログを出す。これではダイアログを二重にしただけである。良いソフトアスクには次の要素がある。
- 何を知らせるか:「スタミナが全回復したとき」「予約したレイドの15分前」
- どの程度届くか:「この種類は最大1日1回」「夜間は送らない」
- 選ばない自由:「今はしない」で閉じられ、OSダイアログを出さない
- 後から変えられる場所:ゲーム内の通知設定への導線
出すタイミングは初回起動ではなく、価値が発生した直後がよい。たとえば、プレイヤーが初めてスタミナを使い切った、イベントをお気に入り登録した、協力プレイを予約した、といった瞬間である。「何のための通知か」がすでに体験と結びついている。
許可状態を状態機械として管理する
企画書には、許諾率の目標だけでなく状態と遷移を書く。
| 状態 | 次に許される案内 |
|---|---|
| 未提示 | 価値が発生した文脈でソフトアスクを出せる |
| ソフトアスク保留 | 同じ画面や次回起動で追撃せず、別の明確な契機まで待つ |
| OS許可済み | 種類別設定、頻度キャップ、静穏時間を適用する |
| OS拒否済み | プッシュを送らず、アプリ内インボックスへ切り替える |
| 許可後に無効化 | 配信停止を尊重し、通知設定画面でのみ回復導線を示す |
iOSでは、割り込まず通知センターへ静かに届け、受信者が「維持」か「オフ」を判断できる暫定許可も用意されている。[1] ただし、暫定許可を一斉配信の抜け道として使ってはならない。静かな通知であっても、関連性の低い履歴を積めば信用は減る。

通知許可は状態遷移として管理する。「OS拒否済み」からの復帰経路は原則として存在しない。
頻度とタイミングを感覚で決めない
上限は三重に持つ
頻度キャップは、キャンペーン単位だけでは不十分である。複数担当が別々に「1日1通」を設定すれば、プレイヤーには1日5通届く。最低限、次の三つを同時に判定する。
- 全体キャップ:全エンゲージメント通知とマーケティング通知の合計上限
- 種類別キャップ:スタミナ、イベント、商品など同種通知の上限
- キャンペーンキャップ:同じ訴求を期間中に送る回数の上限

頻度キャップは全体・種類別・キャンペーン別の三重で同時に判定する。
立ち上げ時の仮説として、エンゲージメント通知とマーケティング通知を合計「24時間に1通、7日間に3通まで」から始め、トランザクション通知は別枠にする、といった保守的な設定が考えられる。これは業界共通の正解値ではない。ジャンル、プレイ頻度、通知種類で許容度が変わるため、拒否率とホールドアウト比較を見て調整する初期値である。
さらに、次のクールダウンを組み合わせる。
- 通知から起動した後は、一定時間エンゲージメント通知を止める
- 自発起動した直後は「戻ってきて」通知をキャンセルする
- 同じ目的の通知が予約済みなら、古いものを置き換える
- 期限切れのイベント通知は配信せず、後からまとめて届けない
- 強い訴求を無視した回数が続いたら、送信頻度を段階的に下げる
静穏時間は端末の現地時刻で判定する
配信時刻は運営拠点の時刻ではなく、プレイヤーのタイムゾーンで扱う。たとえば現地時刻22時から8時を初期の静穏時間帯とし、翌朝へ延期したときに情報価値が残る通知だけを送る。終了15分前のイベント通知を翌朝へ繰り越しても意味はないので破棄する。
OSの集中モードや要約配信が最終的な表示時刻を変えることも前提に置く。Appleの設計指針も、利用者が集中モードや配信タイミングを管理することを示している。[7] 「サーバーが送った時刻」と「本人が見た時刻」を同一視してはならない。
一律配信をやめ、関連性を判定する
セグメント配信は「30日休眠者」のような一条件で終わらない。少なくとも、到達可能性、内容適合、時間適合、疲労の四群を持つ。
- 到達可能性:OS許可、種類別同意、チャネル有効、対象地域
- 内容適合:コンテンツ解放済み、参加履歴、保有キャラクター、受取済みか
- 時間適合:現地時刻、イベント残り時間、普段の起動時間帯
- 疲労:直近の送信数、未反応回数、拒否・解除兆候、直前セッション
簡易な関連性スコアは、たとえば次のように設計できる。
\[S = 0.35I + 0.30R + 0.20A + 0.15T - F\]\(I\) は直近行動から推定した意図、\(R\) は今受け取れる価値、\(A\) はコンテンツ適合、\(T\) は時間適合、\(F\) は疲労ペナルティである。各入力を0から1に正規化し、一定値を超えた人だけを候補にする。係数は例であり、実データで検証する。
重要なのは、高得点者へ必ず送ることではない。全体キャップ、静穏時間、同意状態、期限を通過した後の候補にスコアを使う。許可や拒否を予測モデルで上書きしてはならない。
文言の差し替えだけをパーソナライゼーションと呼ばない。「プレイヤー名を入れた無関係なセール」は、個別化された迷惑である。まず送る必要性を個別化し、その後に内容を合わせる。

関連性スコアは4群の入力から算出するが、送信可否の最終判断は同意状態や頻度キャップが優先する。
拒否された後こそ設計が問われる
通知拒否は、復帰施策の失敗状態ではない。「端末外では割り込まないでほしい」というチャネル選択である。ここから無理に許可へ戻そうとすると、プッシュだけでなくゲームそのものへの信頼を損なう。
アプリ内インボックスを正本にする
重要なお知らせをプッシュだけに載せると、拒否したプレイヤーが情報から切り離される。プッシュは通知の本体ではなく、アプリ内インボックスにある情報への短い入口と考える。
インボックスには次の性質を持たせる。
- 未読・既読と公開日時を保持する
- イベント、障害・メンテナンス、キャンペーンなどで絞り込める
- 期限切れを明示し、操作不能な導線を残さない
- プッシュを拒否していても同じ情報へ到達できる
- 起動時にすべてをモーダル表示せず、重要度に応じてバッジや一覧で示す
プレイヤーが自分の都合で確認できる「プル型」の窓口を残すことで、割り込みを拒否した人とも関係を継続できる。
代替チャネルは自動的に増やさない
プッシュ拒否を検知したからといって、メールやSMSへ同じ通知を自動転送してはならない。チャネルを変えただけで、拒否された割り込みを続けることになる。メールはメールとして用途と頻度を説明し、別に同意を得た人へ送る。アプリ内インボックス、公式サイト、ゲーム内カレンダーなど、割り込みの弱い順に代替する。
| 状況 | 第一の代替 | 補助導線 |
|---|---|---|
| OS通知を拒否 | アプリ内インボックス | ホーム画面の控えめな未読表示 |
| マーケティングのみ拒否 | トランザクション通知を維持 | キャンペーンはインボックスへ |
| 長期休眠かつメール同意済み | 頻度を抑えたメール | Webの復帰ページ |
| 全チャネル拒否 | 送らない | 自発的に戻った際の復帰導線だけ整える |

通知を拒否されても、割り込みの弱い順に代替導線を用意すれば関係は続けられる。
再許可は「説得」ではなく「設定支援」にする
再許可の案内を出してよいのは、本人が通知を必要とする操作をしたときである。たとえば「レイド開始を知らせる」をオンにしたのにOS通知が無効だった場合、「端末の通知設定がオフのため届かない」と事実を説明し、設定画面を開くボタンを置く。iOSにはアプリ固有の通知設定へ遷移するURLが用意され、Androidにもアプリまたはチャネルの通知設定を開く導線がある。[8][6]
反対に、ログインのたびに「通知をオンにしてください」と出す、報酬で許可を買う、閉じるボタンを目立たなくする、といった設計は避ける。明確な利用契機がない再案内は出さない。運用上どうしても再案内を試す場合も、たとえば30日以上の間隔を空け、拒否後1回までとする保守的な上限を置き、再拒否後は停止する。この日数はOSの規則ではなく、しつこい再要求を防ぐための初期ガードレールである。
再許可率だけを担当者の目標にすると、画面露出を増やすほど数字を作れてしまう。目標は「必要な人が設定を直せた割合」と「案内後の離脱や不快反応を増やしていないこと」の両方に置く。
計測は開封の先までつなぐ
KPIを段階ごとにつなげて見る
通知施策は、許可、配信、起動、ゲーム内行動、負の反応を同じ配信IDで追えるようにする。
| 段階 | KPI | 定義例 |
|---|---|---|
| 許可 | ソフトアスク受諾率 | OSダイアログへ進んだ人数 ÷ ソフトアスク表示人数 |
| 許可 | OS許諾率 | 新規許可人数 ÷ OSダイアログ表示人数 |
| 到達 | 配信・表示率 | 配信または表示が確認できた数 ÷ 送信対象数 |
| 反応 | 通知起点セッション率 | 通知タップ後、所定時間内に開始したセッション数 ÷ 到達数 |
| 価値 | 目的行動率 | 通知起点セッションで目的行動を完了した人数 ÷ 通知起点セッション人数 |
| 疲労 | 種類別オプトアウト率 | 対象期間の種類別解除人数 ÷ 期間開始時の種類別許可人数 |
| 疲労 | OS通知無効化率 | OS通知が有効から無効へ変わった人数 ÷ 直前の有効人数 |
| 長期影響 | 増分復帰率 | 配信群の復帰率 − 非配信ホールドアウト群の復帰率 |

通知の評価は開封の先、疲労と長期的な復帰率までを一連の流れでつなぐ。
FCMの配信レポートでは、送信、Androidでの受信・表示、通知からのオープンなどを確認できるが、指標には遅延やプラットフォーム差がある。[9] 「送信成功」を「見られた」と解釈せず、計測可能範囲をダッシュボードに注記する。
アンインストールとの関係は、とくに慎重に読む。Google Analytics for FirebaseにはAndroidの app_remove やFCMの notification_open などのイベントがあるが、予約していた旅行が終わった、端末容量が不足した、ゲーム内容に飽きたなど別の理由もある。[10] 通知直後のアンインストールが多くても、それだけで通知が原因とは断定できない。
因果に近づくには、ユーザー単位で固定した非配信ホールドアウトを置き、送信量別コホートで7日・30日などの継続率、通知無効化、アンインストールを比較する。単純な相関だけでなく、通知前の活動度、休眠日数、課金有無、イベント参加履歴などの差も確認する。
開封率だけを勝ち指標にしない
「本日23:59で消滅」のような強い文言はタップを増やせる。しかし、遷移先で価値がなければ即離脱や解除を増やす。最低でも、次をセットで見る。
- 短期:表示、タップ、通知起点セッション
- 中期:目的行動、翌日・7日後の再訪
- 負の反応:種類別解除、OS無効化、インボックスの即時既読処理、アンインストール
- 品質:期限切れ遷移、対象外表示、二重配信、誤ったローカル時刻
A/Bテストは「よく開く文言選手権」にしない
テスト対象は文言だけではない。頻度、時刻、対象条件、静穏時間、ソフトアスクの契機、通知後の遷移先を一つずつ検証する。
実務では次の順序が扱いやすい。
- 非配信ホールドアウトを置き、通知そのものの増分効果を測る
- 頻度を比較し、最小の送信量で効果が残る点を探す
- 現地時刻や普段の起動時刻に合わせた配信を比較する
- 対象条件を狭め、関連性を上げる
- 最後に文言や画像を調整する
一度に複数要素を変えると、何が効いたか分からない。割り付けは通知単位ではなくユーザー単位で固定し、同じ人が高頻度群と低頻度群を行き来しないようにする。イベント期間だけの短いテストでは、オプトアウトや次週の反動が見えないため、事後観測期間も設ける。
典型的な落とし穴は次の通りである。
- タップ率を分母「送信数」で比較し、実際の表示差を無視する
- 復帰しそうな高活動者だけに送った結果を通知効果と誤認する
- 勝ち案を全体配信し、低関心層で解除が増える
- 配信直後の売上だけを見て、翌週の自発起動減少を見ない
- テスト中に別キャンペーンも送り、全体キャップが崩れる
Firebaseなどの配信基盤には通知のA/Bテスト機能があるが、ツールが自動で適切な勝ち指標を選ぶわけではない。配信前に主指標、負のガードレール、停止条件、観測期間を決めておく。
実務チェックリスト
企画前
- 通知の目的が「誰に、何を思い出してもらい、どこへ遷移させるか」まで書かれている
- トランザクション、エンゲージメント、マーケティングを分類した
- プッシュを拒否した人にも届くアプリ内の正本がある
- 未解放、受取済み、参加資格なしの人を除外できる
許可取得
- 初回起動直後にOSダイアログを出していない
- ソフトアスクに通知内容、頻度、「今はしない」を表示している
- プレイヤーが価値を体験した操作を契機にしている
- OS拒否後に同じ許可要求を繰り返さない
- 通知種類ごとのオン・オフをゲーム内で変更できる
配信設計
- 全体、種類別、キャンペーン別の三重キャップがある
- 端末のタイムゾーンと静穏時間を考慮している
- 起動・受取済み・期限切れを検知して予約をキャンセルする
- 強い重要度を、本当に即時性が必要な通知だけに使っている
- 複数部署の予約通知を横断して衝突判定できる
拒否後
- アプリ内インボックスだけで重要情報を確認できる
- メールなど別チャネルへ無断で切り替えない
- 再許可案内は、通知を必要とする本人の操作時だけに出す
- 設定アプリの該当画面へ直接移動できる
- 再案内の回数・間隔・停止条件を決めている
計測と改善
- 配信ID、通知種類、対象条件、文面版、送信理由を記録する
- 許諾率、解除率、通知起点セッション率を同じ期間で見る
- 目的行動と翌日・7日後の行動まで追う
- 非配信ホールドアウトで増分効果を測る
- アンインストールとの相関を因果と断定しない
- A/Bテストに負のガードレールと事後観測期間がある
結論
プッシュ通知の仕事は、最大人数へ最大回数を届けることではない。プレイヤーが「これは自分に必要な知らせだ」と判断できる関係を維持することである。
そのためには、許可前に価値を説明し、通知を必要性で分類し、全体頻度を横断管理しなければならない。一律配信ではなく、行動、期限、タイムゾーン、疲労を使って送信対象を絞る。そして最も重要なのは、拒否を行き止まりにしないことである。アプリ内インボックスを情報の正本にし、別チャネルの同意を分け、本人が必要とした瞬間だけ設定変更を支援する。
通知許可はKPIではなく、プレイヤーから預かった注意へのアクセス権である。開封率を上げる施策より、その権利を長く失わない設計の方が、結果としてリエンゲージメントの選択肢を多く残す。
References
1. Asking permission to use notifications - iOSの通知許可は初回回答が記録され、文脈のある許可要求や暫定許可が推奨されることを説明するApple公式資料。
2. Notification runtime permission - Android 13以降の通知実行時許可、拒否時の挙動、許可を求める適切なタイミングを示すAndroid公式資料。
3. Understanding the discontinuance behavior of mobile shoppers as a consequence of technostress: An application of the stress-coping theory - プッシュ通知の過剰さと侵入感がストレスやアプリ利用中止へ与える影響を調べた研究。
4. Consumer Acceptance of App Push Notifications: Systematic Review on the Influence of Frequency - 通知頻度と利用促進、迷惑感、個人差に関する17研究を整理したシステマティックレビュー。
5. App Review Guidelines - プッシュ通知を必須機能にしないこと、販促利用時の明示同意と解除手段を定めるApple公式審査指針。
6. 通知チャンネルを作成して管理する - Androidの通知チャネル、重要度、ユーザーによる制御、設定画面への導線を解説する公式資料。
7. Managing notifications - 集中モードや配信時刻など、利用者が通知体験を管理する前提を示すApple Human Interface Guidelines。
8. openNotificationSettingsURLString - iOSアプリから当該アプリの通知設定画面へ移動するためのApple公式API資料。
9. メッセージ配信について - FCMの送信、受信、表示、オープンなどの配信指標と、その制約を説明するFirebase公式資料。
10. 自動的に収集されるイベント - notification_open やAndroidの app_remove を含むGoogle Analyticsの自動収集イベントを示す公式資料。
この文書は、Perplexity、Claude、OpenAI Codex の3つのAIの支援を受けて著述されたものです。引用画像を除き、MIT License にて提供されています。