Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
コネヒトマルシェ20221209.pdf
Search
otukutun
December 09, 2022
Technology
0
790
コネヒトマルシェ20221209.pdf
otukutun
December 09, 2022
Tweet
Share
More Decks by otukutun
See All by otukutun
年月日の入力どうしよう
otukutun
2
9.3k
Other Decks in Technology
See All in Technology
プロダクト成長を支える開発基盤とスケールに伴う課題
yuu26
4
1.4k
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
3k
OWASP Top 10:2025 リリースと 少しの日本語化にまつわる裏話
okdt
PRO
3
820
超初心者からでも大丈夫!オープンソース半導体の楽しみ方〜今こそ!オレオレチップをつくろう〜
keropiyo
0
110
Webhook best practices for rock solid and resilient deployments
glaforge
2
300
30万人の同時アクセスに耐えたい!新サービスの盤石なリリースを支える負荷試験 / SRE Kaigi 2026
genda
4
1.3k
【Ubie】AIを活用した広告アセット「爆速」生成事例 | AI_Ops_Community_Vol.2
yoshiki_0316
1
110
OpenShiftでllm-dを動かそう!
jpishikawa
0
130
Frontier Agents (Kiro autonomous agent / AWS Security Agent / AWS DevOps Agent) の紹介
msysh
3
180
GitHub Issue Templates + Coding Agentで簡単みんなでIaC/Easy IaC for Everyone with GitHub Issue Templates + Coding Agent
aeonpeople
1
250
コンテナセキュリティの最新事情 ~ 2026年版 ~
kyohmizu
2
160
今日から始めるAmazon Bedrock AgentCore
har1101
4
420
Featured
See All Featured
The Curse of the Amulet
leimatthew05
1
8.7k
My Coaching Mixtape
mlcsv
0
48
30 Presentation Tips
portentint
PRO
1
220
Art, The Web, and Tiny UX
lynnandtonic
304
21k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
The SEO Collaboration Effect
kristinabergwall1
0
350
Building AI with AI
inesmontani
PRO
1
700
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
380
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
140
Unsuck your backbone
ammeep
671
58k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Transcript
Google Optimizeのリダイレクトテストはいいぞ コネヒト株式会社 @otukutun
自己紹介 - おつくつん(@otukutun) - サーバーサイドエンジニア - Ruby on RailsとiOSの世界で育ちました -
システムデザインを考えるのがすき「データ指向アプリケーショ ンデザイン」は途中で止まってます - クラフトビールが好きで、BeerHuntというiOSアプリをひっそり運営
今日お伝えしたいこと - サーバーサイドの振る舞いを伴うABテストをちょっと楽にしている お話
Google Optimizeとは - Google Analyticsと連携が可能なABテスティングツール - Google Analyticsで設定したコンバージョンを使える - 統計の詳細な知識がなくても運用可能
- ビジュアルエディタでパターン設定できる - さまざまな方法(エクスペリエンス)でテストできる(後で掘り下 げます)
検証結果がわかりやすい Google Analyticsのコンバージョン 勝利パターン
簡単にパターン設定できる ビジュアルエディタでパターン編集
エクスペリエンス① - A/B テスト - 同じウェブページの複数のパターンをテスト - パターン振り分けはGoogle Optimizeが行うため実装はなし Google
Optimizeヘルプページより引用
エクスペリエンス② - リダイレクト テスト - 別々のウェブページの比較テストができます - パターン振り分けはGoogle Optimizeが行うため実装はなし Google
Optimizeヘルプページより引用
エクスペリエンス③ - サーバーサイド テスト - サーバー側の振る舞いなどを比較テスト - パターン振り分けは手動、実装が必要 - システムで独自のパターンを作成してテスト
- コンテンツの配信 - テスト対象の判定 - パターンの割り当て - ユーザーごとの配信パターンの固定 - 各パターンでユーザーが発生させたヒット(例: ページ ビュー ヒット)の Google アナリティクスへの送信 Google Optimize開発者ガイド より引用
エクスペリエンス③ - サーバーサイド テスト - 配信するパターンは手動、実行の工数はある程度かかる - システムで独自のパターンを作成してテスト - コンテンツの配信
- テスト対象の判定 - パターンの割り当て - ユーザーごとの配信パターンの固定 - 各パターンでユーザーが発生させたヒット(例: ページ ビュー ヒット)の Google アナリティクスへの送信 パターンの割り当てなどのパターン以外の実装も必要
ちょっと楽にサーバー側の変更をABテストをしたい - サーバーサイド テストは使わずにリダイレクトテストをつかう - パターン振り分けはGoogle Optimizeに任せられる - クエリパラメーターでパターン毎の制御する
None
サンプルコード
サンプルコード クエリパラメーターをみてSessionで保持するだけのシンプルな実装
そうすると - 振り分けロジックに関与せず、パターン毎の実装に集中できる - 勝利パターンが確定したあとにGoogle Optimize経由で勝利パターン に寄せられる
エクスペリエンス③ - サーバーサイド テスト - 配信するパターンは手動、実行の工数はある程度かかる - システムで独自のパターンを作成してテスト - コンテンツの配信
- テスト対象の判定 - パターンの割り当て - ユーザーごとの配信パターンの固定 - 各パターンでユーザーが発生させたヒット(例: ページ ビュー ヒット)の Google アナリティクスへの送信 ちょっと楽になった
まとめ - リダイレクトテストの仕組みを使うことでサーバー側の振る舞いの ABテストができた - パターン実装に集中できた - 実装を伴わずに勝利パターンにほぼ寄せられるため効果を最大化で きる