◉ANTIGRAVITY LABEN
記事一覧/アプリ開発
▣ アプリ開発/2026-05-24上級

iOS Push 通知の A/B 運用を Antigravity Agent で週次回す — 文面・配信時刻・セグメントの自律改善ループ

個人開発で長く運用してきた壁紙系・癒し系アプリの実体験から、iOS Push 通知の A/B を Antigravity Agent に任せる週次運用設計をまとめました。FCM・Firebase Analytics・BigQuery の具体実装に加え、毎週の勝者宣言がどれだけ当たっているかを手元のシミュレータで測り、アーム数と判定条件を測定結果に合わせて直しています。

antigravity464ios37push-notificationfirebase11ab-testindie-dev6admob16

✦ プレミアム記事

import { TerminalBox } from "@/components/article/TerminalBox";

癒し系アプリの通知文をひと言だけ変えた翌週、オープン率は上がっているのに D7 リテンションだけが下を向いていました。月曜の朝に届く週次レポートを眺めながら、「勝った」と思って積み重ねてきた判断のうち、本当に勝っていたのはどれだけあったのだろう、と手が止まったのを覚えています。

個人開発で壁紙系・癒し系・引き寄せ系のアプリを長く運用していますが、Push 通知ほど、触れば数字が動き、踏み込みすぎればアンインストールに直結する機能はほかにありません。手作業で A/B を回すのは早い段階で限界が来て、いまは Antigravity Agent に文面候補の生成と週次レビューを預ける構成へ移しています。その実装と、私が踏んだ失敗、そして「勝者を宣言してよい条件」を実際に測って直したところまで、ここに書き残します。

Push 通知の A/B テスト自体は古くからあるテーマですが、AI エージェントが入ると「次に試すべき仮説」を出してくれる点が大きく違います。逆に言えば、エージェントに任せるからこそ、配信量や評価指標の設計を雑にすると一気に数値が崩れるので、その守りの設計まで含めて書きます。

なぜ私が Push 通知の A/B 運用を Agent に任せ始めたのか

壁紙アプリの運営を続ける中で、毎週の運用作業に占める Push 通知関連の時間が無視できなくなっていました。文面を考え、配信時刻を決め、配信後にオープン率と D7 リテンションを見て次の仮説を立てます。1 本のアプリなら手作業でも回せますが、5 本以上を並行で運用していると、それだけで週 4 時間ほど消えていました。

加えて、私自身は癒し系・引き寄せ系の文面を書くのが得意ではありません。語尾のトーンを少し変えるだけでオープン率が 1.4 倍ほど変わることがあり、毎週のアイデア出しで疲弊していました。Antigravity を本格的に使い始めてからは、過去 12 週分の A/B 結果を読み込ませて「次に試す候補を 5 つ出して」と依頼すると、人間の発想にはない方向の文面を提案してくれることが増えてきました。これが導入の決め手でした。

ただし、Agent に丸投げすると 2 つの罠があります。第 1 に、Agent は配信量の感覚を持たないので、人間が止めなければ過剰配信になりがちです。第 2 に、評価指標を「オープン率だけ」にすると、煽り文面がチャンピオンになって長期的にユーザーが離れます。この 2 点は後段で具体的に書きます。

導入前後で変わった運用負荷

導入前は週 4 時間程度かかっていた Push 通知関連の作業が、現在は約 30 分まで縮まりました。内訳としては、Agent が生成した文面候補のレビューに 15 分、Slack に流れてくる週次レポートの確認とゴーサインに 10 分、配信予約のダブルチェックに 5 分という配分です。空いた時間は新しい壁紙の作画や、AdMob のメディエーション設定の見直しに回せるようになりました。個人開発者にとって時間は最大のコストなので、この差分は実感として大きいです。

全体アーキテクチャ — 文面生成・配信・計測の 3 層

設計の前提として、Push 通知の運用は「文面生成」「配信」「計測」の 3 層に分けると Agent との分担が整理しやすくなります。私の構成では下記のような流れにしています。

  1. 文面生成層: Antigravity Agent が週次で 5〜10 個の文面候補を提案します。直近 12 週の A/B 結果と、各アプリの世界観メモを参照します。
  2. 配信層: Firebase Cloud Messaging (FCM) の HTTP v1 API を叩く Cloudflare Workers の薄い橋渡しを置き、Antigravity から呼べる MCP として公開しています。
  3. 計測層: Firebase Analytics から BigQuery に流したイベントを、週次で Antigravity が SQL で参照します。オープン率・通知後 1 時間アクティブ率・D7 リテンション・AdMob 収益を主要指標としています。

それぞれの層を別々に置くのは、責任範囲を Agent から分離するためです。配信を直接 Agent に持たせると、誤って全ユーザーへ即時送ってしまうリスクがあるので、配信は必ず「予約 → 人間承認 → 実行」の 3 ステップを介します。

構成図(テキストで)

クライアント側の iOS アプリは FCM のトークンを Firestore に保存します。配信ジョブは Cloudflare Workers の Cron Trigger と、Antigravity が手動キックする Webhook の両方を持っています。文面候補は GitHub の YAML ファイルにコミットされ、PR で人間レビューを通った後に配信予約に入ります。この PR ベースの運用は、変更履歴を残せる点と、Agent の暴走を物理的に止められる点で気に入っています。

✦

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
✦FCM の HTTP v1 API と Antigravity Agent を接続し、文面候補生成 → 配信 → 計測 → 次週の改善案までを 1 つのループに収める具体構成
✦壁紙アプリと癒し系アプリの実データに基づくセグメント分け(D1/D7/D30 と AdMob eCPM 階層)と、過剰通知で D7 リテンションを 4.8pt 落としたリカバリ手順
✦Firebase Analytics → BigQuery → Antigravity の週次レビュー用 SQL とプロンプトテンプレ、および週 4 時間の手作業を 30 分に縮めた分担
✦4 案から毎週 1 本を選ぶ運用の的中率を 20 万試行で実測した依存なしスクリプト。アーム数を 4 から 2 へ減らし、勝者宣言に有意差の条件を足した根拠
Stripe による安全な決済 · いつでもキャンセル可能
✦

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Antigravity Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • ✦コピー&ペーストで使える実装コード付き
  • ✦毎日新しい上級ガイドを追加
  • ✦¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

関連記事

▣ アプリ開発2026-08-29
ビルドが通ったことは、pbxproj の編集が正しかった証明になりません
エージェントに project.pbxproj を編集させると、ビルドは緑のままリソースやスクリプトだけが静かに外れます。構造で確かめる4つの検査と、1,200ファイル規模でも0.1秒で終わる監査スクリプトを、iOS アプリの実運用の側からまとめます。
▣ アプリ開発2026-05-17
課金状態の「正」はどこにある? — Antigravityで設計するad-free Source of Truthパターン
個人開発の壁紙アプリで実際に踏んだ課金状態バグから導いた設計パターン。BillingManager・AdFreeManager・ModalGateの3層設計をAntigravityで実装する実践ガイド。
▣ アプリ開発2026-05-01
Antigravity × Railway 即デプロイガイド — Cloudflare と Vercel の隙間を埋める個人開発者向け選択肢
Cloudflare Workers の30秒制限にも Vercel の永続コネクション問題にも合わない場面で効く、Railway という2つ目のデプロイ先を紹介します。Antigravity からの整備手順、Reference 機能での設定省力化、ワーカーと Cron の同居、コスト感を見ます。