AB

ab-test-setup

Ensures A/B tests are valid by enforcing strict hypothesis, metric, and safety gates.

Install

mkdir -p .claude/skills/ab-test-setup && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/2070" && unzip -o skill.zip -d .claude/skills/ab-test-setup && rm skill.zip

Installs to .claude/skills/ab-test-setup

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Structured guide for setting up A/B tests with mandatory gates for hypothesis, metrics, and execution readiness.
112 charsno explicit “when” trigger
Intermediate

Key capabilities

  • →Validate test hypothesis via mandatory checks
  • →Define primary, secondary, and guardrail metrics
  • →Calculate statistical MDE (Minimum Detectable Effect)
  • →Evaluate test readiness criteria

How it works

Enforces a structured, multi-gate framework that forces the definition of variables before allowing test design.

Inputs & outputs

You give it
Test hypothesis, audience, and metric definitions
You get back
Validated test plan and readiness report

When to use ab-test-setup

  • →Setup A/B test
  • →Validate test hypothesis
  • →Define test metrics
  • →Check A/B test readiness

About this skill

A/B Test Setup

1️⃣ Purpose & Scope

Define an experiment that can answer a specific product question, and verify its assumptions before exposing users. This procedure cannot guarantee validity by itself.

  • Documents the stopping rule
  • Estimates sample needs under stated assumptions
  • Makes the hypothesis and decision criteria reviewable

2️⃣ Pre-Requisites

You must have:

  • A clear user problem
  • Access to an analytics source
  • Roughly estimated traffic volume

Hypothesis Quality Checklist

A valid hypothesis includes:

  • Observation or evidence
  • Single, specific change
  • Directional expectation
  • Defined audience
  • Measurable success criteria

3️⃣ Hypothesis Lock (Hard Gate)

Before designing variants or metrics, you MUST:

  • Present the final hypothesis
  • Specify:
    • Target audience
    • Primary metric
    • Expected direction of effect
    • Minimum Detectable Effect (MDE)

Use the hypothesis already agreed in the task. If a launch-critical choice is missing, present the concrete choice for confirmation while continuing independent analysis. Do not repeatedly request approval for a decision already authorized.


4️⃣ Assumptions & Validity Check (Mandatory)

Explicitly list assumptions about:

  • Traffic stability
  • User independence
  • Metric reliability
  • Randomization quality
  • External factors (seasonality, campaigns, releases)

If assumptions are weak or violated:

  • Warn the user
  • Recommend delaying or redesigning the test

5️⃣ Test Type Selection

Choose the simplest valid test:

  • A/B Test – single change, two variants
  • A/B/n Test – multiple variants, higher traffic required
  • Multivariate Test (MVT) – interaction effects, very high traffic
  • Split URL Test – major structural changes

Default to A/B unless there is a clear reason otherwise.


6️⃣ Metrics Definition

Primary Metric (Mandatory)

  • Single metric used to evaluate success
  • Directly tied to the hypothesis
  • Pre-defined and frozen before launch

Secondary Metrics

  • Provide context
  • Explain why results occurred
  • Must not override the primary metric

Guardrail Metrics

  • Metrics that must not degrade
  • Used to prevent harmful wins
  • Trigger test stop if significantly negative

7️⃣ Sample Size & Duration

Define upfront:

  • Baseline rate
  • MDE
  • Significance level alpha (often 0.05, corresponding to 95% confidence)
  • Statistical power (typically 80%)

Estimate:

  • Required sample size per variant
  • Expected test duration

Do NOT proceed without a realistic sample size estimate.


Tracking Verification (Required before Gate 8)

Before entering the Execution Readiness Gate below, run through this checklist to make "Tracking is verified" mean something concrete:

  1. Event firing: Trigger each event the primary and secondary metrics depend on (sign-up, add-to-cart, custom event) on staging or a debug page, and confirm it arrives within that pipeline’s documented latency; record the observed delay.
  2. Variant attribution: Verify that the variant assignment ID is attached to every fired event — not just the entry event. Use your analytics' raw event view to compare a sample of 5+ events per variant.
  3. De-duplication: Confirm that a user reloading the page does not cause double-counted events. Use a stable event/transaction ID and document cross-client/server deduplication; a variant label alone is not a unique event key.
  4. Sample randomization: Check sample-ratio mismatch against the configured allocation with a pre-specified statistical check and adequate records. A fixed ±5% band on 100 records is not a valid universal randomization test. Inspect assignment stability, unit independence and missing exposure records.
  5. Guardrail metric pipeline: Each guardrail metric defined in §6️⃣ must have a working dashboard or alert by the time the test launches.

If any of the above fails, stop and resolve it before Gate 8.


8️⃣ Execution Readiness Gate (Hard Stop)

You may proceed to implementation only if all are true:

  • Hypothesis is locked
  • Primary metric is frozen
  • Sample size is calculated
  • Test duration is defined
  • Guardrails are set
  • Tracking is verified

If any item is missing, stop and resolve it.


Running the Test

During the Test

DO:

  • Monitor technical health
  • Document external factors

DO NOT:

  • Stop early due to “good-looking” results
  • Change variants mid-test
  • Add new traffic sources
  • Redefine success criteria

Analyzing Results

Analysis Discipline

When interpreting results:

  • Do NOT generalize beyond the tested population
  • Do NOT claim causality beyond the tested change
  • Do NOT override guardrail failures
  • Separate statistical significance from business judgment

Interpretation Outcomes

ResultAction
Significant positiveConsider rollout
Significant negativeReject variant, document learning
InconclusiveReport uncertainty; use the pre-specified continuation rule or design a new test
Guardrail failureDo not ship, even if primary wins

Documentation & Learning

Test Record (Mandatory)

Document:

  • Hypothesis
  • Variants
  • Metrics
  • Sample size vs achieved
  • Results
  • Decision
  • Learnings
  • Follow-up ideas

Store records in a shared, searchable location to avoid repeated failures.


Refusal Conditions (Safety)

Refuse to proceed if:

  • Baseline rate is unknown and cannot be estimated
  • Traffic is insufficient to detect the MDE
  • Primary metric is undefined
  • Multiple variables are changed without proper design
  • Hypothesis cannot be clearly stated

Explain why and recommend next steps.


Key Principles (Non-Negotiable)

  • One hypothesis per test
  • One primary metric
  • Commit before launch
  • No peeking
  • Learning over winning
  • Statistical rigor first

When to Use

Use when a product change has enough eligible traffic for a randomized comparison and a measurable outcome. For low-volume launches or qualitative discovery, consider usability research or descriptive measurement instead of claiming causal lift.

Sample-size calculation example

For an illustrative binary metric, estimate the per-variant sample for a change from 10% to 11% (one percentage point, 10% relative lift), 50/50 allocation, two-sided alpha 0.05 and power 0.80. This Python 3 large-sample approximation uses Cohen's proportion effect size:

from math import asin, ceil, sqrt
from statistics import NormalDist

baseline, variant = 0.10, 0.11  # illustrative assumptions, not measured data
alpha, power = 0.05, 0.80
h = abs(2 * asin(sqrt(variant)) - 2 * asin(sqrt(baseline)))
z = NormalDist()
per_variant = ceil(2 * (z.inv_cdf(1 - alpha / 2) + z.inv_cdf(power)) ** 2 / h ** 2)
print(per_variant)

Expected output: 14745 observations per variant for these assumptions.

This calculation assumes independent units, one binary outcome, a fixed horizon and no multiplicity adjustment. It is inappropriate for clustered or repeated observations, sequential decisions or continuous revenue metrics. Account for eligible traffic, attrition, outcome delay and the sampling unit before turning a sample estimate into calendar duration. Equal assumed rates have zero effect size and no finite sample for detecting that difference.

Worked example

Observation: users abandon a long signup form.
Change: remove one optional field; unit: account; allocation: 50/50 and stable.
Primary metric: completed signup / eligible assigned accounts within 24 hours.
Guardrails: validation failures and support requests.
Before launch: estimate sample needs from baseline and MDE, verify exposure and
completion IDs, define analysis window and stopping rule.
Expected report: counts, absolute/relative effect, interval, data-quality checks,
guardrail results and a decision with its limits; never just “p < 0.05, ship”.

Limitations

  • Clustered users, spillovers and repeated observations can invalidate independent-sample calculations.
  • Sequential monitoring needs a planned sequential method; fixed-horizon significance does not authorize repeated peeking.
  • A tracking gap or sample-ratio mismatch can invalidate inference despite a favorable primary metric.
  • This skill does not activate flags, publish variants or establish regulatory compliance automatically.

When not to use it

  • →Ad-hoc experiments lacking clear metrics
  • →Post-hoc analysis of completed data

Prerequisites

Access to analytics data source

Limitations

  • →Does not automate the actual statistical test
  • →Dependent on user input for metric quality

How it compares

It prevents 'peeking' and ensures statistical rigor by blocking implementation until the hypothesis is locked.

Compared to similar skills

ab-test-setup side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
ab-test-setup (this skill)45moNo flagsIntermediate
experiment-plan05moNo flagsAdvanced
backtesting-frameworks174moNo flagsAdvanced
backtesting-trading-strategies102moReviewIntermediate

Try saying

Example prompts that trigger this skill in your AI assistant.

mobile-design

sickn33

Mobile-first design and engineering doctrine for iOS and Android apps. Covers touch interaction, performance, platform conventions, offline behavior, and mobile-specific decision-making. Teaches principles and constraints, not fixed layouts. Use for React Native, Flutter, or native mobile apps.

149231

unity-developer

sickn33

Build Unity games with optimized C# scripts, efficient rendering, and proper asset management. Masters Unity 6 LTS, URP/HDRP pipelines, and cross-platform deployment. Handles gameplay systems, UI implementation, and platform optimization. Use PROACTIVELY for Unity performance issues, game mechanics, or cross-platform builds.

142357

architect-review

sickn33

Master software architect specializing in modern architecture patterns, clean architecture, microservices, event-driven systems, and DDD. Reviews system designs and code changes for architectural integrity, scalability, and maintainability. Use PROACTIVELY for architectural decisions.

109320

angular

sickn33

Modern Angular (v20+) expert with deep knowledge of Signals, Standalone Components, Zoneless applications, SSR/Hydration, and reactive patterns. Use PROACTIVELY for Angular development, component architecture, state management, performance optimization, and migration to modern patterns.

100129

frontend-slides

sickn33

Create stunning, animation-rich HTML presentations from scratch or by converting PowerPoint files. Use when the user wants to build a presentation, convert a PPT/PPTX to web, or create slides for a talk/pitch. Helps non-designers discover their aesthetic through visual exploration rather than abstract choices.

95195

minecraft-bukkit-pro

sickn33

Master Minecraft server plugin development with Bukkit, Spigot, and Paper APIs. Specializes in event-driven architecture, command systems, world manipulation, player management, and performance optimization. Use PROACTIVELY for plugin architecture, gameplay mechanics, server-side features, or cross-version compatibility.

9078

You might also like

experiment-plan

Shiien

Design the full experimental spec before any runs — map paper claims to experiments, define independent / dependent variables, pin baselines, schedule ablations, estimate resources, and save to `experiments/{exp_name}/plan.md`. Triggers on "plan experiment", "design experiment", "what experiments sh

00

backtesting-frameworks

wshobson

Build robust backtesting systems for trading strategies with proper handling of look-ahead bias, survivorship bias, and transaction costs. Use when developing trading algorithms, validating strategies, or building backtesting infrastructure.

17126

backtesting-trading-strategies

jeremylongshore

Backtest crypto and traditional trading strategies against historical data. Calculates performance metrics (Sharpe, Sortino, max drawdown), generates equity curves, and optimizes strategy parameters. Use when user wants to test a trading strategy, validate signals, or compare approaches. Trigger with phrases like "backtest strategy", "test trading strategy", "historical performance", "simulate trades", "optimize parameters", or "validate signals".

1071

llm-evaluation

wshobson

Implement comprehensive evaluation strategies for LLM applications using automated metrics, human feedback, and benchmarking. Use when testing LLM performance, measuring AI application quality, or establishing evaluation frameworks.

671

evaluating-llms-harness

davila7

Evaluates LLMs across 60+ academic benchmarks (MMLU, HumanEval, GSM8K, TruthfulQA, HellaSwag). Use when benchmarking model quality, comparing models, reporting academic results, or tracking training progress. Industry standard used by EleutherAI, HuggingFace, and major labs. Supports HuggingFace, vLLM, APIs.

337

data-quality-frameworks

wshobson

Implement data quality validation with Great Expectations, dbt tests, and data contracts. Use when building data quality pipelines, implementing validation rules, or establishing data contracts.

628

Search skills

Search the agent skills registry