◉ANTIGRAVITY LABEN
記事一覧/連携・プラグイン
⬡ 連携・プラグイン/2026-05-30上級

Antigravity エージェントで AdMob メディエーションの fill rate を診断する — eCPM だけ追って見落とした収益を取り戻す実装メモ

AdMob メディエーションの収益が伸び悩む原因の多くは eCPM ではなく fill rate にあります。Antigravity のエージェントに BigQuery エクスポートと Firebase の指標を読ませ、ネットワーク別の充填率低下を自動で切り分ける診断パイプラインの実装を、個人開発の実数値とともにまとめます。

AdMob13メディエーション4fill-rateeCPMAntigravity386収益化23

✦ プレミアム記事

AdMob の管理画面で eCPM が前月より上がっているのに、月末の収益はむしろ下がっている。2014年から個人開発でアプリを出してきて、累計5,000万ダウンロードの大半を占める壁紙アプリ群を運用するなかで、私はこの「数字が良いのに儲かっていない」状態に何度も足を取られてきました。原因のほとんどは eCPM ではなく、もっと地味な fill rate(広告の充填率)にありました。

eCPM は「表示された広告の単価」を語りますが、「そもそも広告が表示されたか」は語ってくれません。メディエーションを複数ネットワークで組んでいると、あるネットワークの fill rate が静かに落ち、リクエストは飛んでいるのに広告が返ってこない時間帯が増えていく。eCPM のグラフだけ見ていると、この穴はまったく見えないのです。

そこで私は、AdMob の指標を Antigravity のエージェントに毎朝読ませて、fill rate の異常をネットワーク別に切り分けさせる仕組みを組みました。ここではその診断パイプラインの設計と実装を、実際にハマった箇所も含めてお伝えします。

fill rate と eCPM は別の物語を語る

まず混同しやすい指標を整理します。AdMob のメディエーションでは、ひとつの広告枠に対して次の流れが走ります。アプリが広告をリクエストし(request)、メディエーションが各ネットワークに順番に問い合わせ、いずれかが広告を返し(match)、実際に画面へ表示される(impression)。

fill rate(match rate)は match ÷ request、つまり「リクエストのうち何割に広告が返ってきたか」です。eCPM は「表示1,000回あたりの収益」で、impression を分母にしています。ここがポイントで、eCPM は表示できなかったリクエストを一切カウントしません。

具体例で考えます。あるネットワークの eCPM が ¥800 と高くても、fill rate が 40% まで落ちていれば、リクエスト1,000回あたりの実収益は単純計算で ¥320 相当にしかなりません。一方、eCPM ¥500 で fill rate 90% のネットワークは ¥450 相当を稼ぎます。eCPM のランキングだけでウォーターフォールの優先順位を決めると、前者を上位に置いてしまい、収益を取りこぼします。私が最初にやらかしたのが、まさにこれでした。

だからこそ、診断エージェントには「eCPM × fill rate を掛け合わせた実効単価」をネットワーク別・時間帯別・国別に見せる必要があります。人間が AdMob のダッシュボードでこれを毎日手で追うのは現実的ではありません。ここがエージェントの出番です。

診断エージェントに何を読ませるか — データソースの設計

最初に決めるのはデータソースです。AdMob の管理画面をスクレイピングする方法もありますが、私は安定性を重視して、AdMob の BigQuery エクスポート(Mediation 用のスキーマ)と、Firebase Analytics の指標を組み合わせています。

判断の軸はシンプルで、「数字の生データは構造化された場所から取り、文章での解釈だけをエージェントに任せる」ことです。エージェントに HTML を読ませて数字を拾わせると、桁の取り違えや欠損が混入します。数値の取得は決定的なコードで行い、エージェントには「この数字をどう読むか」だけを委ねるのが、私の運用での結論です。

具体的には次の3つを束ねます。AdMob の BigQuery テーブルからネットワーク別の request / match / impression / estimated_earnings を日次で取得。Firebase からアプリ別の DAU と広告表示イベント数を取得。そして自分で持っているウォーターフォールの設定(どのネットワークをどの順で並べているか)を YAML で持ち、エージェントの判断材料にします。

✦

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

この記事の続きを読む

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

この記事で得られること
✦eCPM が高いのに収益が伸びない壁紙アプリで、fill rate のネットワーク別低下を Antigravity エージェントに切り分けさせ、原因を15分で特定できるようになります
✦AdMob の BigQuery エクスポートと Firebase の指標を一つのエージェントツールに束ね、impression / request / match rate を毎朝自動で読み解く Python 実装をそのまま持ち帰れます
✦『どこまでをエージェントに任せ、どこからを人が決めるか』という収益判断の線引きを、私自身が運用で痛い目を見た事例から具体的に学べます
Stripe による安全な決済 · いつでもキャンセル可能
✦

この記事を購入する

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

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

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

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

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

関連記事

⬡ 連携・プラグイン2026-05-23
Apple Search Ads Campaign Management API × Antigravity Agent でキーワード入札を自律調整する実装メモ
ASA Campaign Management API と Antigravity のサブエージェントを組み合わせ、個人開発の壁紙アプリでキーワード入札を自律調整した実装記録。JWT認証、ROAS/CPIに基づくポリシー、Crashlytics連動の安全弁まで。
⬡ 連携・プラグイン2026-05-04
Antigravity・Cursor・Bolt を「回収できるか」で選ぶ — 個人開発者の損益分岐メモ
Antigravity・Cursor・Bolt の3つを、機能の優劣ではなく「月額を何時間の節約で回収できるか」で比べます。料金は改定されやすいため数字を決め打ちせず、自分の数字で損益分岐を出す計算コードと、受託・自社アプリ・試作の使い分けの考え方をまとめました。
▣ アプリ開発2026-05-21
Firebase Remote Config と Antigravity Agent で AdMob 配置を実運用しながら微調整する設計
壁紙アプリの AdMob 収益が頭打ちになった経験から、Firebase Remote Config と Antigravity Agent を組み合わせて広告配置を実運用中に少しずつ最適化する仕組みをまとめます。