0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ChatGPT から来た App Store の DL を数える:ASC の参照元アプリと、サイトで付ける ct=

0
Posted at

ChatGPT などの AI から App Store の DL がどれだけ来ているかは、2か所を組み合わせると数えられます。

  • ChatGPT のアプリから App Store へ直接来た人:App Store Connect(ASC)の入り口別で「参照元アプリ」に ChatGPT として出ます。何もしなくても見えます。
  • ブラウザの chatgpt.com から自分のサイトを経由した人:ASC には「参照元ウェブ」としか出ないので、サイト側で参照元を覚えておき、App Store へのリンクに ct=(キャンペーントークン)として付けます。ASC のキャンペーン別に数が出ます。

どちらも数が少ない行は Apple が隠すので、1日単位ではなく週で見るのが前提です。以下、実際に入れている仕組みと、6日分の結果です。

1. ASC の「参照元アプリ」を見る

ASC のアプリ分析で、DL(units)を入り口(source)別に週で出します。私のアプリでは参照元アプリの ChatGPT が、9/20〜10/3 で 55件、10/4〜12 で 52件、10/13〜19 で 100件でした。Claude・Gemini・Perplexity のアプリはこの時点では一度も出ていません。

注意点が1つあります。ASC のインストール数・セッション・アンインストールは、データ共有に同意した人(私の場合は約35%)の分だけです。入り口別の比較は units で行います。

2. サイト側で「最初に来た参照元」を覚える

サイトの全ページに小さなスクリプトを置いています。Cookie も localStorage も使わず、同じタブの間だけ sessionStorage に入れます。

var q = new URLSearchParams(location.search);
var refHost = document.referrer ? new URL(document.referrer).hostname.replace(/^www\./, '') : '';
var internal = /(^|\.)minulo\.app$/.test(refHost);
var tag = q.get('ref') || q.get('utm_source') || '';
// タブの中で最初に来たときの参照元だけを残す
if (!sessionStorage.getItem('m_src')) {
  sessionStorage.setItem('m_src', tag || (!internal && refHost) || 'direct');
}

?ref= があればそれ、なければ参照元のドメイン(chatgpt.com など)、どちらもなければ direct です。サイト内でページを移っても、最初の参照元が残ります。これを付けて、PostHog に「開いた」と「App Store を押した」の2つのイベントを送っています。

3. App Store のリンクに ct= を付ける

var ct = (slug(src) + '_' + page).slice(0, 40);
u.searchParams.set('pt', '<プロバイダ ID>');
u.searchParams.set('ct', ct);
u.searchParams.set('mt', '8');

chatgpt_en-top のような値になります。ct は40文字までなので切っています。これで ASC のキャンペーン別に「ページを見た・入れた」が参照元ごとに出ます。

4. 6日分の結果(10/20〜10/25、サイトの PostHog)

参照元 App Store を押した割合
chatgpt.com 69人中29人(42%)
google.com 22.5%
direct 8.5%

ChatGPT から来た人は、すでに「何をするアプリか」を聞いたうえで来るので、押す割合が Google の倍近くありました。人数は小さいので、傾向として見ています。

5. 数えきれないもの

  • どの記事が AI の答えに使われたかは、この仕組みでは分かりません。同じ質問を各 AI に定期的に投げて、名前や URL が出るかを別に記録しています。
  • アプリ内で「どこで知ったか」を聞く質問も置いていますが、半分くらいは無回答です。ASC の入り口別と両方で確かめています。

この計測を入れているアプリ

私が1人で作っている iPhone アプリ minulo です。Instagram のリールや YouTube ショートを隠すのは無料で、DM は残ります。できないこともあって、公式アプリの中身は変えられません(隠れるのは minulo の中で開いたときだけ)。公式アプリをブロックしている間はその通知が来ません。無料のブロックは1回2時間まで、Android 版はまだありません。

0
1
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
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?