SlideShare a Scribd company logo
Building an A/B Testing
Analytics System with R and
ShinyEmily Robinson
@robinson_es
About Me
➔ Data Scientist at DataCamp
➔ R user ~7 years
➔ Enjoy talking about:
◆ Building and finding data
science community
◆ Diversity in STEM
◆ R
Learn | datacamp.com/courses
What is A/B Testing?
Life B.D. (Before DataCamp)
➔ Worked on 60+
experiments with search
team
➔ 8+ year history of
experimentation
➔ 500+ experiments per year
Life B.D. (Before DataCamp)
➔ 5 data engineers working on the experimentation platform
➔ Over a thousand metrics computed for each experiment
➔ Fancy UI
From How Etsy Handles Peeking in A/B Testing by Callie McRee and Kelly Shen
First weeks at DataCamp
➔ No system for planning,
analyzing, or presenting
experiment results
➔ And no data engineers to
build it
4 Lessons
1. Build tools to save yourself time
Who here has had a “first this then that” question?
➔ Who tried X then did Y?
➔ What percent of people who did X then did Y?
➔ What was the last thing people did before doing Y?
➔ What are all the things people did after doing X?
Questions I might answer about an A/B test
➔ What percent of people in the treatment vs. control registered?
➔ What were the ad clicks that had a course start within 2 days?
Lengthy, repetitive code
➔ Lots of copying and
pasting
➔ Hard to switch between
types of funnels
And when you’re doing repetitive tasks ...
Package
Unfortunately …
Me and writing packages
Fortunately …
I had David Robinson Sorry, this David Robinson
Funneljoin package: github.com/datacamp/funneljoin
Structure
1. Table 1
2. Table 2
3. User column name(s)
4. Time column name(s)
5. Type of afterjoin
6. Type of join
Example: first-any
➔ What are all the courses people started after visiting the homepage
for the first time?
Example: first-firstafter
➔ What percent of people saw the pricing page and then subscribed?
Example: max-gap argument
➔ What percent of people saw the pricing page and then subscribed within four
days?
➔ Many funnel-types:
➔ Lastbefore-firstafter, any-any, first-any …
➔ Supports all types of dplyr joins:
➔ Inner, left, right, full, semi, and anti
➔ Works on remote tables
➔ Bug fixes, pull requests, feature requests welcome
➔ Try it yourself!
Funneljoin: github.com/datacamp/funneljoin
2. Everything that can go wrong, will
go wrong
Things that have happened …
➔ People are put in both control and treatment
➔ People in the experiment have no page views
➔ People have multiple experiment starts in the same group
➔ There aren’t the same number of people in control and treatment
➔ Experiment starts didn’t have cookies (so we couldn’t track user)
You need to check your assumptions
Initial solution
As a famous data scientist once said …
When you’ve run the same process three
times, make a dashboard
3. Build tools that empower others
Health Metrics Dashboard
* These are fake numbers
By metric view
* These are fake numbers
By metric view
* These are fake numbers
Individual experiments view
* These are fake numbers
Leveling up …
➔ Common request: What % increase can we detect in a 2 week test?
➔ Can I make a tool so people can answer this themselves without code?
➔ Delivering information -> discovering information
Impact calculator
Impact calculator
4. Make it easy to do the right thing
➔ Clarifies decision-making
➔ Can have additional
“guardrail” metrics that you
don’t want to negatively
impact
Best Practice 1: Have one key metric per experiment
Airtable Field
Best practice 2: Run your experiment for length you’re planned on
➔ Otherwise, you may quadruple your
false positive rate!
Show start and end date in dashboard
Conclusion
Recap
1. Build tools to save yourself time
2. Everything that can go wrong will go wrong
3. Build tools that empower others
4. Make it easy to do the right thing
Many thanks to …
➔ The growth and data science teams at DataCamp
➔ Anthony Baker & David Robinson, co-authors of funneljoin
➔ Analytics & Data Engineering team at Etsy
Thank you!
hookedondata.org
@robinson_es
github.com/datacamp/funneljoin

More Related Content

PPTX
Netflix ppt copy
PDF
Internet of things by Samsung
PDF
Auto Scalable 한 Deep Learning Production 을 위한 AI Serving Infra 구성 및 AI DevOps...
PDF
Data at Spotify
PDF
Product Design Sprint
PDF
Netflix Global Cloud Architecture
PPTX
Parsing XML & JSON in Apex
PDF
Understanding Query Plans and Spark UIs
Netflix ppt copy
Internet of things by Samsung
Auto Scalable 한 Deep Learning Production 을 위한 AI Serving Infra 구성 및 AI DevOps...
Data at Spotify
Product Design Sprint
Netflix Global Cloud Architecture
Parsing XML & JSON in Apex
Understanding Query Plans and Spark UIs

What's hot (14)

PDF
Data Onboarding
PDF
A/B Testing Framework Design
PPT
Practical Product Management for new Product Managers
PDF
Apache Spark Core – Practical Optimization
PPTX
PPTX
Azure HDInsight
PDF
How spotify builds products
PPTX
Apache Kafka: Past, Present and Future
PDF
Deep Dive: Memory Management in Apache Spark
PDF
Parquet Strata/Hadoop World, New York 2013
PDF
Netflix Business Model - Nine Elements
PDF
Building Data Pipelines for Music Recommendations at Spotify
PDF
Product vision workshop
PDF
Apache Superset at Airbnb
Data Onboarding
A/B Testing Framework Design
Practical Product Management for new Product Managers
Apache Spark Core – Practical Optimization
Azure HDInsight
How spotify builds products
Apache Kafka: Past, Present and Future
Deep Dive: Memory Management in Apache Spark
Parquet Strata/Hadoop World, New York 2013
Netflix Business Model - Nine Elements
Building Data Pipelines for Music Recommendations at Spotify
Product vision workshop
Apache Superset at Airbnb
Ad

Similar to Building an A/B Testing Analytics System with R and Shiny (20)

PDF
Creating a culture that provokes failure and boosts improvement
PPTX
Pragmatic guide to AB testing - Agile and Automation days 2019
PDF
DrupalCon Austin: UX Bootcamp workshop
PPTX
6 Guidelines for A/B Testing
PDF
Organizing Your First Website Usability Test - WordCamp Toronto 2016
PDF
PDF
Organizing Your First Website Usability Test - Cornell Drupal Camp 2016 - part 4
KEY
Add usability testing to your skill set!
PDF
Usability Testing On A Digital Product
PDF
Engl317 project4 slidedoc2_stepsto_designux_test
PDF
Rapid usability testing
PPTX
L7 Usability testing lecture of usability
PDF
Writing Great Proposals
PPTX
Don't Fear the User
PPT
An Introduction to Usability
PDF
Never show a design you haven't tested
PDF
Learn Learning + Prototype Testing
PPTX
Cloud foundry, Lessons Learned at The Home Depot
PPTX
Interface Design for Elearning - Tips and Tricks
PDF
Designing to save lives: Government technical documentation
Creating a culture that provokes failure and boosts improvement
Pragmatic guide to AB testing - Agile and Automation days 2019
DrupalCon Austin: UX Bootcamp workshop
6 Guidelines for A/B Testing
Organizing Your First Website Usability Test - WordCamp Toronto 2016
Organizing Your First Website Usability Test - Cornell Drupal Camp 2016 - part 4
Add usability testing to your skill set!
Usability Testing On A Digital Product
Engl317 project4 slidedoc2_stepsto_designux_test
Rapid usability testing
L7 Usability testing lecture of usability
Writing Great Proposals
Don't Fear the User
An Introduction to Usability
Never show a design you haven't tested
Learn Learning + Prototype Testing
Cloud foundry, Lessons Learned at The Home Depot
Interface Design for Elearning - Tips and Tricks
Designing to save lives: Government technical documentation
Ad

Recently uploaded (20)

PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
cuic standard and advanced reporting.pdf
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PPTX
Programs and apps: productivity, graphics, security and other tools
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PPT
Teaching material agriculture food technology
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
DOCX
The AUB Centre for AI in Media Proposal.docx
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPTX
sap open course for s4hana steps from ECC to s4
PPTX
MYSQL Presentation for SQL database connectivity
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Chapter 3 Spatial Domain Image Processing.pdf
cuic standard and advanced reporting.pdf
NewMind AI Weekly Chronicles - August'25 Week I
Programs and apps: productivity, graphics, security and other tools
Understanding_Digital_Forensics_Presentation.pptx
Teaching material agriculture food technology
Building Integrated photovoltaic BIPV_UPV.pdf
The Rise and Fall of 3GPP – Time for a Sabbatical?
The AUB Centre for AI in Media Proposal.docx
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Mobile App Security Testing_ A Comprehensive Guide.pdf
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Per capita expenditure prediction using model stacking based on satellite ima...
Reach Out and Touch Someone: Haptics and Empathic Computing
sap open course for s4hana steps from ECC to s4
MYSQL Presentation for SQL database connectivity
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...

Building an A/B Testing Analytics System with R and Shiny