37
37

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

AppIndexingのGoogleクローラについて

Posted at

ある日見つけた不思議なアクセスログ

アプリの運用において、アクティブでないユーザーというのは悩みの種でして日々アクセスログなど眺めつつ改善につなげています。そうした調査の中で、それほど数は多くないのですが、アプリをインストールしてすぐに利用を停止するユーザーの集団を発見しました。調査してみたところ、Androidアプリ向けに作っていたAPIを叩く AdsBot-Google-Mobile-Apps というUser-Agentのアクセスのみで構成されていたため、これはなんぞやと調べた次第です。

AppIndexingとGoogle Crawler

結論として、このアクセスはAppIndexingを有効にしたAndroidアプリに対してGoogleのBotがクロールした結果発生するものだとわかりました。
AppIndexingとは、公式ページから引用させてもらうと、

App Indexing を使うと、Google 検索であなたのアプリがヒットしやすくなります。 アプリにインデックスを付けると、モバイル端末ユーザーがアプリに関連するコンテンツを検索したとき、Android アプリのインストール ボタンが検索結果に表示されます。 そのため、アプリのインストール数の増加につながります。

という機能で、Webページ側にlink要素などでアプリ側のディープリンクを記載し、アプリ側でディープリンクに対応する挙動を用意しておくと、Google検索の結果にアプリのインストール導線が置かれ、Google検索からシームレスにアプリ内のコンテンツにたどり着くものです。
このAppIndexingを実現するにあたって当然Google側はクローリングしており、アクセスログから察するに、AppIndexingを担当するクローラは下記の用に振る舞うようです。

  1. 通常通りWebページをクロールする
  2. クロールした結果、AppIndexingの設定を見つけたら、AdsBot-Google-Mobile-Apps のクローラが起動。Androidのエミュレータをコンテナ上で動かすような仕組みだと推察。
  3. 2.のBotは、アプリのパッケージをダウンロードし、1度だけ起動、AppIndexingのレギュレーションを満たしているか確認する。
  4. 問題なければAppIndexing対応ページとしてインデックスする。

上記の結果、クロールのたびにエミュレータがアプリをダウンロード=>起動まで実施、完了後アンインストールする or コンテナごと破棄する、ようなアクセスが観測されます。

我々はどう考えるべきか

ベースのアプリのインストール数によっては、このBotによるアクセスログが意思決定を曲げうる数にもなるのではないかなと思った次第です。
アクセスログに乗っかってくるユーザーにこうしたBotが含まれてしまうとそれらを「一日で死ぬユーザー」としてカウントしてしまうため、施策がよかった、悪かったの判断を誤りかねないのではないかと。
Webページの運用においてはGoogleAnalyticsなどBotのアクセスをよしなに扱ってくれますが、これからはNativeアプリもBotのアクセスを気にする時代なのかもしれません。

参考

37
37
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
37
37

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?