Ab Test Analysis
Published by nimrodfisher in data-analytics-skills
No known issues175 installs
What this skill does
Rigorous A/B test statistical analysis. Use when analyzing experiment results, calculating statistical significance, checking for sample ratio mismatch, or validating test design before launch.
Add Ab Test Analysis to your agent
Review the source and files first. When you are ready, copy the prompt instruction or use the CLI command supported by your environment.
Install with a prompt
Paste this into a compatible coding agent:
add this skill "ab-test-analysis" from https://github.com/nimrodfisher/data-analytics-skillsInstall with the CLI
Run this command in a controlled environment after reviewing the repository:
npx skills add https://github.com/nimrodfisher/data-analytics-skills --skill ab-test-analysisSkill instructions
A/B Test Analysis
When to use
- An experiment has finished and the team needs a ship / no-ship recommendation
- Results look directionally positive but the team is unsure if they're statistically significant
- A test has been running for weeks without a clear winner and someone needs to decide whether to continue
- A new experiment needs sample-size planning before launch
- Results are disputed and need a rigorous, documented analysis
Process
- Confirm test design — verify the hypothesis, the control and treatment definitions, the randomisation unit (user/session/device), the primary metric, any guardrail metrics, and the target split ratio.
- Check for sample ratio mismatch (SRM) — run a chi-square test on the actual vs. expected split. If SRM is detected, stop and investigate the randomisation pipeline before interpreting results. Use
scripts/ab_test_analyzer.py --check-srm. - Calculate per-variant metrics — compute the rate (or mean) and 95% confidence interval for the primary metric in each variant. Document absolute and relative difference.
- Run the significance test — execute a two-proportion z-test (for rates) or Welch's t-test (for means). Record z-score, p-value, and 95% CI for the effect. Use
references/statistical_tests_reference.mdif unsure which test applies. - Check guardrail metrics — run the same significance test for each guardrail metric. A significant degradation on any guardrail is a blocker regardless of primary metric results.
- Produce the recommendation — synthesise SRM result, power, significance, and guardrail checks into a clear ship / no-ship / extend decision. Quantify the expected business impact if shipped. Record in
assets/ab_test_report_template.md.
Inputs the skill needs
- Test plan or hypothesis document (variant definitions, randomisation unit, primary metric)
- Data with at minimum: user_id, variant assignment, primary metric outcome
- Optional: guardrail metric values per user, daily aggregate data for temporal validity checks
- Target split ratio (e.g., 50/50)
- Minimum detectable effect or business threshold for "worth shipping"
Output
scripts/ab_test_analyzer.py— runs SRM check, significance test, power analysis, and guardrail checks from a CSV or summary stats inputreferences/statistical_tests_reference.md— which test to use and whenreferences/ab_test_design_guide.md— SRM causes, power planning, peeking and multiple testingassets/ab_test_report_template.md— structured report: design, results, checks, recommendation, expected impact
Files included
- assets/ab_test_report_template.md
- references/ab_test_design_guide.md
- scripts/ab_test_analyzer.py
- SKILL.md

