◉ANTIGRAVITY LABEN
記事一覧/Agents & Manager
◈ Agents & Manager/2026-05-27中級

AdMob メディエーション 50 グループ超を一人で回すために、エージェントへ渡した 4 工程と手元に残した 4 判断

iOS / Android の壁紙アプリ 2 本で AdMob メディエーション 50+ グループを運用しています。任せた 4 工程と握り続ける 4 領域の線引きに加えて、掲載していた判定コードに残っていた母数不足の穴と、その直し方をお伝えします。

agents100admob16メディエーション4自動化40個人開発108ai-tools16

✦ プレミアム記事

iOS と Android で動かしている壁紙アプリ 2 本に、AdMob メディエーショングループが今 50 を超えています。BW iOS で 28、BW Android で 14、UKI iOS で 16、UKI Android で 6。1 アプリで 1 つだったメディエーションが、ATT (App Tracking Transparency) の ON/OFF と地域分割で増えていった結果です。

朝いちばんに AdMob のレポートを開いてフロア値(eCPM 下限値)を手でいじる時間が、じわじわ伸びておりました。ある朝、コーヒーが冷めるまでずっと同じ画面をスクロールしていて、これは作業の量ではなく手順が決まっていないせいだと気づきました。そこでひと月かけて、エージェントに任せられる作業と、自分が握り続けるべき判断を切り分けてみたのです。

「個人開発で AdMob メディエーションを 10 グループ以上抱えていて、調整の手作業が無視できない量になってきた」「エージェントに任せたいが、収益に直結するので不安」あたりで悩んでいる方に向けて、再現できる手順として書き残します。

なぜグループ数がここまで増えたのか

エージェントの話に入る前に、1 アプリ 50+ グループに到達した理由を整理しておきます。これを把握しないと、自動化の対象範囲が決まりません。

AdMob のメディエーションは、最近の運用ベストプラクティスで「ATT ON / OFF × 主要国 × フォーマット (INT/BNR/RWD/RWI/AOA)」の組み合わせでグループを分けるのが標準です。私の運用ですと、たとえば BW iOS の INT (インタースティシャル) は次のような割り方になっています。

  • BW-INT-iOS-JP-ATT-ON / OFF
  • BW-INT-iOS-TW-ATT-ON / OFF
  • BW-INT-iOS-US-ATT-ON / OFF
  • BW-INT-iOS-IT-ATT-ON / OFF
  • BW-INT-iOS-DE-ATT-ON / OFF
  • BW-INT-iOS-HK-ATT-ON / OFF
  • BW-INT-iOS-ROW-ATT-ON / OFF

7 地域 × ATT 2 値 = 14 グループ。これに BNR・RWD・RWI を加えると 1 プラットフォームで 30 以上、両 OS で 60 グループ前後になります。実勢 eCPM はグループごとに $1 から $34 まで散らばっていて、それぞれにフロア値の最適点があります。

ここで「フロア値」とは、Bidding/Waterfall を含む全ネットワークに対する eCPM の最低ラインのことです。フロア値を高くすると単価は上がりますがマッチ率(広告が表示される割合)が下がり、低くするとその逆になります。私の運用基準は 実勢 eCPM × 50〜60% を目安にする、フロア/eCPM 比が 65% を超えたら見直す、というものです。

任せていい作業 — エージェントに切り出した 4 工程

ひと月ほど試行錯誤して、エージェントに任せて支障がなかった作業は次の 4 つでした。

最初の一つはマッチ率モニタリングです。AdMob のレポート画面を 30 日期間で開いて、グループごとのインプレッション・マッチ率・推定収益を集計する作業になります。エージェントには次のような指示を出します。

AdMob のレポートで以下を実行してください:
1. 期間: 過去 30 日
2. ディメンション: アプリ + メディエーショングループ
3. 指標: 広告リクエスト、インプレッション、マッチ率、推定収益
4. フィルタ: matchrate < 80% のグループのみ抽出
5. 出力: グループ名 / 現在のフロア / 実勢 eCPM / フロア-eCPM 比 /
   広告リクエスト数 / 推奨アクション

エージェントは API もしくは CSV エクスポート経由でデータを取り、表に整形して返します。私はその表を眺めて「JP は維持、ROW は調整」の判断を入れるだけです。集計の手作業が 30 分から 3 分になりました。

二つ目はフロア-eCPM 比の検算です。単純な計算ですが、人間がやるとミスが入りやすい部分でもあります。

def evaluate_floor(group_name, current_floor, ecpm_30d, matchrate):
    """フロアと実勢 eCPM の関係を評価して、推奨アクションを返す。"""
    ratio = current_floor / ecpm_30d
    if matchrate < 0.80:
        if ratio > 0.65:
            return f"{group_name}: ratio={ratio:.2%} - 下げる候補(matchrate {matchrate:.0%})"
        else:
            return f"{group_name}: ratio={ratio:.2%} - 需要不足の可能性(フロア無関係)"
    if ratio > 0.65:
        return f"{group_name}: ratio={ratio:.2%} - 比率高めだが matchrate OK、維持"
    return f"{group_name}: 健全"
 
# 期待される出力:
# BW-INT-AND-JP: 比率高めだが matchrate OK、維持
# BW-INT-AND-DE: ratio=88.96% - 下げる候補(matchrate 56%)

この関数には後から見つけた穴が二つあります。あとの節でまとめて直しますので、いまはこの形のまま読み進めてください。

三つ目は運用記録の更新です。フロア値を変更したら、admob-mediation-unified.md のような運用台帳に「日付 / グループ ID / 変更前 → 後 / 理由」を追記します。これはエージェントに丸投げしております。私は変更内容を口頭で説明するだけで、エージェントが整形して台帳に追記してくれます。後から「なぜ 2026-05-17 に JP のフロアを $15 → $12 に下げたか」を思い出せる状態が、半年後の自分にとっての資産になります。

四つ目はフロア値の「半分ルール」適用です。AppLovin MAX を Waterfall に追加したときに、Unity Ads のフロア値の半分に AppLovin の手動 eCPM を設定する、という運用ルールになります。Unity が $8.50 なら AppLovin は $4.25、Unity が $5.00 なら $2.50。20 グループ分を手で計算するとミスが出ますので、エージェントに次のように頼みます。

以下の表の Unity フロア列を読み、半分ルールに従って AppLovinMax の
waterfall フロアを計算してください。出力は AdMob の編集画面に貼り付ける
形式(数値だけ)。BNR グループは Unity 値を無視して固定 $0.15 で出力。
 
| グループ ID | Unity フロア (waterfall) |
| BW-INT-AND-JP (8292611016) | $8.50 |
| BW-INT-AND-KO (5982272500) | $5.00 |
| ... |

出力はそのまま AdMob の編集画面に貼り付けます。10 グループ分が 1 分で終わる作業ですが、手で電卓を叩いていると 1 件は間違えるのです。

✦

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

この記事の続きを読む

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

この記事で得られること
✦広告リクエスト数が少ない地域のグループを、数字の揺れで触ってしまう前に、判定を保留にする基準を自分のコードへ入れられるようになる
✦フロア変更のあとに戻す条件を台帳へ先に書き、季節要因を自分の手柄と読み違えずに済むようになる
✦月次レビューを数時間から 30 分へ縮める前に、エージェントへ渡してよい作業と渡してはいけない判断を自分の運用で仕分けできるようになる
Stripe による安全な決済 · いつでもキャンセル可能
✦

この記事を購入する

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

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

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

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

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

関連記事

◈ Agents & Manager2026-05-12
AIに任せた、そして後悔した — 個人開発者が気づいたエージェント委任の境界線
Antigravity エージェントへの委任で後悔した実体験をもとに、エージェントが得意な3つの作業類型と、人間が持ち続けるべき意図の境界を整理しました。委任前の5分間設計や、実装意図を残す AGENTS.md の活用方法もあわせて紹介します。
◈ Agents & Manager2026-04-27
Antigravity を個人開発の「夜のもう1人」として迎え入れる運用モデル
Antigravity のエージェントを、個人開発者にとっての「夜のもう1人」として運用するための設計指針。タスクの渡し方・境界線の引き方・朝の3点確認をスクリプトにする方法まで、実際に運用して整えてきた手順を書き残します。
◈ Agents & Manager2026-10-16
エージェントに .zip を渡す前に、.git を除いて 29 MB を 15 MB にし、秘密情報の警告 28 件を見分けました
Antigravity アプリ v2.23.0 で .zip を添付できるようになりました。自分のリポジトリを実際に固めて .git の重さと秘密情報検査の誤検知を数え、除外・検査・マニフェストを一度に行う Python スクリプトの全文を残します。