A/Bテスト機能を使うと、コンテンツのA/Bテストを実施することができますが、アプリケーション側の操作とは別に埋め込み先のWebページやアプリケーションでアクセス分析情報を記録する処理を追加する必要があります。
このドキュメントでは、A/Bテスト実行中のコンテンツのアクセス情報を記録するための実装方法について説明します。
記録できるアクセス情報の種類
A/Bテストで記録できるアクセス情報の種類は以下です。
- インプレッション数
- 実際にコンテンツが読み込まれた回数を示します。
- コンバージョン数
- コンテンツを読んだユーザーが、そのコンテンツで期待されている行動をした回数を示します。
(※ 「期待されている行動」はコンテンツやサイトにより異なります。)
- コンテンツを読んだユーザーが、そのコンテンツで期待されている行動をした回数を示します。
- ユーザ数
- 実際にコンテンツを読んだユーザの数を示します。ブラウザのCookieを使い、アクセスしたユーザが同一であるかを判定します。
- セッション数
- 同一ユーザがコンテンツを閲覧し、離脱するまでの一連の流れをの回数を示します。ブラウザのCookieを使い、アクセスしたユーザが同一であるかを判定します。
CVR(コンバージョンレート)は、Spearly CMSが自動的に計算を行うため、実装の必要はありません。
アクセス情報の記録方法は、Spearly CMSから提供されている埋め込みタグを利用しているかどうかで実装方法が異なります。
埋め込みタグを利用している場合の実装方法
現在、埋め込みタグを使ってA/Bテスト機能を利用するためには、カスタム埋め込みを使う必要があります。シンプル埋め込みの場合はA/Bテストのアクセス情報は記録できませんので、カスタム埋め込みへの移行をご検討ください。カスタム埋め込みの詳細については、Spearly CMSでコンテンツタイプの埋め込み方法をご確認ください。
埋め込みタグを利用している場合、インプレッション、ユーザ、セッションの記録処理は自動的に行われます。そのため、コンバージョン記録の処理のみ追加する必要があります。
なお、パターンは完全にランダムに配信されますが、基本的に同じユーザには同じパターンが配信されます。例として、Aさんが初めてコンテンツが埋め込まれているページを開いた際にBパターンが表示された場合、基本的には常にBパターンが表示されることになります。
(この情報はブラウザーに記録されるので、ブラウザや端末を変更した場合は、パターンは固定されず、再びランダムに決定されます)
特定のパターンのコンテンツを確認したい場合は、埋め込み先ページURLの末尾に、?pattern_name=aまたは?pattern_name=bという文字列をつけてアクセスすると、パターンを指定して表示することが出来ます。
コンバージョンの記録
コンバージョンは、「商品ページへのリンクをクリックする」「フォームを送信する」といった、コンテンツを読むユーザに期待されている行動をした際に記録します。
この行動は、サイトやコンテンツによって異なる独自のものなので、どのタイミングでコンバージョンを記録するかはそれぞれで実装が必要です。
コンバージョンを埋め込みタグJSを用いて記録する際は、埋め込みタグJSが予め用意しているconversionメソッドを利用します。
以下に、ボタンをクリックした際に、コンバージョンを記録する場合の例を記載します。
コンテンツとボタンのHTML
<div>
<!-- コンテンツの埋め込み -->
<article cms-item cms-content-type="sample-post" cms-content="sample-post_template_content_4">
<h1>{%= sample-post_title %}</h1>
<div class="content-body">{%= sample-post_body %}</div>
</article>
<!-- クリックした時にコンバージョンを記録するボタン -->
<a class="conversion-target" href="#">商品を購入する</a>
</div>JavaScriptの実装
window.addEventListener('spearlyCmsAfterInit', (e) => {
// コンバージョンの対象となる要素を取得。
const targetElements = document.getElementsByClassName('conversion-target');
for( let i = 0 ; i < targetElements.length ; i ++ ) {
// 対象の要素に、clickイベントを設定。クリック時にコンバージョン記録を行う。
targetElements[i].addEventListener('click', window.spearly.analytics.conversion)
}
});これで、特定の要素をクリックした際にコンバージョンを記録できます。
サイトやコンテンツの目的、ユーザに期待する行動に合わせてconversionメソッドを呼び出し、コンバージョンを記録してください。
APIを使っている場合の実装方法
埋め込みライブラリを利用していない場合は、インプレッション、コンバージョンを記録するためのエンドポイントに直接リクエストを送る必要があります。
各エンドポイントの詳細については、こちらを参照ください。