無料でA/Bテスト:url-go × GA4で「分岐→計測→比較」する手順
url-goでURLをA/Bに分岐し、GA4でユーザー行動の差を比較します。 「配布URLは1つのまま」「UTMは自動で付与」「GA4の探索でそのまま集計」ができるので、初心者でも最短で回せます。
この手順でできること
- url-go側:配布URLのクリック数(Hits)と、A/B配分の実績を確認
- GA4側:A/B別に「アクティブユーザー / イベント数 / エンゲージメント時間 / セッションあたりイベント数」などを比較
- 配布チャネルは固定(SNS/広告/メール/QRなど) → クリック先だけ差し替えて検証できる
事前準備(ここだけ押さえればOK)
- 計測したいサイト(遷移先)にGA4が入っていること(GA4タグ/Googleタグが設置済み)
- 「Aページ」「Bページ」を用意(URLが2つあればOK。内容は小さな差で十分)
- GA4で比較する軸を決める(例:エンゲージメント、滞在、スクロール、クリックなど)
まずはコンバージョン無しでもOKです。 「滞在やイベントの多さ=興味関心の強さ」として暫定的にA/Bを比較できます。 コンバージョン(キーイベント)を置くのは、発展編で十分価値があります(後述)。
手順1:url-goでA/B(1対2)を作る
url-goの A/B から 「A/Bテスト(1対2)」 を開きます。 AとBのURL、配分(Weight)を入れて作成します。
UTMはこう考えると迷いません
url-goでは、A/B分岐の計測用にUTMを付けます(遷移先URLに追記されます)。 ここでのおすすめは、次の「役割分担」です。
utm_source:流入元の大分類(例:url-go)utm_medium:手段の大分類(例:abtest)utm_campaign:実験名(例:split)utm_content:A/Bの識別(例:test_a/test_b)
これでGA4側は「source=url-go AND medium=abtest AND campaign=split」で絞るだけで、A/Bが綺麗に出ます。
手順2:配布URLをコピーして、各チャネルに貼る
作成後に表示される Share URL(配布用) を使います。メール文面、バナー、SNS、QRなど、配布面はそのままにしてOKです。 また、確認URL でHits(クリック数)や配分の実績が確認できます。 編集URL(要トークン) は再表示できないので、安全な場所に保存してください。
手順3:url-goで「Hits」と配分を確認する
テストを回し始めたら、まずはurl-go側で「ちゃんと分岐しているか」「偏りがないか」を確認します。 サンプル数が小さい間は、50:50でもA/BのHitsが少しズレます(偶然のブレ)。焦らずデータを貯めましょう。
手順4:GA4でA/Bのユーザー行動を比較する(探索:自由形式)
次にGA4で、A/B別に「ユーザー行動」を比較します。おすすめは 探索 → 自由形式 です。 以下のディメンションと指標を置くと、最短で「差」が見えます。
GA4で使うディメンション(例)
- セッションの参照元(utm_source)
- セッションのメディア(utm_medium)
- セッションの手動キャンペーン名(utm_campaign)
- セッションの手動広告コンテンツ(utm_content) ← A/B(test_a / test_b)がここに入る
GA4で見る指標(まずはこの4つ)
- アクティブユーザー(人数の母数)
- イベント数(行動の総量)
- セッションあたりの平均エンゲージメント時間(深い関与のproxy)
- セッションあたりのイベント数(行動密度のproxy)
フィルタはこうすると迷いません
フィルタで セッションの参照元 = url-go、セッションのメディア = abtest(必要なら キャンペーン名 = split)を指定します。
これで「今回のA/Bテストだけ」を綺麗に抽出できます。
手順5:A/Bの勝ちを判断する(初心者向けの読み方)
コンバージョンが無い場合、まずは「行動の質・量」で仮説検証します。おすすめは次の見方です。
- アクティブユーザー:サンプル数が少ないとブレやすい(まずは母数を稼ぐ)
- 平均エンゲージメント時間:内容への関心が高いほど伸びやすい
- セッションあたりイベント数:スクロール/クリック等が増えるほど伸びやすい
- イベント数:母数が違うと比較しにくいので、上の2つ(時間・密度)とセットで見る
なお、A/Bの配分(Weight)を途中で変えることも可能ですが、管理が煩雑になりやすいので、基本は固定をおすすめします。 もし途中変更する場合は、url-goの「配分履歴(snapshots)」を残して、期間を分けて評価しましょう。
発展編:コンバージョン(キーイベント)で「本当の勝ち」を作る
次の企画として、コンバージョンを定義すると一気に強くなります。例としては次のような設計ができます。
- 中間コンバージョン:お問い合わせページ到達(例:
/contact/の page_view) - 最終コンバージョン:お問い合わせクリック(例:
clickイベント + ボタン要素の計測) - GA4の「探索:ファネル」や「経路」で、A/Bの差をさらに分解
まずは本ページの手順で「回せる状態」を作り、次に「キーイベント設定→ファネル評価」に拡張するのが最短ルートです。
よくある詰まりポイント(FAQ)
Q1. GA4に test_a / test_b が出ません
- まず確認:遷移先URLにUTMが付いているか(URL末尾に
utm_*があるか) - 次に確認:遷移先サイトにGA4が設置されているか(タグが動いているか)
- 最短の切り分け:GA4の「リアルタイム」や「DebugView」で、自分アクセスが見えるか確認
- それでも出ない場合:ブラウザの拡張(広告ブロック/トラッキング防止)を一時OFFでテスト
Q2. 反映が遅いです(今日の分が見えない)
- GA4は集計に遅延があります。まずは「リアルタイム」でイベントが入っているか確認してください。
- 探索レポートの数字が安定するまで、数時間〜最大24時間程度かかることがあります(特に少量データ)。
Q3. しきい値(Thresholding)で数字が(not set)になったり見えなくなります
- ユーザー数が少ない/特定条件のセグメントなどで、GA4側のプライバシー保護により表示が制限されることがあります。
- 回避策:①母数を増やす、②セグメント条件を緩める、③レポートの粒度を上げる(例:日別→期間合計)などを試してください。
Q4. 自分のアクセスを除外しているので、テストが見えません
- GA4の「内部トラフィック除外」や、ブラウザの追跡防止でデータが入らないことがあります。
- テスト期間中は除外を一時停止するか、除外しないプロファイル(別端末/別ブラウザ)でデータ投入するのが確実です。
- どうしても除外したい場合:GA4側で「フィルタ/比較」を使い、後から分析時に除外する運用が安全です。
Q5. 遷移先URLにすでにUTMが付いていて混ざります
- A/B作成画面の「遷移先URLに既存UTMがあっても上書きする」にチェックを入れると、テスト用UTMを優先できます。
- ただし運用上、UTMの設計が二重になると混乱しやすいので、テスト中は「url-go側で付与」に寄せるのがおすすめです。
ここに載っていない詰まりがあれば、問題のURL(個人情報を含まない範囲)と、GA4で見ている画面(ディメンション/指標/フィルタ)を添えて連絡ください。 切り分けポイントから最短で案内します。