This project demonstrates how A/B testing can be applied to measure the impact of product or design changes on conversion rates. The dataset comes from an e-commerce experiment where users were randomly assigned to: - Control Group β old website design - Treatment Group β new website design The business goal is to evaluate whether the new design improves conversion rates.
- Define and test hypotheses for conversion improvement.
- Explore and visualize the dataset.
- Perform a two-proportion z-test to check statistical significance.
- Compute confidence intervals for conversion rate differences.
- Conduct power analysis to ensure the test is adequately powered.
- Translate results into business insights & recommendations.
- Columns:
- user_id β Unique identifier for users
- timestamp β Date of visit
- group β Control (old) or Treatment (new)
- landing_page β Page version shown
- converted β 1 if user converted, 0 otherwise
- Source: Kaggle β E-commerce A/B Testing Dataset
- Data Cleaning
- Removed duplicates and missing values.
- Checked balance between control & treatment groups.
- Exploratory Data Analysis (EDA)
- Conversion rates by group.
- Distribution of users across groups.
- Visual comparisons (bar plots, line trends).
- Statistical Testing
- Null Hypothesis (Hβ): Conversion rates are equal.
- Alternative Hypothesis (Hβ): Conversion rates are different.
- Applied two-proportion z-test with Ξ± = 0.05.
- Calculated 95% confidence interval for conversion difference.
- Power Analysis
- Checked statistical power (>0.8 preferred).
- Ensured sample size was adequate for detecting meaningful effects.
- Z-statistic: 1.19
- P-value: 0.2323
- 95% Confidence Interval for difference: [-0.0009, 0.0038]
- Since p-value > 0.05, we fail to reject the null hypothesis.
- The confidence interval for the difference includes 0, suggesting no statistically significant improvement in conversion.
- In other words, the new design did not significantly outperform the old design.
- The test suggests rolling out the new design may not yield higher conversions.
- Further experiments could explore: - Segment-level testing (e.g., by device type, geography). - Alternative design changes or content personalization. - Running the test longer to collect more data.
- Python (pandas, numpy, matplotlib, seaborn)
- Statsmodels (proportions z-test, confidence intervals, power analysis)
- Google Collab for analysis and storytelling