AdMobをUnityアプリに組み込んだあと、アプリの所有者と広告を販売できる事業者を結び付けるために、開発者サイトへ app-ads.txt を公開します。作業の中心はUnityのコード変更ではなく、ストアに登録した開発者サイトのURL、サイトのルートに置くテキストファイル、AdMobが発行するパブリッシャーIDを正しくつなぐことです。AdMob公式ガイド
先に用語を整理
「開発者サイト」と「ルートURL」は同じものではありません。ストアにはユーザー向けのサイトURLを登録し、AdMobはそのURLのホスト名(ドメイン)を手掛かりに、ルートの app-ads.txt を探します。以下は example.com を使った基本例です。www.・m. の扱いやサブドメインの探索には例外があるため、該当する構成は公式のクロール先仕様で確認します。
| 名前 | 何を指すか | どこで使うか |
|---|---|---|
| 開発者サイトURL | Google PlayやApp Storeの掲載情報に登録する、開発者のウェブサイトURL。例:https://example.com/game |
アプリと開発者サイトの関係をAdMobに示す手掛かり |
| ルートURL/サイトのルート | ドメイン直下の場所。例:https://example.com/。ファイルの確認先は https://example.com/app-ads.txt |
app-ads.txt を置き、外から取得できるようにする場所 |
| パブリッシャーID | AdMobアカウントを識別するID。pub- で始まる |
app-ads.txt 内のGoogleの販売者行に記載する |
| AdMobアプリID | AdMobに登録した個々のアプリを識別するID。通常 ca-app-pub-…~… の形 |
Unityプラグイン/SDKのアプリ設定に使う。app-ads.txt には書かない |
| 広告ユニットID | バナー、リワードなど、AdMobで作成した広告枠のID。通常 ca-app-pub-…/… の形 |
Unityアプリの広告リクエストに使う。app-ads.txt には書かない |
パブリッシャーIDはアカウント単位、AdMobアプリIDはアプリ単位、広告ユニットIDは広告枠単位です。アプリIDや広告ユニットIDをファイルへ貼っても、パブリッシャーIDの代わりにはなりません。AdMob:パブリッシャーIDの確認方法/AdMob:アプリIDと広告ユニットIDの確認方法
Unity側のアプリIDや広告ユニットIDの設定がまだの場合は、AdMobの導入記事を先に確認してください。
設定の流れ
1. ストア掲載情報に開発者サイトを登録する
AdMobがアプリとサイトの関係を確認できるよう、アプリのストア掲載情報に開発者サイトを登録します。
- Google Play:Play Consoleのストア掲載情報の連絡先にある「開発者ウェブサイト」へURLを登録します。AdMobの案内に沿った画面では、左メニューの「ユーザーの獲得」→「ストアでの表示」→「ストアの設定」→「ストア掲載情報の連絡先」にあります。公開中のアプリページで、登録したリンクが表示されることも確認します。
- Apple App Store:App Store Connectのアプリ情報にある「マーケティングURL」に開発者サイトを登録します。App Storeの公開ページに「デベロッパWebサイト」として表示されることを確認します。
AdMobにサイトURLを入力するだけではなく、ストアのアプリ掲載情報からもそのサイトへたどれる状態にします。Google PlayでサイトURLを追加・変更した場合、AdMobが変更を検出するまで最大24時間かかることがあります。AdMob:ストア掲載情報への開発者サイト登録
2. AdMobから自分用のコードをコピーする
AdMobの画面で対象アプリの app-ads.txt 設定案内を開き、表示された個別のコードスニペットをそのままコピーします。画面の案内は、AdMobの「アプリ」→「すべてのアプリを表示」→「app-ads.txt」→「app-ads.txt の設定方法」から確認できます。パブリッシャーIDはAdMobの「設定」→「アカウント」でも確認できます。AdMob:設定用スニペットの取得
設置・AdMob側の検証は未実施です。以下は形式を示すだけの例で、pub-XXXXXXXXXXXXXXXX は実在のIDではありません。この文字列を公開ファイルに残さず、自分のAdMob画面で表示されるコードへ置き換えてください。
google.com, pub-XXXXXXXXXXXXXXXX, DIRECT, f08c47fec0942fa0
AdMobの公式開発者資料には、google.com、自分のパブリッシャーID、DIRECT、f08c47fec0942fa0 を含むスニペット例があります。ただし、公開する際は記事中の例を手入力するのではなく、必ず自分のAdMob画面に表示された個別スニペットを使います。Google for Developers:AdMob app-ads.txt の設定例
3. プレーンテキストの app-ads.txt を作る
メモ帳などのプレーンテキストエディターでファイルを作成し、名前を正確に app-ads.txt とします。手順2でコピーした行を貼り付けます。他の広告ネットワークも使っている場合、そのネットワークが案内する販売者行を追加します。行の内容やIDを推測して書き足さず、各ネットワークが発行した情報を使ってください。ファイル形式はIAB Tech Labの仕様に従います。AdMob公式ガイド
Windowsで保存する場合は、拡張子も表示して確認します。app-ads.txt.txt という名前になっていないか、保存後に見直してください。Wordなどの文書形式や、HTMLの本文をそのまま保存したファイルにはしません。
4. 開発者サイトのルートへ公開する
ファイルは、AdMobが探索するルートURLで取得できるようにします。たとえばストアの開発者サイトURLが https://example.com/game でも、確認先は通常 https://example.com/app-ads.txt です。/game/ や /uploads/ の中ではありません。AdMobはサイトURLに含まれるページ階層ではなく、ホスト名から探索先を組み立てます。www.・m. は探索先から除外され、サブドメインには探索階層と親ドメインへのフォールバックの規則があります。ルートURLから別の場所へ転送(リダイレクト)する構成も可能です。AdMob:クロール先URLとリダイレクト
サイトの公開方式ごとの違い
| 公開方式 | ファイルの置き場所 | 確認すること |
|---|---|---|
| 独自ドメインのレンタルサーバー | サーバーの公開ルート。public_html などの名前が使われることがあります |
サービスごとに公開フォルダー名は異なります。https://自分のドメイン/app-ads.txt で取得できるか確認 |
| CMS・サイト作成サービス | 管理画面の「ルートファイル」「ads.txt」機能、またはサービスが指定する場所 | 画像・メディアのアップロード機能しかない場合、アップロードURLが /uploads/… になり、AdMobが探す場所とずれることがあります。ルートへの設置方法を提供会社に確認 |
| 静的サイト・Firebase Hosting | デプロイ対象として設定した公開ルート | Firebase Hostingでは公開ルートのフォルダーを指定します。そのフォルダーの直下へ置けば、サイトのルートURLに公開されます。Firebase Hosting公式ガイド |
| リポジトリ型のホスティング | 公開元のフォルダーとURL構成による | サイトのURLが https://user.example-host.com/project/ のようにプロジェクト階層を含む場合でも、AdMobは通常 https://user.example-host.com/app-ads.txt を探します。プロジェクト階層内のファイルだけでは足りないことがあります。独自ドメインやルートへの転送も含め、実際のURL構成を確認します。AdMobのクロール先仕様 |
ルートにファイルを置けないCMSでは、まず提供会社にルート設置の方法を確認します。AdMobは、適切なサイトがない場合のホスティング手段としてFirebase Hostingも案内しています。別のホストを使う場合は、ストアの開発者サイトURLに対応する探索先から、直接または適切な転送でファイルを取得できることを確認してください。AdMob:ルートに設置できない場合
5. ブラウザーとAdMobで確認する
公開後、ブラウザーで https://自分のドメイン/app-ads.txt を開き、AdMobのスニペットがプレーンテキストで表示されることを確認します。トップページが表示できるだけでは確認になりません。次にAdMobの app-ads.txt ページやアプリの検証画面で、ファイルの検出・検証状況を確認します。アプリの検証が求められる画面では、ファイルが検出された後に「アプリを確認」から「更新を確認」を実行します。AdMob:アプリの検証手順
公開前チェックリスト
ストア公開に向けて広告の同意取得も準備する場合は、UMPの同意取得を実装する方法も確認してください。
- ストア掲載情報の開発者サイトURLが正しく、公開ページにもリンクが表示される
- AdMobの個別スニペットを使い、
pub-XXXXXXXXXXXXXXXXの例示文字列を残していない - ファイル名が
app-ads.txtで、開発者サイトのルートから取得できる - ブラウザーで本文が表示され、サーバーがHTTP
200 OKを返す - HTTPとHTTPSの両方でファイルを取得できるか、どちらからアクセスしても正しいファイルへ転送される
-
robots.txtがクロールを拒否していない。Googleの案内ではGoogle-adstxtに対してクロールを許可し、転送先ホストのrobots.txtも確認する - 行に余分な文字・カンマ・全角スペースがなく、パブリッシャーIDがAdMobアカウントと一致する
GoogleのクローラーはHTTPとHTTPSの両方を確認し、HTTPエラー(404など)や robots.txt による拒否、形式の誤りがあるとファイルを無視することがあります。ファイルが表示されていても、応答ステータスが404なら有効とは扱われません。詳細はAdMobのクロール確認ガイドを参照してください。
反映が遅い・見つからないとき
| 状態 | 確認するポイント |
|---|---|
| ブラウザーで404、403、またはHTMLのエラーページが出る | ファイル名、公開ルート、公開操作を確認。HTTP応答が 200 OK か確認 |
| ブラウザーでは見えるのにAdMobが見つけない | ストアに登録したURLのホスト名とファイルのホスト名が合っているか確認。サブディレクトリに置いていないか、www あり・なしの転送が機能するか確認 |
| 時間が経ってもクロールされない | robots.txt の Google-adstxt、Mediapartners-Google、Googlebot のルールを確認。転送先が別ホストなら、そちらの robots.txt も確認 |
| ファイルは検出されたがIDが一致しない | AdMob画面の個別スニペットと公開内容を一字ずつ比較。別のAdMobアカウントのIDや広告ユニットIDを入れていないか確認 |
| ストアのURL変更が反映されない | Google PlayのURL変更検出に最大24時間かかる場合があります。ファイル変更もAdMobへの反映に数日かかることがあります |
AdMobの案内では、ストアの開発者サイトURLの変更検出に最大24時間、app-ads.txt の変更反映には数日かかる場合があります。すぐに検証済みにならなくても、まずURL・公開内容・HTTP応答・クロール許可を確認し、反映を待ってからAdMobの検証画面で再確認します。URL変更の検出時間/ファイルの反映時間とクロール条件
app-ads.txt の検証は、広告配信や収益額を保証するものではありません。AdMobの公式案内でも、ファイルの検証後にアプリの準備状況レビューが行われ、広告を十分に配信するにはその審査など別の条件も関わります。AdMob:アプリ検証と準備状況レビュー
app-ads.txtの設定確認後もテストバナーが表示されない場合は、テスト広告の表示トラブルでIDや読み込みログを確認してください。
