1分で読了チュートリアル

スマートリンクでランディングページをA/Bテストする

スマート短縮リンクはJavaScriptのちらつきなしにサーバーサイドでトラフィックを分割できます。バリアントの構成、必要なサンプルサイズ。

Ana Kowalska
Marketing solutions engineering

ほとんどのA/Bテストプラットフォームは、最初の実験を実施する前から月額200〜2,000ドルの費用がかかります。ハイエンドではその費用に見合う価値があります - 多腕バンディット最適化、ヒートマップ、ライブDOMに対するページ内要素テストなどが含まれます。しかし、実際に人々がテストする内容の多くはシンプルです。2つのランディングページと1つの問い - どちらがよりコンバートするか。このユースケースでは、ツールを完全にスキップして、スマート短縮リンクをトラフィック分割器として使用できます。ルーティングはブラウザが読み込む前に、サーバーサイド・エッジで行われます。JavaScriptの注入もちらつきもありません。

この記事では、その仕組みとワークフロー全体を解説します。読み終えるころには、実行可能なプラン、サンプルサイズの見積もり、そしてこのアプローチが機能しなくなり本格的な専用ツールが必要になる場面を判断するための十分な知識が得られるでしょう。

まとめ

  • スマート短縮リンクは、サーバーサイドで重み付きランダム割り当てによって各訪問者をバリアントAまたはBにルーティングします - JavaScriptのちらつきも、サードパーティスクリプトも不要です。
  • 割り当てはクリックごとに行われ、固定されません。そのため、同じ訪問者が2回クリックして両方のバリアントを見る場合を想定してください。
  • データを解釈する価値が生まれる前に、バリアントごとに少なくとも1,000人の訪問者が必要です。具体的なベースラインレートと期待されるリフト値に合わせて、Evan Millerのサンプルサイズ計算ツール(2026-05-12参照)を使用してください。
  • このアプローチはページレベルの実験に適しています。要素レベルのテスト(ボタンの色、コピー、ページ内レイアウト)や多腕バンディット最適化には、専用のCROツールが必要です。

サーバーサイド分割がトレードオフに見合う理由

Google Optimizeは2023年9月に、サポートドキュメントに掲載した説明(2026-05-12参照)と共にサービス終了を迎えました。同社は実験機能をGoogle Analytics 4に統合し、サードパーティのCROプラットフォームと提携するとしました。自社の開発者向けドキュメントで説明されていたページフリッカー問題 - バリアントの切り替え前に元のページコンテンツが一瞬表示される問題 - は、クライアントサイドA/Bテストの既知の制限であり、市場リーダーでさえ完全には解決できませんでした。

クライアントサイドのツールはDOMのレンダリングを待つスニペットを注入し、その後スワップを行います。スワップは複雑さに応じて50〜300msかかります。ブラウザキャッシュが温まった高速接続では、訪問者がほとんど気づかないことがあります。しかし、モバイルでのコールドロードでは明らかに見えてしまいます。さらに悪いことに、広告ブロッカーやスクリプト過多の環境ではスニペットの実行が妨げられることがあり、それらの訪問者は元のページにルーティングされ、コントロールグループがスクリプトをブロックするトラフィックのサブセットで汚染されてしまいます。

短縮リンクはHTMLが送信される前にエッジでルーティングします。訪問者はブラウザで相手のバリアントのURLを見ることはありません。計測されるコンバージョン率はクリーンです - ブロックされたスクリプトによる汚染もなく、ちらつきの問題もありません。トレードオフは、ページ全体をテストすることです。つまり、ランディングページを再設計し、両方のURLを短縮リンクに向け、分割させるのです。

エッジでのスマートリンクの仕組みの詳細な解説(キャッシュ伝播のメカニクスと6つのルーティング次元を含む)については、そちらの記事で基礎アーキテクチャをより詳しく説明しています。簡単に言えば、ルーティングの決定はデータセンターからレスポンスのバイトが送出される前に、Elidoのエッジサービスで行われます。現在の本番環境は単一ホストで、マルチリージョンのエッジロケーションは計画中であり、稼働していません。

分割の仕組み

訪問者がスマート短縮リンクにアクセスすると、エッジは重み付きランダム選択を使ってバリアントに割り当てます。デフォルトの重みは50/50ですが、70/30、80/20、または3つ以上のバリアントを含む任意のn分割を設定できます。

割り当ては固定されません。エッジはクリックのたびに、重み付きランダムで、またはラウンドロビンのローテーションを設定している場合はバリアントを順に回して、バリアントを自分で選びます。午前9時にリンクをクリックした訪問者が午後7時に再びクリックすると、別のバリアントに振り分けられることがあります。想定しておいてください。両方のバリアントを見た訪問者はコンバージョンデータにノイズを加える汚染問題になり、Elidoは訪問者をバリアントに固定する機能をまだ持っていないからです。

ほとんどのランディングページテストでは、これは許容範囲内です。ほとんどの訪問者は1回しかクリックしません。製品に既知の複数日評価サイクルがある場合(例えばB2B SaaSトライアル)は、繰り返しクリックが起きやすく、汚染が大きくなります。バリアントごとのコンバージョン率は集計として十分に妥当ですが、両方を見たあとにコンバートした訪問者は、どちらか一方にしか計上されません。後述のクエリパラメータ形式なら、バリアントが訪問者の戻るURLに乗って移動するため、この問題を避けられます。

クリックイベントはバリアントタグが付いた状態で分析ストアに記録されます。バリアントごとのクリック分布と下流のコンバージョン率は、追加の設定なしで分析ダッシュボードに表示されます。コンバージョントラッキングガイドでは、現在あるコンバージョントラッキングを説明しています。StripeとShopifyの購入を、elido_link_idパラメータでリンクに結び付けるものです。ElidoはリダイレクトにクリックIDを付与しないため、フォーム送信などの他の成功指標は、ご自身の分析でバリアントページごと、またはクエリパラメータごとに確認してください。

分割フロー:ユーザーがショートリンクをクリックするとElidoエッジが50%をバリアントA、50%をバリアントBにルーティングし、クリックイベントにバリアントラベルが付与される

2つのバリアント形式

バリアントを構成する方法は2つあり、適切な選択はアナリティクスの設定によって異なります。

ページバリアント。 各バリアントは異なるページを指す個別のURLです。バリアントAはhttps://acme.example/landing-v1、バリアントBはhttps://acme.example/landing-v2です。短縮リンクは完全な宛先URLにルーティングします。アナリティクスツールは2つの別々のページを認識し、それらを直接比較できます。これはよりシンプルな形式です - 宛先ページへの変更は不要で、URLでページビューを追跡するアナリティクス設定であれば動作します。

クエリパラメータバリアント。 両方のバリアントは同じベースURLに解決され、?variant=Aまたは?variant=Bが追加されます。宛先ページはパラメータを読み取り、適切なバリアントをレンダリングします。これにより、ページエクスペリエンスを差別化しながら、アナリティクスで1つのURLを使用できます。宛先ページがそのパラメータを実際に処理する必要があります - レンダリング時のJavaScriptチェック、またはテンプレートのサーバーサイドブランチです。メリットは、マルチタッチアトリビューションがクリーンであることです。URLをブックマークして後で戻ってきた訪問者は、短縮リンクが再割り当てを行うことなくバリアントタグを保持します。

クエリパラメータ形式はサーバーサイドレンダリングとの相性が良いです。ランディングページがNext.jsルートの場合、ページコンポーネントでsearchParams.variantを読み取り、AまたはBバージョンを条件付きでレンダリングします。ページはGA4で引き続き1つのURLであり、バリアント次元はカスタムパラメータとして利用可能です。UTMアトリビューションレイヤーをこれに重ねる方法については、UTMトラッキングのエンドツーエンドガイドでテンプレートの構造化方法とバリアントがコンバージョン先まで確実に伝達される方法を解説しています。

サンプルサイズと統計的有意性の基礎

これは最もよくスキップされるステップであり、自分で実施したA/Bテストの多くが再現性のない結論を生む原因でもあります。

バリアントごとに必要な訪問者数は3つの入力値に依存します。ベースラインコンバージョン率、確実に検出したい最小リフト、そして許容できる信頼水準です。95%の信頼度で5%の絶対リフト(例えば10%のコンバージョン率から15%へ)を検出するテストには、バリアントごとに約760人の訪問者が必要です。同じ10%ベースラインから2%のリフトを検出しようとするテストには、バリアントごとに約3,800人が必要です。Evan Millerのサンプルサイズ計算ツール(2026-05-12参照)は入力した値でこれらの数値を計算してくれます - テストを開始する前に使用してください。早い段階で結果を見てからではありません。

このステップをスキップすると、2つの一般的なミスに陥ります。

覗き見と早期終了。 200人の訪問者後に結果を確認し、12%の差を見て勝者を宣言してテストを止める。問題は、200人の訪問者では、ほとんどのベースラインコンバージョン率において12%の差はノイズバンド内に十分収まってしまうことです。ポジティブな結果での早期終了は統計的に、有意な結果を偶然で見つけるまで探し続けることと同等です。テスト開始前に必要なサンプルサイズを設定し、それに到達するまで評価しないでください。

ノベルティ効果。 ランディングページを一度も見たことがないトラフィックは、新しいページに出会う再訪問者とは異なる反応をします。短縮リンクが有料広告キャンペーンに使われている場合、ほとんどのトラフィックはコールドであり、ノベルティ効果は最小限です。既存のメールリストに送る場合、オーディエンスの一部はすでに既存のランディングページを知っており、新しいバリアントを見ることで一時的なコンバージョンリフトが生じ、その後最初の週を過ぎると減衰します。CXLのコンバージョンテストにおける統計的有意性の分析(2026-05-12参照)では、ノベルティ効果とサンプルの安定性の問題をより詳しく扱っています - 主な推奨事項は、トラフィックパターンの少なくとも1つの完全な週次サイクルをカバーするのに十分な長さでテストを実施することです。

実際のテストの前に行う実用的なサニティチェック:まず短縮リンクでA/Aテストを実施してください。両方のバリアントをまったく同じページに向けるよう設定します。トラフィックと計測設定がクリーンであれば、2つのバリアントは統計的に区別できないコンバージョン率を示すはずです。A/Aテストで2〜3%以上の差が生じた場合、割り当てロジック、コンバージョントラッキング、またはその両方に何らかの問題があります。

サンプルサイズの目安:10%ベースラインで95%信頼度の場合、5%リフト検出に約760人/バリアント、2%リフトには3,800人/バリアントが必要。1,000人の最低ラインとA/Aチェックおよび覗き見禁止ルールも記載

セットアップのウォークスルー

分割短縮リンクの作成には約5分かかります。重要な部分はrules配列を正しく設定することです - これがエッジによるバリアント割り当てを制御します。

curl -X POST \
  https://api.elido.app/v1/links \
  -H "Authorization: Bearer $ELIDO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "domain":       "go.acme-demo.app",
    "slug":         "spring-lp-test",
    "destination":  "https://acme.example/landing-v1",
    "rules": [
      {
        "type":        "ab_split",
        "variants": [
          {
            "label":       "A",
            "destination": "https://acme.example/landing-v1",
            "weight":      50
          },
          {
            "label":       "B",
            "destination": "https://acme.example/landing-v2",
            "weight":      50
          }
        ]
      }
    ],
    "tags": ["ab-test", "spring-2026-lp"]
  }'

いくつかのフィールドについて注記します。トップレベルのdestinationはフォールバックです - 何らかの理由でrulesが一致しない場合(デプロイ中のエッジキャッシュミス、不正なリクエストなど)、トラフィックは元のランディングページにフォールスルーし、ドロップしません。tags配列は、複数のテストが同時に実行されているときにダッシュボードでリンクをフィルタリングできるようにします。

リンクが作成されたら、キャンペーン(メール送信、有料広告、ソーシャル投稿)に貼り付けて、そのままにしておきます。ダッシュボードのクリック分布パネルはバリアントごとの分割をほぼリアルタイムで表示します(取り込みは非同期のため、多少の遅延はあります)。最初の数百クリック後に、50/50の分割が2〜3ポイント以内に収まっているはずです。

国、デバイス、時間帯、リファラー条件を含む全次元と完全なルール構文については、スマートリンク機能ページと製品ドキュメントをご覧ください。このユースケースに最も関連するアトリビューションとキャンペーン統合パターンについては、マーケターのソリューションページをご覧ください。

結果の読み方

バリアントごとの結果は、リンク詳細ビューの分析ダッシュボードに表示されます。クリック数、クリック対コンバージョン率(コンバージョンイベントを設定している場合)、分割率はすべて、エクスポートなしで確認できます。

表示されるコンバージョン率は、各バリアントについて独立に計算した、クリック対コンバージョンの割合です。たとえばバリアントAが1,200クリックと96コンバージョンなら8.0%です。バリアントBが1,180クリックと115コンバージョンなら9.7%になります。差は1.7パーセントポイントで、相対リフトは21%です。

その差が本物かどうかは、サンプルサイズの計算で決まります。バリアントあたり1,000人の訪問者がいる場合、8%のベースラインから約2.5パーセントポイントの差があれば、信頼度95%で統計的に有意です。バリアントあたり1,200人なら、その閾値はわずかに下がります。1.7ポイントの差は、まだ結論とは呼べません。勝者を宣言する前に、計算ツールで数値を確認してください。

必要なサンプルサイズに達したら、勝者を宣言して行動してください。短縮リンクのルールを更新することで、敗者バリアントの宛先を勝者にリダイレクトします。テストデータを保持したい場合は、元のリンクを変更するのではなく、勝者ページ用に新しいリンクを作成してください。元のリンクの過去の分割データは分析ストアに残り、ダッシュボードで無期限に確認できます。

勝者を決めた後に、テストを走らせ続けてはいけません。負けているバリアントに触れさせる日が1日増えるごとに、実際のコンバージョンを失います。統計的有意性に達する意味は、ようやく行動に移せるだけの証拠が揃うことにあります。だから行動に移してください。

注意すべき一般的なミス

早い段階での覗き見。 上記で説明しましたが、最も一般的な失敗パターンであるため繰り返す価値があります。数百回の訪問後に結果を確認したい衝動は自然ですが、対処法はメカニカルです。ローンチ前に必要なサンプルサイズを書き留め、そこに達するタイミングのカレンダーリマインダーを設定し、それまで分析タブを閉じておいてください。

ノベルティ効果の無視。 新しいページは単に新しいというだけで短期的なリフトを得ます。テストウィンドウが3日間で、トラフィックに重要な再訪問者コンポーネントがある場合は、評価前に少なくとも1週間テストを実施してください。CXLの有意性分析(2026-05-12参照)では、7日未満のテストはほとんどの小売トラフィックパターンで信頼性がないと指摘しています。それは、短いウィンドウではノベルティ効果が消えないためです。

A/Aサニティチェックのスキップ。 このトラフィックソースとこのコンバージョントラッキング設定でA/Bテストを実施したことがない場合は、まず両方のバリアントが同じページを指す50/50分割を実施してください。報告されたコンバージョン率が互いに1〜2パーセントポイント以内であることを確認します。これにより、実際のテストデータをインフラに依存する前に計測の問題を排除できます。

トラフィックソースの混在。 短縮リンクが有料広告とオーガニックなソーシャル投稿の両方に同時に掲載されている場合、2つのトラフィックソースは異なるベースラインコンバージョン率とデバイス構成を持ちます。バリアントへの割り当ては全訪問者に対してランダムですが、ベースラインの偏りにより、バリアントAが偶然バリアントBよりも若干多くのモバイル有料トラフィックを受け取る可能性があり、その差を実際のトリートメント効果と区別するのが難しくなります。テストリンクは一度に1つのトラフィックソースに限定するか、それぞれが独立して分割するソースごとに別々のリンクを使用してください。

本格的なCROツールが必要な場合

短縮リンク分割はページレベルの実験に適しています。専用ツールが必要になる3つのケースを示します。

判断マトリクス:ページ全体のテストやクエリパラメータバリアントにはショートリンク分割で十分だが、ページ内要素テスト・多腕バンディット最適化・ヒートマップやセッションリプレイには専用CROツールが必要

多腕バンディット最適化。 従来のA/Bテストはトラフィック分割を固定し、最後に評価します。多腕バンディットアルゴリズムは証拠が蓄積されるにつれてより良いパフォーマンスのバリアントにより多くのトラフィックを動的に向けます - これは最後に統計的確実性を最大化するのではなく、テスト期間中の損失(敗者バリアントに失われたコンバージョン)を最小化したい場合に便利です。Elidoの分割は静的な重み付きです。バンディットバリアントが必要な場合は、OptimizelyやVWOなどのツールがそのために構築されています。

ページ内要素テスト。 ボタンの色、見出し、フォームレイアウト、またはヒーロー画像のテストには、2つの異なるURLにルーティングするのではなく、1つのページのDOMを変更する必要があります。これはJavaScriptの領域です - スニペットを注入してレンダリングされたページを変更できるツールが正しいアプローチです。短縮リンクの分割は、バリアントが異なるURLまたはページがすでに読み取る異なるクエリパラメータに存在する場合にのみ機能します。

ヒートマップとセッションリプレイ。 バリアントBがより良くコンバートする理由を理解したい場合(訪問者がどこをクリックするか、どこまでスクロールするか、どこで離脱するか)、セッションを計測するツールが必要です。そのデータはクリックレベルの分析からは得られません。Hotjar、Microsoft Clarity、Amplitudeのセッションリプレイ機能がこれに適したレイヤーです。短縮リンクテストの代替ではなく、並行して使用します。

その他すべて - 2つのページデザインの比較、新しい価格レイアウトのテスト、異なるファースト・ビュー・メッセージの評価 - については、ここで説明した短縮リンクのワークフローで十分です。既存のElidoプランを超える追加費用はなく、ちらつきやフリッカーの問題もなく、月額200ドルのエントリーフィーもなく、クリーンなデータを生成できます。

ローンチ前にサンプルサイズを設定してください。A/Aサニティチェックを実施してください。覗き見はしないでください。コミットした数値に達したときに勝者を宣言してください。

Elidoを試す

URLを貼り付けて短縮リンクを取得

登録不要。リンクは30日間有効。永久に保存するには登録してください。

登録不要。無料登録すると月 50 件のリンクを作成できます。

Elidoを試す

EUホスティングのURL短縮サービス。カスタムドメイン、詳細な分析、オープンAPI付き。無料プラン - クレジットカード不要。

タグ
a/b test landing pages
landing page split test
short link a/b test
landing page experiments
smart links
conversion testing

続きを読む