Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
On AB Testing
Search
Hector Zarate
September 16, 2016
Technology
510
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
On AB Testing
My slides on my presentation on AB Testing.
As presented in NSSpain 2016.
Logroño, Spain.
Hector Zarate
September 16, 2016
More Decks by Hector Zarate
See All by Hector Zarate
On Debugging
ioscowboy
0
560
Inheritance, Interfaces and Composition
ioscowboy
0
480
iOS @ Spotify
ioscowboy
0
160
Consistent, Dumb and Thin
ioscowboy
3
16k
Other Decks in Technology
See All in Technology
演劇と私とスクラム
chinmo
0
160
FinOps Agentが生んだ技術負債:コスト自動調査の落とし穴と解消までの道のり
oasis1994liveforever
3
300
freeeにおける AI を用いた ブラウザ動作確認の自動化の取り組み
freee
PRO
0
220
正解のない研修に放り出されて / Being thrown into a training program with no right answers
ohnoeight
1
150
Claude Code on Bedrock で統制をかける小ネタ集/claude-code-bedrock-governance-tips
emiki
1
13k
なぜAI時代に技術記事を書くのか?どう書くのか? 〜bunの場合〜
kworkdev
PRO
0
140
CSS2026:OWS研究会・招待講演「世界観を、実装する」
atsush1_sada
2
340
"計画的無茶振り"を通してAIネイティブ世代の新人を育てる
subroh0508
1
110
AI秘書と毎日働くのはもう当たり前。開発以外の業務に足りない機能をどう埋める?
minorun365
PRO
2
1.7k
Maestro MCPとClaude Code Skillsによる自律的なE2Eテスト支援
asmz
0
130
ドメインエキスパートは いかにして AI を使って プロダクト開発をするか
tatsuyashiraishi
1
190
E2Eってつらくないですか?E2Eの管理コストを下げる手段とその実践
akaboshinit
1
350
Featured
See All Featured
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
68
59k
エンジニアに許された特別な時間の終わり
watany
109
250k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.3k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
640
BBQ
matthewcrist
90
10k
The Curious Case for Waylosing
cassininazir
1
580
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
300
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
900
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
330
Navigating Weather and Climate Data
rabernat
0
560
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.2k
Transcript
AB Testing Hector Zarate @ChocoChipset
AB Testing Hector Zarate @ChocoChipset
Hector Zarate (@ChocoChipset) Software Engineer at Spotify Boxun Zhang Data
Scientist at Spotify
1. What?
None
None
YOU ARE PART OF AN EXPERIMENT
AB Testing
None
Samson, 3
Max, 30 Samson, 3 +5% matches
Share of Matches 20% 23.75% 27.5% 31.25% 35% Week 0
Week 1 Week 2 Week 3 Week 4 With Sunglasses Sunglasses
Share of Matches 20% 23.75% 27.5% 31.25% 35% Week 0
Week 1 Week 2 Week 3 Week 4 With Sunglasses Control Sunglasses
Share of Premium Conversion 20% 23.75% 27.5% 31.25% 35% Week
0 Week 1 Week 2 Week 3 Week 4 Variation A Control Sunglasses
User Retention 20% 23.75% 27.5% 31.25% 35% Week 0 Week
1 Week 2 Week 3 Week 4 Variation A Control Sunglasses
None
spotify:user:chocochipset 92b2976bb15d26c9008
1 2 3 4 5 6 7 8 9 10
p ( x ) x 1 / n
1 2 3 4 5 6 7 8 9 10
p ( x ) x 1 / n
1 2 3 4 5 6 7 8 9 10
p ( x ) x 1 / n 0% 60%
Markets
Demographics
User Attributes
None
Login resolveABFlags() response(ABFlags) ABBA Cache AB Values Load Cached or
Default AB Flags
Example button.color = [UIColor spotifyGreen]; BOOL isButtonPink = ([abFlags[@“pink-buttons"] isEqual:@"1"]);
if (isButtonPink) { // alternate path here: button.color = [UIColor spotifyPink]; } Key Value charts Enabled pink-buttons 0 buffer-quality low gallery-artist Control
Key Value charts Enabled pink-buttons 0 buffer-quality low gallery-artist Control
Example button.color = [UIColor spotifyGreen]; BOOL isButtonPink = ([abFlags[@“pink-buttons"] isEqual:@"1"]); if (isButtonPink) { // alternate path here: button.color = [UIColor spotifyPink]; } Key Value charts Enabled pink-buttons 1 buffer-quality low gallery-artist Control pink-button 1 Variation A Control
Control Variation
Analytics impressions and interactions
* just a personal preference
2. How?
1. Hypothesis 2. Design 3. Run 4. Analysis
1. Formulate a Hypothesis
2. Design the Test
# shuffle plays 2.1 Target Metrics
# matches Samson, 3 # replies # walks in the
park
2.2 Test Group more test bandwith, less confidence, smaller effect
in business less test bandwith, more confidence, bigger effect in business Small Large
2.3 Duration
3. Run the test
1 2 3 4 5 6 7 8 9 10
p ( x ) x 1 / n Test A Test A Test B Test B Test A / Test B Watch out for conflicting tests!
Don’t cut them short! Bruno Cesar 48’ Ronaldo 89’ Morata
90’ + 4’ 2 -1
0 25 50 75 100 D1 D2 D3 D4 D5
D6 D7 D8 Don’t cut them short!
4. Analyze the results
1. Formulate a Hypothesis new
3. Case Studies
3.1. Losing Calories
None
None
None
None
None
None
Test: Tab Bar Navigation Hypothesis: By switching to TBN, we
expect an increase in the share of users who click at least one menu item. 1
Test: Tab Bar Navigation Hypothesis: By switching to TBN, we
expect an increase in the share of users who click at least one menu item. 2.1
10% New Users 1% Existing Users 2.2
2.3 8 day period
4 Clicks on Menu Items 10% 20% 30% 40% 50%
60% 70% 80% 90% 100% 110% 120% 130% Control Tab Bar 130% 100%
4 Clicks Overall 10% 20% 30% 40% 50% 60% 70%
80% 90% 100% 110% 120% 130% Control Tab Bar 109% 100%
4 1. Increased clicks in Tab Items 2. Decreased clicks
in non-tab items.
WHY AB TEST? QUANTIFY THE IMPACT OF A SPECIFIC CHANGE
3.2. Home in Mexico
My Rock Your Rock
My Home Your Home
My Home Your Home
Test: Home Hypothesis: We will measure an increased second week
retention by using the new ‘Home’ as start page. 1
Test: Home Hypothesis: We will measure an increased second week
retention by using the new ‘Home’ as start page. 2.1
US UK Germany Austria Mexico 4
1. Is the localization good? 2. Are recommendations relevant for
the market? 3. Technical restrictions we are not aware of? 4
12.34 Mbps US 13.70 Mbps UK 13.42 Mbps Germany 15.48
Mbps Austria 7.4 Mbps Mexico * 3.7 Mb 4
1. Hypothesis 2. Design 3. Run 4. Analysis
Test: Home Hypothesis: By compressing the data sent for Home,
more users will play on day one, two and be active during their second week. 1
4. Pitfalls
NO DATA
Max, 30 TOO MANY CHANGES
Max, WOLF AT WALL STREET TOO MANY CHANGES
DONT LISTEN TO YOUR HEART (LISTEN TO THE DATA)
5. Wrap Up
None
None
None
None
None
KNOWLEDGE IS YOUR ROI
A test is an investment Design to maximize learning
NEGATIVE RESULTS ARE STILL POSITIVE
TRY AB TESTING
None
Gracias! Hector Zarate @ChocoChipset spotify.com/jobs
Preguntas! Hector Zarate @ChocoChipset spotify.com/jobs