ほとんどのA/Bテストプラットフォームは、最初の実験を実施する前から月額200〜2,000ドルの費用がかかります。ハイエンドではその費用に見合う価値があります - 多腕バンディット最適化、ヒートマップ、ライブDOMに対するページ内要素テストなどが含まれます。しかし、実際に人々がテストする内容の多くはシンプルです。2つのランディングページと1つの問い - どちらがよりコンバートするか。このユースケースでは、ツールを完全にスキップして、スマートショートリンクをトラフィック分割器として使用できます。ルーティングはブラウザが読み込む前に、サーバーサイド・エッジで行われます。JavaScriptの注入もちらつきもありません。
この記事では、その仕組みとワークフロー全体を解説します。読み終えるころには、実行可能なプラン、サンプルサイズの見積もり、そしてこのアプローチが機能しなくなり本格的な専用ツールが必要になる場面を判断するための十分な知識が得られるでしょう。
まとめ#
- スマートショートリンクは、サーバーサイドで重み付きランダム割り当てによって各訪問者をバリアントAまたはBにルーティングします - JavaScriptのちらつきも、サードパーティスクリプトも不要です。
- 割り当てはIPアドレスとユーザーエージェントのハッシュにより、24時間固定されます。そのため、同じ訪問者がリンクを複数回クリックしても、同じバリアントが表示されます。
- データを解釈する価値が生まれる前に、バリアントごとに少なくとも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のエッジ POP(ワークスペースのリージョンに応じてEUリージョン、米国東部、またはアジア太平洋)で行われます。
分割の仕組み#
訪問者がスマートショートリンクにアクセスすると、エッジは重み付きランダム選択を使ってバリアントに割り当てます。デフォルトの重みは50/50ですが、70/30、80/20、または3つ以上のバリアントを含む任意のn分割を設定できます。
割り当ては24時間ウィンドウ内で決定論的です。エッジは訪問者のIPアドレスとユーザーエージェント文字列をハッシュし、その結果を割り当てキーとして使用します。午前9時にリンクをクリックした訪問者が午後7時に戻ってきても、同じバリアントが表示されます。これは重要な点です。なぜなら、両方のバリアントを見た訪問者が混在すると、コンバージョンデータのノイズが増加する汚染問題になるからです。
24時間後に割り当てはリセットされます。ほとんどのランディングページテストでは、これは許容範囲内です。ページレベルの実験の評価ウィンドウは、1回の訪問あたり1日を超えることはほとんどありません。もし製品に既知の複数日評価サイクルがある場合(例えばB2B SaaSトライアル)、24時間スティッキーウィンドウがコンバージョンイベントの発火タイミングと整合しているかどうかを検討してください。長いサイクルでは、バリアントごとのコンバージョン率は集計として正確です。懸念があるのは、単一訪問者のバリアント割り当てが評価の途中で切り替わり、両方に露出した状態で一方のバリアントでコンバートした場合のみです。
クリックイベントはバリアントタグが付いた状態で分析ストアに記録されます。バリアントごとのクリック分布と下流のコンバージョン率は、追加の設定なしで分析ダッシュボードに表示されます。フォーム送信や購入をサクセスメトリクスとして追跡している場合、特定のクリックIDにコンバージョンイベントを紐付ける方法については、コンバージョントラッキングガイドをご覧ください。
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%以上の差が生じた場合、割り当てロジック、コンバージョントラッキング、またはその両方に何らかの問題があります。
セットアップのウォークスルー#
分割ショートリンクの作成には約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
}
],
"sticky": true,
"sticky_ttl": 86400
}
],
"tags": ["ab-test", "spring-2026-lp"]
}'
いくつかのフィールドについて注記します。sticky: trueはIP+UAハッシュ割り当てを有効にし、sticky_ttl: 86400はウィンドウを秒単位で24時間に設定します。トップレベルのdestinationはフォールバックです - 何らかの理由でrulesが一致しない場合(デプロイ中のエッジキャッシュミス、不正なリクエストなど)、トラフィックは元のランディングページにフォールスルーし、ドロップしません。tags配列は、複数のテストが同時に実行されているときにダッシュボードでリンクをフィルタリングできるようにします。
リンクが作成されたら、キャンペーン(メール送信、有料広告、ソーシャル投稿)に貼り付けて、そのままにしておきます。ダッシュボードのクリック分布パネルはバリアントごとの分割をほぼリアルタイムで表示します(通常のトラフィック量では取り込み遅延は5秒未満です)。最初の数百クリック後に、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人いると、その閾値はわずかに下がります。勝者を宣言する前に計算ツールで数値を確認してください。
必要なサンプルサイズに達したら、勝者を宣言して行動してください。ショートリンクのルールを更新することで、敗者バリアントの宛先を勝者にリダイレクトします。テストデータを保持したい場合は、元のリンクを変更するのではなく、勝者ページ用に新しいリンクを作成してください。元のリンクの過去の分割データは分析ストアに残り、ダッシュボードで無期限に確認できます。
勝者を宣言した後は、テストを継続しないでください。敗者バリアントへの露出が延長されると、実際のコンバージョンが失われます。統計的有意性に達したことは、行動するのに十分な証拠があることを意味します - 行動しましょう。
注意すべき一般的なミス#
早い段階での覗き見。 上記で説明しましたが、最も一般的な失敗パターンであるため繰り返す価値があります。数百回の訪問後に結果を確認したい衝動は自然ですが、対処法はメカニカルです。ローンチ前に必要なサンプルサイズを書き留め、そこに達するタイミングのカレンダーリマインダーを設定し、それまで分析タブを閉じておいてください。
ノベルティ効果の無視。 新しいページは単に新しいというだけで短期的なリフトを得ます。テストウィンドウが3日間で、トラフィックに重要な再訪問者コンポーネントがある場合は、評価前に少なくとも1週間テストを実施してください。CXLの有意性分析(2026-05-12参照)では、7日未満のテストはほとんどの小売トラフィックパターンで信頼性がないと指摘しています。それは、短いウィンドウではノベルティ効果が消えないためです。
A/Aサニティチェックのスキップ。 このトラフィックソースとこのコンバージョントラッキング設定でA/Bテストを実施したことがない場合は、まず両方のバリアントが同じページを指す50/50分割を実施してください。報告されたコンバージョン率が互いに1〜2パーセントポイント以内であることを確認します。これにより、実際のテストデータをインフラに依存する前に計測の問題を排除できます。
トラフィックソースの混在。 ショートリンクが有料広告とオーガニックなソーシャル投稿の両方に同時に掲載されている場合、2つのトラフィックソースは異なるベースラインコンバージョン率とデバイス構成を持ちます。バリアントへの割り当ては全訪問者に対してランダムですが、ベースラインの偏りにより、バリアントAが偶然バリアントBよりも若干多くのモバイル有料トラフィックを受け取る可能性があり、その差を実際のトリートメント効果と区別するのが難しくなります。テストリンクは一度に1つのトラフィックソースに限定するか、それぞれが独立して分割するソースごとに別々のリンクを使用してください。
本格的なCROツールが必要な場合#
ショートリンク分割はページレベルの実験に適しています。専用ツールが必要になる3つのケースを示します。
多腕バンディット最適化。 従来のA/Bテストはトラフィック分割を固定し、最後に評価します。多腕バンディットアルゴリズムは証拠が蓄積されるにつれてより良いパフォーマンスのバリアントにより多くのトラフィックを動的に向けます - これは最後に統計的確実性を最大化するのではなく、テスト期間中の損失(敗者バリアントに失われたコンバージョン)を最小化したい場合に便利です。Elidoの分割は静的な重み付きです。バンディットバリアントが必要な場合は、OptimizelyやVWOなどのツールがそのために構築されています。
ページ内要素テスト。 ボタンの色、見出し、フォームレイアウト、またはヒーロー画像のテストには、2つの異なるURLにルーティングするのではなく、1つのページのDOMを変更する必要があります。これはJavaScriptの領域です - スニペットを注入してレンダリングされたページを変更できるツールが正しいアプローチです。ショートリンクの分割は、バリアントが異なるURLまたはページがすでに読み取る異なるクエリパラメータに存在する場合にのみ機能します。
ヒートマップとセッションリプレイ。 バリアントBがより良くコンバートする理由を理解したい場合(訪問者がどこをクリックするか、どこまでスクロールするか、どこで離脱するか)、セッションを計測するツールが必要です。そのデータはクリックレベルの分析からは得られません。Hotjar、Microsoft Clarity、Amplitudeのセッションリプレイ機能がこれに適したレイヤーです。ショートリンクテストの代替ではなく、並行して使用します。
その他すべて - 2つのページデザインの比較、新しい価格レイアウトのテスト、異なるファースト・ビュー・メッセージの評価 - については、ここで説明したショートリンクのワークフローで十分です。既存のElidoプランを超える追加費用はなく、ちらつきやフリッカーの問題もなく、月額200ドルのエントリーフィーもなく、クリーンなデータを生成できます。
ローンチ前にサンプルサイズを設定してください。A/Aサニティチェックを実施してください。覗き見はしないでください。コミットした数値に達したときに勝者を宣言してください。
Elidoを試す
URLを貼り付けて短縮リンクを取得
登録不要。リンクは30日間有効。永久に保存するには登録してください。
Free、登録不要 · 1日あたり2件