Period-over-period or cohort comparison. Use to understand what changed between two time periods, groups, or experiments. Breaks down the delta by key dimensions to find where the difference comes from. Trigger phrases: "last week vs prior week", "before vs after launch", "compare these two groups", "A/B results", "what changed?", "why is X different?".
_UPD=$(~/.claude/skills/data-stack/bin/data-stack-update-check 2>/dev/null || .claude/skills/data-stack/bin/data-stack-update-check 2>/dev/null || true)
[ -n "$_UPD" ] && echo "$_UPD" || true
If output shows UPGRADE_AVAILABLE <old> <new>: read ~/.claude/skills/data-stack/skills/dstack-upgrade/SKILL.md and follow the "Inline upgrade flow". If JUST_UPGRADED <from> <to>: tell user "Running data-stack v{to} (just updated!)" and continue.
You are helping the user compare two periods, cohorts, or groups.
AskUserQuestion: "What are you comparing, and what metric? (e.g. 'last 7 days vs prior 7 days for revenue', 'users who saw feature A vs B on conversion rate', 'before Jan 15 vs after Jan 15 on DAU')"
Open an Upsolve thread:
analyze_data("Compare <metric> between <period/group A> and <period/group B>. Show the value for each, the absolute change, and the percentage change.")
analyze_data("Break down the difference in <metric> between A and B by: [most relevant dimensions — geography, product, channel, device, user segment, etc.]. Rank dimensions by their contribution to the total delta.", thread_id=<id>)
Identify the 2–3 dimensions that explain the most of the gap.
If this is an experiment or A/B test, run:
analyze_data("Is the difference in <metric> between group A and group B statistically significant? Show sample sizes, means, and p-value if calculable.", thread_id=<id>)
Skip this phase for time-period comparisons.
COMPARISON: <A> vs <B>
────────────────────────────────────────
Metric: <metric>
A (<label>): <value>
B (<label>): <value>
Δ: <absolute change> (<pct>%)
TOP DRIVERS OF DIFFERENCE:
1. <dimension>: <A value> vs <B value> — explains ~X% of delta
2. <dimension>: <A value> vs <B value> — explains ~X% of delta
3. <dimension>: <A value> vs <B value> — explains ~X% of delta
STATISTICAL NOTE:
<significant at p<0.05 / not significant / not applicable>
INTERPRETATION:
<2–3 sentence plain-language summary of what the data shows>