概要:このスクリプトは2020年12月17日をもって非推奨となり、OneLink Smart Scriptに置き換えられました。このバージョンは引き続き動作しますが、今後の更新や変更は行われません。このスクリプトは、モバイルWebサイトのボタンに設定するURLを生成し、訪問者をアプリのダウンロード先へ誘導します。生成されるURLは、インストールのアトリビューションとディープリンクにも対応しています。
ランディングページは、デジタルマーケティングで広く活用されています。初回訪問でコンバージョンに至らなかった場合でも、見込み顧客の情報を取得し、リマーケティングに活用できます。
ただし、モバイルユーザーの獲得にランディングページを活用する場合には、メリットとデメリットがあります。
メリット:
- 最終的にインストールに至った見込み顧客は、アプリへの関心がより高いと考えられます。
- 金融サービスなど、内容が複雑でコンバージョンまでに詳しい説明が必要なサービスでは、ランディングページで十分に説明できます。
デメリット:
- コンバージョンまでの経路が長くなるため、最終的にコンバージョンに至る見込み顧客の数が減ります。
- アトリビューションの技術的な難易度が上がります。
ランディングページにおけるモバイルアトリビューションの課題
- ランディングページを経由する経路で正確なアトリビューションデータを取得するには、メディアソースごとに異なる方法で対応する必要があります。
- ランディングページに独自のアトリビューションリンクがある場合、ラストクリックアトリビューションモデルによって、本来の流入元に正しく成果が紐づかなくなる可能性があります。
- ランディングページに独自のアトリビューションリンクがない場合、Webサイトへの直接訪問はオーガニックとして記録されます。
- ランディングページに、デスクトップからの訪問者がモバイルアプリのユーザーになったことを記録する仕組みがなければ、デスクトップからの訪問者はオーガニックとして記録されます。
解決方法
これらの課題を解決するには、ランディングページにJavaScriptによる処理を実装する必要があります。実装に利用できるサンプルスクリプトを用意しています。要件に合わせてスクリプトを調整してください。
場合によっては、キャンペーン側でも調整が必要です。
以下では、各メディアソースで想定されるケースと、必要な対応を説明します。
ランディングページの利用ケース
ランディングページへ見込み顧客を誘導するすべてのメディアソースについて、以下の実装手順に従ってください。
Meta ads|クロスプラットフォームのアトリビューション
説明:
Meta adsはSRNであり、外部のアトリビューションリンクを使用しません。
アプリの初回起動時に、AppsFlyerはMeta adsに対して、そのユーザーが過去28日以内にFacebookアプリで広告主の広告に接触したかどうかを照会します。接触していた場合、Meta adsが自らの成果として申告します。
Meta adsはクロスプラットフォームのアトリビューションにも対応しているため、ユーザーがどのプラットフォームで、どの種類のキャンペーンに接触した場合でも、モバイル向けかどうかにかかわらず、自らの成果として申告できます。
対応の要点:
デバイスIDを取得できる見込み顧客がFacebookアプリからランディングページに移動した場合、その成果はMeta adsに正しく紐づきます。これは、ランディングページで新たなクリックが記録されるかどうかにかかわりません。
ただし、2021年のiOS 14ユーザーで想定されているように、ユーザーがデバイスIDを共有しないことを選択すると、Meta adsのクロスプラットフォームのアトリビューションが機能しなくなる可能性があります。
デバイスIDの共有が任意になった場合は、Meta adsでも他のSRN向けの方法を使用してください。
- デバイスIDを共有する新規ユーザーは、Meta adsに正しく紐づきます。
- デバイスIDを共有しない新規ユーザーは、「Facebook_LP」に紐づきます。
手順:
- Meta adsのアカウントで、モバイルアトリビューションを有効にした[トラフィック]または[コンバージョン]キャンペーンを作成し、見込み顧客をランディングページへ誘導します。
- ランディングページのAndroid用ダウンロードボタンには、Google Playへの直接リンクを設定します。
- ランディングページのiOS用ダウンロードボタンには、iTunesへの直接リンク、またはデバイスIDを含まないアトリビューションリンクを設定します。
スクリプトの動作
ランディングページのスクリプトは、リンクを変更しません。スクリプトは、ユーザーがFacebookアプリから訪問したかどうかを検出します。 Facebookアプリからの訪問を検出した場合は、何も処理しません。ランディングページに設定されているアプリストアへの直接リンクを、そのまま使用します。これにより、CTRに影響する可能性のある追加のクリックが記録されるのを防ぎます。
Facebookアプリから訪問したユーザーに対する処理の詳細は、スクリプト内のisFacebook()メソッドを確認してください。
Google広告|GCLIDとオフラインコンバージョンのアップロード
説明:
Google広告キャンペーンの通常のインストールアトリビューションでは、広告をクリックした見込み顧客をアプリのストアページURLへリダイレクトする必要があります。
そのため、Google広告からランディングページへ誘導する場合は、モバイルアプリのインストールと、モバイル向けではないGoogle広告キャンペーンの元のクリックを紐づける仕組みが必要です。
対応の要点:
Google広告への対応は、2つの部分で構成されます。
前半では、Googleからランディングページへ移動し、そこからアプリをインストールしたモバイルユーザーの成果をAppsFlyer上で紐づけます。 GoogleからのクリックURLにタグを付け、ランディングページで識別し、そのURLのデータを使ってOneLinkを動的に生成します。
後半では、Googleのオフラインコンバージョンのアップロード機能を使って、これらのモバイルアプリのインストールをGoogle広告に通知します。
注意
GCLIDを使用するこの方法は、Googleが公式にサポートまたは推奨しているものではありません。
GoogleがGCLIDパラメータを廃止した場合は、その変更に対応するようスクリプトを更新します。
記事や添付スクリプトの更新通知を受け取れるよう、記事上部の[フォロー]ボタンをクリックして、この記事をフォローすることをおすすめします。
手順:
パート1|AppsFlyer上でGoogle広告に成果を紐づける
http://www.yoursite.com/yourlandingpage?gclid={USER_GCLID}
ランディングページの読み込み時に、次の処理を行います。
- JavaScriptのgenerateUrl関数を実行します。
- この関数(後述)はGCLIDパラメータを探し、その値をaf_sub1パラメータに含めた長い形式のOneLink URLを生成します(af_sub1~af_sub5のいずれかのサブスクライバーパラメータを使用できます)。
- ランディングページのダウンロードボタンには、生成されたOneLink URLを使用します。
OneLink URLの例:https://yourapp.onelink.me/abcd?pid=google_lp&c={CAMPAIGN_NAME}&af_sub1={USER_PARSED_GCLID} - 新規モバイルユーザーは、メディアソースgoogle_lpと、任意で指定するCAMPAIGN_NAMEキャンペーンに紐づきます。
- メディアソースにポストバックは送信されません。
ヒント
GCLIDと同様の方法で、ユーザーが検索したキーワードもAppsFlyerのローデータで確認できます。
- キーワードを記録するには、Google広告からランディングページへ誘導する最終ページURLに、keywordのValueTrackパラメータを含める必要があります。
URLの例:http://www.yoursite.com/yourlandingpage?gclid={USER_GCLID}&keyword={USER_KEYWORD} - JavaScript関数(後述)は、keywordパラメータを探します。
- その値を、生成するOneLink URLのaf_keywordsパラメータに追加します。
OneLink URLの例:https://yourapp.onelink.me/abcd?pid=google_lp&c={CAMPAIGN_NAME}&af_sub1={USER_PARSED_GCLID}&af_keywords={USER_PARSED_KEYWORD}
以下のJavaScript関数には、keywordパラメータを解析するコードも含まれています。
スクリプトの動作
Google広告のURLには、gclidパラメータが含まれます。スクリプトは、ランディングページのURLからこのパラメータを探します。見つかった場合は、Google広告からの訪問であることを反映したOneLinkを生成します。次に、生成したOneLinkをランディングページのダウンロードボタンのリンク先に設定します。
Google広告からの訪問を検出し、OneLinkを生成する処理の詳細は、スクリプト内のgclidValueを確認してください。
他のSRN|パラメータの追加
説明:
SnapchatやTwitterなどの他のSRNは、Meta adsのようなクロスプラットフォームのアトリビューションに対応していないため、モバイルユーザーの成果を紐づけるには追加の対応が必要です。
他のSRNのキャンペーンでは、ユーザーをランディングページへ誘導し、その後モバイルアプリのユーザーになったかどうかにかかわらず、見込み顧客のクリックに基づいて課金されます。
対応の要点:
Meta adsとGoogle広告以外のSRNでキャンペーンのランディングページURLを設定する際は、元のSRNを示すパートナーIDパラメータをURLに追加します。
ランディングページでJavaScript(後述)を実行し、そのパラメータを解析して、パートナーIDの値を含むOneLink URLを生成します。モバイルユーザーがそのOneLinkをクリックしてインストールすると、指定したメディアソースに成果が紐づきます。
手順:
SRNのアカウントで、次の設定を行います。
- モバイル向けではないキャンペーンを作成します。
- ランディングページURLを設定する際は、URL(AppsFlyerのアトリビューションリンクではありません)に「パートナーID+ランディングページ」を示すパラメータを追加します。形式は「&af_pid=srn_lp」です。以下の例を参照してください。
ランディングページの読み込み時に、次の処理を行います。
- JavaScriptのgenerateUrl関数を実行します。
- この関数はaf_pidパラメータを探し、その値をpidパラメータに含めたOneLink URLを生成します。
- ランディングページのダウンロードボタンには、生成されたOneLink URLを使用します。
- 新規モバイルユーザーは、独自に設定した「パートナーID+ランディングページ」のメディアソースに紐づきます。
- メディアソースにポストバックは送信されません。
スクリプトには、実際のSRN名の使用を防ぐロジックが含まれています。スクリプト内のvar SRNsを確認してください。 SRN名のリストと、pidValueがそのいずれかに一致するかどうかを確認する条件があります。スクリプトのテストが完了したら、このロジックを削除してください。
注意
ユーザーをランディングページへ誘導する場合は、ランディングページのURLに以下のパラメータを含めることをおすすめします。
- Twitter:「&af_pid=twitter_lp」を使用します。
- Snapchat:「&af_pid=snapchat_lp」を使用します。
- Doubleclick:「&af_pid=doubleclick_lp」を使用します。
- Meta adsの投稿(無料):「&af_pid=fbpost_lp」を使用します。
- Oath(旧Yahoo Gemini):「&af_pid=oath_lp」を使用します。
スクリプトの動作
スクリプトは、ランディングページURLのaf_pidパラメータを検出すると、SRNまたはその他の独自のネットワークからの訪問であると判断します。その情報に基づいてOneLinkを生成し、ランディングページのダウンロードボタンのリンク先に設定します。
処理の詳細は、スクリプト内のpidValueを確認してください。
アトリビューションリンク|af_rによるリダイレクト
説明:
SRN以外のメディアソースでは、アトリビューションリンクを使用します。数千社の連携済みパートナーに加え、成果を計測したいオウンドメディアにも使用できます。
AppsFlyerのアトリビューションリンクを使用すれば、ランディングページ経由の成果も簡単に紐づけられます。対応方法はMeta adsの場合と似ています。
対応の要点:
アトリビューションリンクで見込み顧客をランディングページにリダイレクトすることで、その後モバイルアプリがインストールされた場合の成果も正しく紐づけられます。
あとは、新たなラストクリックによって、本来の流入元への紐づけを妨げないようにします。
手順:
- メディアソース用のアトリビューションリンクを作成します。
- アトリビューションリンクに、ランディングページへ誘導するためのランディングページパラメータを追加します。
- アトリビューションリンク内の各リダイレクトパラメータ(af_r、af_ios_url、af_android_url)に指定したランディングページURLに、
&af_redirect=trueを追加します。
例:https://yourapp.onelink.me/abcd?pid=email&c={CAMPAIGN_NAME}&af_r=http://www.yoursite.com/yourlandingpage?af_redirect=true - 任意:確率論的モデリングの代わりにIDマッチングで成果を紐づけるには、アトリビューションリンクにデバイスID(GAID/IDFA)を追加します。
- ランディングページのAndroid用ダウンロードボタンには、Google Playへの直接リンクを設定します。
- ランディングページのiOS用ダウンロードボタンには、iTunesへの直接リンクを設定します。
注意
スクリプトとHTMLのサンプルページでは、AndroidとiOSの両方に対応するダウンロードボタンを1つだけ設置することもできます。実装方法は、スクリプト内のコメントを確認してください。
スクリプトの動作
スクリプトは、ランディングページURLからaf_redirectパラメータを探します。見つかった場合は、ランディングページのダウンロードボタンを変更しません。 af_redirectパラメータは、ユーザーがクリック後にランディングページに到達したことを示すためです。そのため、追加のアトリビューションリンクは必要ありません。
アトリビューションリンクをクリックしてランディングページに到達したユーザーに対する処理の詳細は、スクリプト内のisAFLink()メソッドを確認してください。
UTMパラメータ付きのリンク|OneLinkの動的生成
説明
流入元によっては、UTMパラメータ付きのリンクでユーザーをランディングページへ誘導している場合があります。
対応の要点:
元のURLがAppsFlyerのアトリビューションリンクではない場合、スクリプトはリンク内のutm_sourceとutm_campaignパラメータを探します。見つかった場合は、それぞれの値をメディアソース名(pid)とキャンペーン名(c)に設定したOneLink URLを生成します。
AppsFlyerのアトリビューションリンクにUTMパラメータも含まれている場合は、UTMパラメータではなくAppsFlyerのパラメータが使用されます。
手順:
メディアソース側で、次の設定を行います。
- リンクにutm_sourceが含まれていることを確認します。
- utm_campaignパラメータは任意ですが、設定することを強くおすすめします。
ランディングページの読み込み時に、次の処理を行います。
- JavaScriptのgenerateUrl関数を実行します。
- この関数はutm_sourceとutm_campaignパラメータを探し、その値を含むOneLink URLを生成します。
- ランディングページのダウンロードボタンには、生成されたOneLink URLを使用します。
- 新規モバイルユーザーは、utm_sourceの値をメディアソースとして紐づけられます。
- メディアソースにポストバックは送信されません。
スクリプトの動作
スクリプトは、ランディングページURLからUTMパラメータを探します。見つかった場合は、OneLinkのパラメータに変換します。これにより、最終的なアトリビューションまでキャンペーン情報を引き継げます。
モバイルのオーガニック訪問者|pid=websiteを指定したOneLink
説明
モバイルのオーガニック訪問者とは、流入元が不明で、モバイルWebサイトへ直接訪問した見込み顧客を指します。専用のランディングページを訪問することはあまりありませんが、広告主のWebサイトを経由したモバイルアプリのインストールの大半を占める場合があります。
対応の要点:
Webサイトにモバイルのオーガニック流入が多い場合は、自社サイトからの流入についてもアトリビューションデータを記録することを強くおすすめします。
手順:
モバイルのオーガニック訪問者の成果を紐づけるには、Webサイトに[ダウンロード]または[インストール]ボタンを設置し、リンク先にOneLinkのアトリビューションリンクを設定します。 OneLinkはデバイスの種類を判別し、それに応じたアプリストアへ見込み顧客をリダイレクトします。
OneLink URLの設定・作成方法は、こちらを参照してください。
ヒント
これらの訪問者すべてを自社Webサイトに紐づけるには、アトリビューションリンクに「&pid=website」を追加します。
Webサイト内でアトリビューションリンクを設定したダウンロード/インストールボタンがある各ページについて、リンクに「&c={PAGE NAME}」を追加します。これにより、Webサイト内でコンバージョン率が最も高いページと最も低いページを特定できます。
スクリプトの動作
他のどの条件にも該当しない場合、スクリプトはそのユーザーを、キャンペーン経由ではないオーガニックユーザーと判断します。その情報を反映したOneLinkを生成し、ランディングページのダウンロードボタンのリンク先に設定します。
デスクトップからの訪問者|電話番号・メールアドレスの入力フォーム
説明
ここまでの方法はすべて、ユーザーがモバイルデバイスでキャンペーンに接触し、ランディングページを訪問することを前提としています。
では、デスクトップからの訪問者にはどう対応すればよいでしょうか。
デスクトップユーザーは、ランディングページやWebサイトを訪問した後、その経路とは別にモバイルデバイスでアプリストアを開き、アプリをインストールする場合があります。モバイルデバイスでの事前の接触がないため、これらのユーザーの成果は紐づけられず、「オーガニック」として扱われます。
対応の要点:
この課題には、デスクトップユーザーに限って、ダウンロード用リンクをSMSで受け取るためのフォームをランディングページに設置する方法が有効です。フォームへの入力後、OneLink URLを含むSMSまたはメールをモバイルデバイスに送信します。
手順:
- 訪問者がデスクトップユーザーであることを判別します。
- ユーザーが電話番号を入力したら、アプリへのリンクとしてOneLinkの短縮URLをSMSで送信します。メールアドレスを入力してもらい、アプリのダウンロード案内をメールで送信することもできます。
- 送信時点ではユーザーのモバイルデバイスのプラットフォームが不明なため、OneLinkの使用が重要です。 OneLinkのデバイス判別機能とリダイレクト機能が、適切な誘導先へ振り分けます。
- この流入元を識別できるよう、OneLink URLに「&pid=desktop_website」を追加します。
- 「&c={PAGE NAME}」を追加すると、デスクトップユーザーのコンバージョン率が最も高いページと最も低いページを特定できます。
スクリプトの動作
スクリプトは、ユーザーのデバイスまたはプラットフォームを検出します。デスクトップの場合はWebフォームのURLを返し、ダウンロードボタンのリンク先に設定します。ユーザーがダウンロードボタンをクリックするとWebフォームに移動し、情報を入力することで、アプリのダウンロードリンクを含むSMSまたはメールを受け取れます。
Webフォームは自社で作成し、そのURLをスクリプトに設定してください。詳細は、スクリプト内のisMobileDevice()を確認してください。
ランディングページ用JavaScript
以下は、ランディングページを経由するケースでメディアソースとキャンペーンに成果を紐づける、一連の処理を実装したJavaScriptのコードです。広告セットや広告IDなどの追加データを取得する場合は、スクリプトを適宜調整してください。
添付のランディングページのサンプルもダウンロードして利用できます。
コードの後に、ランディングページの要件に合わせて調整する手順を記載しています。
スクリプト
スクリプトの実装前に、以下を確認してください。
- このスクリプトは、あくまでサンプルとして提供するものです。ランディングページ経由の一般的なアトリビューションの流れに対応しています。要件に合わせてスクリプトを調整してください。
- スクリプトは、ランディングページURLからメディアソース、キャンペーン、キーワードなどの特定のパラメータを探します。サイトIDや広告セットなどのパラメータを追加する場合は、スクリプトを適宜変更する必要があります。
//Returns the value of a parameter existing in the page's URL or ' ' if not exists.
function getParameterFromURL(name, url) {
if (!url) url = window.location.href;
name = name.replace(/[\[\]]/g, '\\$&');
var regex = new RegExp('[?&]' + name + '(=([^&#]*)|&|#|$)'),
results = regex.exec(url);
if (!results) return null;
if (!results[2]) return '';
return decodeURIComponent(results[2].replace(/\+/g, ' '));
}
function isMobileDevice() {
return (typeof window.orientation !== "undefined") || (navigator.userAgent.indexOf('IEMobile') !== -1);
}
function getMobileOperatingSystem() {
var userAgent = navigator.userAgent || navigator.vendor || window.opera;
if (userAgent) {
if (/android/i.test(userAgent)) {
return "Android";
}
// iOS detection from: http://stackoverflow.com/a/9039885/177710
if (/iPad|iPhone|iPod/.test(userAgent) && !window.MSStream) {
return "iOS";
}
}
return "unknown";
}
function isAFLink() {
return getParameterFromURL('af_redirect');
}
// Note - when device ID sharing becomes optional stop calling this method (or always return false)
function isFacebook() {
if (document.referrer && document.referrer != "") {
return document.referrer.toLowerCase().includes('facebook');
} else {
return false;
}
}
// generateUrl returns the URL to use behind the iOS and Android "Download" buttons on a landing page, based on the source of the page visitor.
// By default these buttons should direct to the apps' pages on iTunes and Google Play.
// If these links should be kept with no change, generateUrl returns ' '.
// Otherwise, generateUrl returns the URL to be used under BOTH buttons (a single app download button could also be used in this case).
// Parameters: isDebug - if true, alerts are issued for each of the cases, otherwise not.
function generateUrl(isDebug) {
var oneLinkURL = 'https://yourapp.onelink.me/abcd'; // **** Replace with your own basic OneLink URL ****
var webFormURL = 'https://yoursite.com/webform.html'; // **** Replace with your own web form URL for getting the user's email or SMS ****
var finalURL = "";
var partnerIDParam = '?pid=';
var campaignValue;
if (getParameterFromURL('c')) {
campaignValue = getParameterFromURL('c');
} else if (getParameterFromURL('utm_campaign')) {
campaignValue = getParameterFromURL('utm_campaign');
} else if (document.getElementsByTagName('title')[0]) {
campaignValue = document.getElementsByTagName('title')[0].innerText;
} else {
campaignValue = 'unknown';
}
var campaignParam = '&c=';
var gclidParam = '&af_sub1=';
var gclidValue = getParameterFromURL('gclid');
var kwParam = '&af_keywords=';
var pidValue;
var kwValue = getParameterFromURL('keyword');
if (getParameterFromURL('af_pid')) {
pidValue = getParameterFromURL('af_pid');
} else if (getParameterFromURL('utm_source')) {
pidValue = getParameterFromURL('utm_source');
}
// Prevent the use of real SRN names. Remove this part after you are done testing the script.
var SRNs = [
'twitter_int',
'facebook_int',
'snapchat_int',
'doubleclick_int',
'yahoogemini_int',
'yahoojapan_int',
];
if (SRNs.includes(pidValue)) {
alert("DO NOT USE NAMES OF SRNS IN af_pid or utm_source - use the names listed in Other SRNs: Add Parameter section in the landing page article\nhttps://support.appsflyer.com/hc/en-us/articles/360000677217#other-srns-add-parameter");
return;
}
// Desktop user
if (!isMobileDevice()) {
return webFormURL;
}
// User was redirected using af_r parameter on an AppsFlyer attribution link
if (isAFLink()) {
if (isDebug) {
alert("This user comes from AppsFlyer by redirection and is ready to be attributed. \nKeep direct app store links.");
}
return; // in this case, the original store links in the install buttons stay the same
/*
If you want one install button in the landing page that serves both iOS and Android, uncomment the code below
The code identifies the operating system and returns the relevant direct link to Google Play or iTunes
if (getMobileOperatingSystem() === 'Android') {
return 'direct link to Google Play';
}
if (getMobileOperatingSystem() === 'iOS') {
return 'direct link to iTunes';
}
*/
}
// Google Ads
if (gclidValue) {
partnerIDParam += 'google_lp';
campaignParam += campaignValue;
gclidParam += gclidValue
if (!kwValue) {
finalURL = oneLinkURL + partnerIDParam + campaignParam + gclidParam;
if (isDebug) {
alert("This user comes from Google AdWords\n " + finalURL);
}
return finalURL;
} else { // Google Ads with KW
kwParam += kwValue;
finalURL = oneLinkURL + partnerIDParam + campaignParam + gclidParam + kwParam;
if (isDebug) {
alert("This user comes from Google AdWords - there is a keyword associated with the ad\n " + finalURL);
}
return finalURL;
}
// Other SRNs and custom networks
} else if (pidValue) {
campaignParam += campaignValue;
partnerIDParam += pidValue;
finalURL = oneLinkURL + partnerIDParam + campaignParam;
if (isDebug) {
alert("This user comes the SRN or custom network " + pidValue + "\n" + finalURL);
}
return finalURL;
} else if (isFacebook()) {
if (isDebug) {
alert("This user comes from a paid Facebook ad - don't do anything. \nKeep direct app store links.");
}
return ' ';
} else { // organic mobile user
campaignParam += campaignValue;
partnerIDParam += 'website'; //**** Replace value if you wish organic users to be attributed to another media source than 'website' ****
finalURL = oneLinkURL + partnerIDParam + campaignParam;
if (isDebug) {
alert("This user comes from an unknown mobile source.\n The user would be attributed to media source 'website' and to the campaign " + campaignParam + "\n" + finalURL);
}
return finalURL;
}
}
ランディングページのHTMLサンプル
<html>
<head>
<title>Landing Page</title>
</head>
<body>
<h1>Landing Page</h1>
<!-- By default, the install buttons should have direct links to the stores -->
<div>
<a id="andrd_link" href="https://play.google.com/store/apps/details?id=com.appsflyer.sampleapp"><img src="/images/andrd.png"alt=""></a>
</div>
<div>
<a id="ios_link" href="https://itunes.apple.com/us/app/id3********"><img src="/images/ios.png" alt=""></a>
</div>
<!-- If you want one button to serve both Android and iOS, use the code below instead
<a id="store_link" href=""><img src="download.png" alt=""></a>
-->
<script type="text/javascript" src="/landing-page-test.js"></script>
<script type="text/javascript">
window.onload = function () {
var url = generateUrl(true);
// onelink is generated
if (url) {
document.getElementById('andrd_link').setAttribute('href', url);
document.getElementById('ios_link').setAttribute('href', url);
}
//otherwise, if onelink is not generated it means that the user is redirected
// and the store links in the buttons stay the same
/* for the one button solution for both Android and iOS, use the code below instead
document.getElementById('store_link').setAttribute('href', url);
*/
};
</script>
</body>
</html>
ヒント
JavaScriptのスニペットは、Googleタグマネージャーを使って実装できます。 Googleタグマネージャーを使うと、ランディングページ用JavaScriptを実行するタイミングやページを簡単に管理できます。
手順
- ユーザーが直接訪問する可能性があり、モバイルアプリの[ダウンロード]ボタンを設置しているWebサイト内の各ページで、読み込み時にgenerateUrlスクリプトを実行します。
重要
[ダウンロード]ボタンには、デフォルトでiTunesとGoogle Playのアプリページへの直接リンクを設定してください。これらのリンクを変更しない場合(AppsFlyerのアトリビューションリンクやMeta adsからの訪問など)、generateUrlは' 'を返します。それ以外の場合は、両方のダウンロードボタンで使用するURLを返します(この場合は、OneLinkを使い、両アプリに対応する[ダウンロード]ボタンを1つだけ設置することもできます)。
-
oneLinkURLパラメータの値を、自社の基本となるOneLink URLに置き換えます。プレースホルダーの
https://yourapp.onelink.me/abcdと同じ形式にしてください。
Meta adsの有料広告を除くすべてのSRNと、モバイルのオーガニック訪問者の成果を紐づけるために必須です。 -
webFormURLパラメータの値を、自社のWebフォームへのリンクに置き換えます。 WebフォームではユーザーのメールアドレスまたはSMSの送信先を取得し、アプリをダウンロードするためのOneLink URLを含むメッセージをモバイルデバイスに送信できるようにします。
デスクトップからの訪問者の成果を紐づけるために必須です。 - モバイルのオーガニックユーザーをwebsite以外のメディアソースに紐づけたい場合は、partnerIDParamパラメータの値を置き換えます。
- ランディングページURLで別のキャンペーン名(
&c={CAMPAIGN_NAME})を指定していない場合、デフォルトでは、ユーザーが[ダウンロード]ボタンをクリックしたWebページに成果が紐づきます。この設定を変更するには、campaignParamパラメータの値を置き換えます。
Meta adsの有料広告を除くすべてのケースで任意の設定です。
結果の確認
他のメディアソースと同様に、ランディングページの成果は、アプリのダッシュボード、ローデータ、またはAppsFlyer APIで確認できます。
モバイルマーケティングの経路が常にランディングページを経由する場合、各メディアソースは以下のユーザーを表します。
| 流入元 | 説明 |
|---|---|
|
organic |
ランディングページを経由していない、またはランディングページで接触がなかったユーザー。または、ランディングページで接触したものの、アプリ起動前にアトリビューションのルックバック期間を過ぎたなどの理由で成果が紐づかなかったユーザー。 |
|
website |
ランディングページやWebサイトを訪問し、その後インストールしたモバイルのオーガニックユーザー。 |
| Meta ads | Meta adsの有料広告から流入したユーザー。 |
| fbpost_lp | 拡散されたMeta adsの無料投稿から流入したユーザー。 |
|
google_lp |
Google広告から流入したユーザー。 |
| [SRN]_lp | 他のSRNから流入したユーザー。具体的には、次のSRNが該当します。 Twitter(twitter_lp)、Snapchat(snapchat_lp)、Doubleclick(doubleclick_lp)、Oath(oath_lp)。 |
| 連携済みパートナーのID | AppsFlyerのアトリビューションリンクを使用する、連携済みパートナーの広告から流入したユーザー。例:inmobi_int、tapjoy_int |
|
desktop |
Webフォームに情報を入力した後、モバイルデバイスに届いたSMSまたはメールのリンクをクリックし、インストールを完了したデスクトップユーザー。 |
|
その他の流入元 |
AppsFlyerのアトリビューションリンクを使用するオウンドメディアから流入したユーザー。例:email、sms、blog_postなど |
ランディングページ向けのOneLinkソリューション
OneLink™は、デバイスの判別とリダイレクト、またはディープリンクに使用する、AppsFlyer独自のアトリビューションリンクです。
ソーシャルアプリ向けランディングページを利用するには、広告主側で基本となるOneLink URLを用意する必要があります。 ソーシャルメディアアプリ内の広告をクリックしたユーザーは、AppsFlyerが生成するランディングページへリダイレクトされます。そのページから、ディープリンクでアプリを開くか、アプリのインストールへ進むことができます。
AppsFlyerは、ソーシャルメディアアプリ向けにさまざまなランディングページのテンプレートを提供しています。テンプレート内の要素の配置は固定されていますが、背景画像や背景色、タイトル、テキスト、画像、ボタン、タグなど、各要素の内容はカスタマイズできます。
アプリにOneLinkをまだ実装していない場合は、次の手順に従ってください。
- OneLinkテンプレートを設定します。
- そのテンプレートを基にOneLink URLを作成します。
- スクリプト内のhttps://yourapp.onelink.me/abcdを、自社のOneLink URLに置き換えます。