ログオフ
開発2026-08-01

AdMob の app-ads.txt 検証が通らない——ファイルの中身より先に疑う2箇所

app-ads.txt をルートに置いて中身も正しいのに、AdMob が「アプリを確認できませんでした」のまま変わらない。原因はファイルではなく、Google が辿る起点であるストアの「デベロッパ Web サイト」欄が空なこと。しかも iOS ではその欄を公開中の版に後から入れられず、API で書こうとすると 409 で弾かれる。

app-ads.txt をドメインのルートに置き、中身も正しいのに、AdMob の検証がいつまでも通らない。ファイルを何度も直したくなるが、たいていファイルは無実だ。

事象

AdMob の管理画面が、アプリに対して次のいずれかを出したまま変わらない。

  • 「アプリを確認できませんでした」
  • 「app-ads.txt が設定されている可能性がありますが、情報が一致しません」

一方でファイル側は実測で問題がない。

  • https://example.com/app-ads.txt が HTTP 200 を返す
  • ドメインのルート直下に置いてある
  • 中身の記述形式も正しい

24 時間どころか数週間待っても状態が変わらない。

原因1:Google が辿る起点が存在しない

app-ads.txt はドメイン単位の仕組みで、Google はまず「そのアプリの開発者サイトはどこか」をアプリのストア掲載情報から読む。iOS の場合、これは App Store Connect のマーケティング URL(API 上の marketingUrl)であり、ストアページ下部に「デベロッパ Web サイト」として表示されるリンクだ。

ここが空だと、Google 側には辿るべき起点が存在しない。ファイルがいくら正しく置かれていても、誰も見に来ないので永久に検証されない。

紛らわしいのはサポート URL では代用できないこと。同じドメインをサポート URL に入れていても検証は通らなかった。読まれているのはマーケティング URL の方だ。

確認方法は単純で、App Store のアプリページを一番下までスクロールして「デベロッパ Web サイト」のリンクが出ているかを見る。出ていなければ、その時点で検証は絶対に通らない。

原因2:pub ID の書式が管理画面の表記と違う

もう一つ、ファイル側で唯一ありがちなミスがこれだ。app-ads.txt に書く発行者 ID は、管理画面に表示される ca-pub- ではなく pub- 形式で書く。

❌ google.com, ca-pub-XXXXXXXXXXXXXXXX, DIRECT, f08c47fec0942fa0
✅ google.com, pub-XXXXXXXXXXXXXXXX, DIRECT, f08c47fec0942fa0

管理画面からコピーするとそのまま ca-pub- が付いてくるので踏みやすい。ads.txt でも同じ形式なので、Web サイト側で一度やらかしていると再発しやすい。

本題:そのマーケティング URL は、公開中の版に後から入れられない

ここからが本番だ。「じゃあマーケティング URL を入れれば終わりだろう」と管理画面を探しても、公開中のアプリでは編集できる場所が見つからない。

App Store Connect API で直接書きに行くと、こう返る。

409 CONFLICT
Attribute 'marketingUrl' cannot be edited at this time

マーケティング URL は、プロモーション用テキストのような「いつでも編集できる」プロパティのグループに入っていない。次のバージョンを作って提出しない限り、この欄は埋められない

つまり、設定を直せば済む話だと思って管理画面を探し続けても、出口はそこにない。次の版に乗せるまで検証は通らない、というのが答えになる。

解決策

次のバージョンの掲載情報にマーケティング URL を入れる。編集できるのは提出前の版だけなので、API なら該当バージョンのローカライズに marketingUrl を書き、GUI なら次の版の「App 情報」から入れる。

審査待ちの版に、後から入れに行かない

審査待ち(WAITING_FOR_REVIEW)の版が既にあると、そこへ差し込みたくなる。やめておいた方がいい。メタデータを編集すると審査キューから外れることがあり、その代わりに得られるのは検証が数週間早く通ることだけだ。未検証のままでも広告配信自体は動くので、釣り合わない。

自分の場合は、審査中の版は触らず次の版に回した。急いでも数週間の差にしかならないので、これで困っていない。

入ったら 24 時間待つ

新しい版が公開されてストアページに「デベロッパ Web サイト」が出てから、AdMob のクロールを待つ。ドメインは App Store の表記と完全に一致している必要がある(www の有無も含む)。

補足

  • 未検証の状態は放置されやすい。広告は普通に配信されるので、収益画面を見ていても異常に気づかない。設定した覚えが無いなら一度見に行く価値がある
  • ルート直下にファイルを置けないホスティングなら、静的ホスティングを別途立てて、そのドメインをマーケティング URL にする手がある
  • 順番としては、「ファイルが正しいか」より先に「相手がそのファイルに辿り着けるか」を見る方が速い。今回はファイル側を一度も直さずに終わった

関連記事

開発 一覧へ