Transform data into compelling narratives using visualization, context, and persuasive structure. Use when presenting analytics to stakeholders, creating data reports, or building executive presentations.
Add this skill
npx mdskills install sickn33/data-storytellingComprehensive frameworks and templates for transforming data into executive narratives
1---2name: data-storytelling3description: Transform data into compelling narratives using visualization, context, and persuasive structure. Use when presenting analytics to stakeholders, creating data reports, or building executive presentations.4---56# Data Storytelling78Transform raw data into compelling narratives that drive decisions and inspire action.910## Do not use this skill when1112- The task is unrelated to data storytelling13- You need a different domain or tool outside this scope1415## Instructions1617- Clarify goals, constraints, and required inputs.18- Apply relevant best practices and validate outcomes.19- Provide actionable steps and verification.20- If detailed examples are required, open `resources/implementation-playbook.md`.2122## Use this skill when2324- Presenting analytics to executives25- Creating quarterly business reviews26- Building investor presentations27- Writing data-driven reports28- Communicating insights to non-technical audiences29- Making recommendations based on data3031## Core Concepts3233### 1. Story Structure3435```36Setup → Conflict → Resolution3738Setup: Context and baseline39Conflict: The problem or opportunity40Resolution: Insights and recommendations41```4243### 2. Narrative Arc4445```461. Hook: Grab attention with surprising insight472. Context: Establish the baseline483. Rising Action: Build through data points494. Climax: The key insight505. Resolution: Recommendations516. Call to Action: Next steps52```5354### 3. Three Pillars5556| Pillar | Purpose | Components |57| ------------- | -------- | -------------------------------- |58| **Data** | Evidence | Numbers, trends, comparisons |59| **Narrative** | Meaning | Context, causation, implications |60| **Visuals** | Clarity | Charts, diagrams, highlights |6162## Story Frameworks6364### Framework 1: The Problem-Solution Story6566```markdown67# Customer Churn Analysis6869## The Hook7071"We're losing $2.4M annually to preventable churn."7273## The Context7475- Current churn rate: 8.5% (industry average: 5%)76- Average customer lifetime value: $4,80077- 500 customers churned last quarter7879## The Problem8081Analysis of churned customers reveals a pattern:8283- 73% churned within first 90 days84- Common factor: < 3 support interactions85- Low feature adoption in first month8687## The Insight8889[Show engagement curve visualization]90Customers who don't engage in the first 14 days91are 4x more likely to churn.9293## The Solution94951. Implement 14-day onboarding sequence962. Proactive outreach at day 7973. Feature adoption tracking9899## Expected Impact100101- Reduce early churn by 40%102- Save $960K annually103- Payback period: 3 months104105## Call to Action106107Approve $50K budget for onboarding automation.108```109110### Framework 2: The Trend Story111112```markdown113# Q4 Performance Analysis114115## Where We Started116117Q3 ended with $1.2M MRR, 15% below target.118Team morale was low after missed goals.119120## What Changed121122[Timeline visualization]123124- Oct: Launched self-serve pricing125- Nov: Reduced friction in signup126- Dec: Added customer success calls127128## The Transformation129130[Before/after comparison chart]131| Metric | Q3 | Q4 | Change |132|----------------|--------|--------|--------|133| Trial → Paid | 8% | 15% | +87% |134| Time to Value | 14 days| 5 days | -64% |135| Expansion Rate | 2% | 8% | +300% |136137## Key Insight138139Self-serve + high-touch creates compound growth.140Customers who self-serve AND get a success call141have 3x higher expansion rate.142143## Going Forward144145Double down on hybrid model.146Target: $1.8M MRR by Q2.147```148149### Framework 3: The Comparison Story150151```markdown152# Market Opportunity Analysis153154## The Question155156Should we expand into EMEA or APAC first?157158## The Comparison159160[Side-by-side market analysis]161162### EMEA163164- Market size: $4.2B165- Growth rate: 8%166- Competition: High167- Regulatory: Complex (GDPR)168- Language: Multiple169170### APAC171172- Market size: $3.8B173- Growth rate: 15%174- Competition: Moderate175- Regulatory: Varied176- Language: Multiple177178## The Analysis179180[Weighted scoring matrix visualization]181182| Factor | Weight | EMEA Score | APAC Score |183| ----------- | ------ | ---------- | ---------- |184| Market Size | 25% | 5 | 4 |185| Growth | 30% | 3 | 5 |186| Competition | 20% | 2 | 4 |187| Ease | 25% | 2 | 3 |188| **Total** | | **2.9** | **4.1** |189190## The Recommendation191192APAC first. Higher growth, less competition.193Start with Singapore hub (English, business-friendly).194Enter EMEA in Year 2 with localization ready.195196## Risk Mitigation197198- Timezone coverage: Hire 24/7 support199- Cultural fit: Local partnerships200- Payment: Multi-currency from day 1201```202203## Visualization Techniques204205### Technique 1: Progressive Reveal206207```markdown208Start simple, add layers:209210Slide 1: "Revenue is growing" [single line chart]211Slide 2: "But growth is slowing" [add growth rate overlay]212Slide 3: "Driven by one segment" [add segment breakdown]213Slide 4: "Which is saturating" [add market share]214Slide 5: "We need new segments" [add opportunity zones]215```216217### Technique 2: Contrast and Compare218219```markdown220Before/After:221┌─────────────────┬─────────────────┐222│ BEFORE │ AFTER │223│ │ │224│ Process: 5 days│ Process: 1 day │225│ Errors: 15% │ Errors: 2% │226│ Cost: $50/unit │ Cost: $20/unit │227└─────────────────┴─────────────────┘228229This/That (emphasize difference):230┌─────────────────────────────────────┐231│ CUSTOMER A vs B │232│ ┌──────────┐ ┌──────────┐ │233│ │ ████████ │ │ ██ │ │234│ │ $45,000 │ │ $8,000 │ │235│ │ LTV │ │ LTV │ │236│ └──────────┘ └──────────┘ │237│ Onboarded No onboarding │238└─────────────────────────────────────┘239```240241### Technique 3: Annotation and Highlight242243```python244import matplotlib.pyplot as plt245import pandas as pd246247fig, ax = plt.subplots(figsize=(12, 6))248249# Plot the main data250ax.plot(dates, revenue, linewidth=2, color='#2E86AB')251252# Add annotation for key events253ax.annotate(254 'Product Launch\n+32% spike',255 xy=(launch_date, launch_revenue),256 xytext=(launch_date, launch_revenue * 1.2),257 fontsize=10,258 arrowprops=dict(arrowstyle='->', color='#E63946'),259 color='#E63946'260)261262# Highlight a region263ax.axvspan(growth_start, growth_end, alpha=0.2, color='green',264 label='Growth Period')265266# Add threshold line267ax.axhline(y=target, color='gray', linestyle='--',268 label=f'Target: ${target:,.0f}')269270ax.set_title('Revenue Growth Story', fontsize=14, fontweight='bold')271ax.legend()272```273274## Presentation Templates275276### Template 1: Executive Summary Slide277278```279┌─────────────────────────────────────────────────────────────┐280│ KEY INSIGHT │281│ ══════════════════════════════════════════════════════════│282│ │283│ "Customers who complete onboarding in week 1 │284│ have 3x higher lifetime value" │285│ │286├──────────────────────┬──────────────────────────────────────┤287│ │ │288│ THE DATA │ THE IMPLICATION │289│ │ │290│ Week 1 completers: │ ✓ Prioritize onboarding UX │291│ • LTV: $4,500 │ ✓ Add day-1 success milestones │292│ • Retention: 85% │ ✓ Proactive week-1 outreach │293│ • NPS: 72 │ │294│ │ Investment: $75K │295│ Others: │ Expected ROI: 8x │296│ • LTV: $1,500 │ │297│ • Retention: 45% │ │298│ • NPS: 34 │ │299│ │ │300└──────────────────────┴──────────────────────────────────────┘301```302303### Template 2: Data Story Flow304305```306Slide 1: THE HEADLINE307"We can grow 40% faster by fixing onboarding"308309Slide 2: THE CONTEXT310Current state metrics311Industry benchmarks312Gap analysis313314Slide 3: THE DISCOVERY315What the data revealed316Surprising finding317Pattern identification318319Slide 4: THE DEEP DIVE320Root cause analysis321Segment breakdowns322Statistical significance323324Slide 5: THE RECOMMENDATION325Proposed actions326Resource requirements327Timeline328329Slide 6: THE IMPACT330Expected outcomes331ROI calculation332Risk assessment333334Slide 7: THE ASK335Specific request336Decision needed337Next steps338```339340### Template 3: One-Page Dashboard Story341342```markdown343# Monthly Business Review: January 2024344345## THE HEADLINE346347Revenue up 15% but CAC increasing faster than LTV348349## KEY METRICS AT A GLANCE350351┌────────┬────────┬────────┬────────┐352│ MRR │ NRR │ CAC │ LTV │353│ $125K │ 108% │ $450 │ $2,200 │354│ ▲15% │ ▲3% │ ▲22% │ ▲8% │355└────────┴────────┴────────┴────────┘356357## WHAT'S WORKING358359✓ Enterprise segment growing 25% MoM360✓ Referral program driving 30% of new logos361✓ Support satisfaction at all-time high (94%)362363## WHAT NEEDS ATTENTION364365✗ SMB acquisition cost up 40%366✗ Trial conversion down 5 points367✗ Time-to-value increased by 3 days368369## ROOT CAUSE370371[Mini chart showing SMB vs Enterprise CAC trend]372SMB paid ads becoming less efficient.373CPC up 35% while conversion flat.374375## RECOMMENDATION3763771. Shift $20K/mo from paid to content3782. Launch SMB self-serve trial3793. A/B test shorter onboarding380381## NEXT MONTH'S FOCUS382383- Launch content marketing pilot384- Complete self-serve MVP385- Reduce time-to-value to < 7 days386```387388## Writing Techniques389390### Headlines That Work391392```markdown393BAD: "Q4 Sales Analysis"394GOOD: "Q4 Sales Beat Target by 23% - Here's Why"395396BAD: "Customer Churn Report"397GOOD: "We're Losing $2.4M to Preventable Churn"398399BAD: "Marketing Performance"400GOOD: "Content Marketing Delivers 4x ROI vs. Paid"401402Formula:403[Specific Number] + [Business Impact] + [Actionable Context]404```405406### Transition Phrases407408```markdown409Building the narrative:410• "This leads us to ask..."411• "When we dig deeper..."412• "The pattern becomes clear when..."413• "Contrast this with..."414415Introducing insights:416• "The data reveals..."417• "What surprised us was..."418• "The inflection point came when..."419• "The key finding is..."420421Moving to action:422• "This insight suggests..."423• "Based on this analysis..."424• "The implication is clear..."425• "Our recommendation is..."426```427428### Handling Uncertainty429430```markdown431Acknowledge limitations:432• "With 95% confidence, we can say..."433• "The sample size of 500 shows..."434• "While correlation is strong, causation requires..."435• "This trend holds for [segment], though [caveat]..."436437Present ranges:438• "Impact estimate: $400K-$600K"439• "Confidence interval: 15-20% improvement"440• "Best case: X, Conservative: Y"441```442443## Best Practices444445### Do's446447- **Start with the "so what"** - Lead with insight448- **Use the rule of three** - Three points, three comparisons449- **Show, don't tell** - Let data speak450- **Make it personal** - Connect to audience goals451- **End with action** - Clear next steps452453### Don'ts454455- **Don't data dump** - Curate ruthlessly456- **Don't bury the insight** - Front-load key findings457- **Don't use jargon** - Match audience vocabulary458- **Don't show methodology first** - Context, then method459- **Don't forget the narrative** - Numbers need meaning460461## Resources462463- [Storytelling with Data (Cole Nussbaumer)](https://www.storytellingwithdata.com/)464- [The Pyramid Principle (Barbara Minto)](https://www.amazon.com/Pyramid-Principle-Logic-Writing-Thinking/dp/0273710516)465- [Resonate (Nancy Duarte)](https://www.duarte.com/resonate/)466
Full transparency — inspect the skill content before installing.