Data Storytelling
What is Data Storytelling?
Data storytelling combines data, visualizations, and narrative to communicate insights effectively. It's not just showing dataβit's guiding your audience to understanding and action.
The Three Elements
- Data: Your evidence (numbers, analysis, facts)
- Narrative: The story structure (beginning, middle, end)
- Visualizations: The visual translation (charts, graphs)
All three together create a compelling data story.
Classic Story Structure
1. SETUP (Context)
"Here's the situation..."
- Background
- What was expected
- Why it matters
2. CONFLICT (Problem/Opportunity)
"But then this happened..."
- The surprising finding
- The problem uncovered
- The opportunity discovered
3. RESOLUTION (Insight)
"Here's what we learned..."
- The explanation
- What it means
- What to do about it
Building a Data Story
Step 1: Know Your Audience
# Ask before you start:
- Who will see this?
- What do they care about?
- What's their data literacy?
- What action do you want them to take?
# Example:
Executives: Focus on business impact, high-level metrics
Technical team: Include methodology, statistical details
Stakeholders: Emphasize outcomes, practical implications
Step 2: Find Your Insight
# Not just facts, but the "so what?"
BAD: "Sales increased 15% in Q3"
GOOD: "Our new pricing strategy drove 15% sales growth,
exceeding target by $2M - we should expand to Q4"
BAD: "Churn rate is 8%"
GOOD: "We're losing 8% of customers to competitor X because
our app loads 3 seconds slower - fixing this could
save $500K annually"
# The insight answers: Why does this matter?
Step 3: Structure Your Narrative
Option 1: Problem-Solution
ββ "Sales dropped 20% last month"
ββ "Investigation showed checkout issues"
ββ "Fixed bug, sales recovered"
Option 2: Before-After-Bridge
ββ "We had low engagement"
ββ "After redesign, engagement up 40%"
ββ "Key was simplifying navigation"
Option 3: Zoom In-Zoom Out
ββ "Overall revenue is up"
ββ "But product X is failing"
ββ "We need to fix X or cut it"
Visualization Best Practices for Stories
1. Guide the Eye
import matplotlib.pyplot as plt
# Highlight the important data point
sales = [100, 105, 110, 95, 115, 120] # Month 4 dropped
months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun']
colors = ['gray', 'gray', 'gray', 'red', 'gray', 'gray']
plt.bar(months, sales, color=colors)
# Add annotation to guide viewer
plt.annotate('System outage', xy=(3, 95), xytext=(3, 85),
arrowprops=dict(arrowstyle='->', color='red'))
plt.title('April Drop Due to System Outage')
# Principle: Make your point obvious
2. Progressive Revelation
# Don't show everything at once
# Build up the story step by step
Slide 1: "Overall sales are strong"
[Show total revenue trend]
Slide 2: "But there's a hidden problem"
[Same chart, now highlight declining Product A]
Slide 3: "Product A losing to competitor"
[Add competitor comparison]
Slide 4: "Here's why: their price is lower"
[Show price comparison]
# Each slide reveals one new piece
3. Use Clear Titles
# Descriptive titles tell the story
BAD: "Revenue by Quarter"
GOOD: "Q3 Revenue Exceeded Target by 15%"
BAD: "Customer Satisfaction Scores"
GOOD: "Customer Satisfaction Hit All-Time High After Support Upgrade"
BAD: "User Growth"
GOOD: "Mobile Users Now Outnumber Desktop for First Time"
# Title should state your point, not just label the chart
Real Example: Complete Story
Slide 1: Context
Title: "Customer Churn Has Been Stable at 5% for Two Years"
Visual: Line chart showing flat churn rate
Narrative: "Our retention efforts have maintained steady churn..."
Slide 2: Problem
Title: "But Last Month, Churn Spiked to 8%"
Visual: Same line chart, last point highlighted in red
Narrative: "In March, we saw an unexpected 60% increase in churn"
Slide 3: Investigation
Title: "Analysis Shows Spike Concentrated in Enterprise Customers"
Visual: Segmented bar chart - consumer vs enterprise churn
Narrative: "Breaking down by segment reveals enterprise churn hit 15%,
while consumer remained at 5%"
Slide 4: Root Cause
Title: "Exit Surveys Cite Lack of Advanced Features"
Visual: Word cloud or bar chart of exit reasons
Narrative: "70% of churned enterprise customers mentioned missing
features that competitor Y launched in February"
Slide 5: Solution
Title: "Recommendation: Accelerate Enterprise Feature Roadmap"
Visual: Timeline showing proposed feature launches
Narrative: "By moving 3 key features forward by Q2, we can recapture
these customers and prevent further churn. Estimated impact:
$2M retained revenue"
Common Mistakes
Mistake 1: Data Dump
# BAD: Show every chart, every number
# Overwhelming, no clear point
# GOOD: Show only what supports your story
# Each chart has a purpose
Mistake 2: Burying the Lede
# BAD: Save the insight for the end
# "After showing you 20 slides of data, here's what it means"
# GOOD: Lead with the insight
# "Sales are down 20% due to pricing. Here's the evidence..."
Mistake 3: No Call to Action
# BAD: "Here's some interesting data"
# So what? What should we do?
# GOOD: "Based on this data, I recommend..."
# Clear next steps
The "So What?" Test
For every chart and statement, ask: "So what?"
Statement: "Conversion rate is 3.5%"
So what? "That's 0.5% below target"
So what? "Costing us $50K monthly"
So what? "We need to fix checkout flow"
Keep asking until you reach actionable insight
Powerful Phrases
- "This shows..." β Explain what the chart means
- "The key insight is..." β State your main point
- "This matters because..." β Connect to business impact
- "What's surprising is..." β Highlight the unexpected
- "Based on this, we should..." β Recommend action
Story Frameworks
Framework 1: The Hero's Journey (for Projects)
1. Ordinary World: "Our old process was slow"
2. Call to Adventure: "Leadership asked us to optimize"
3. Challenges: "We tried X and Y, faced these obstacles"
4. Victory: "Solution Z reduced time by 50%"
5. Return: "Now rolling out across company"
Framework 2: Compare-Contrast
1. Option A: Performance, costs, risks
2. Option B: Performance, costs, risks
3. Comparison: Side-by-side
4. Recommendation: Clear winner based on data
Framework 3: Trend Analysis
1. Where we were: Historical data
2. Where we are: Current state
3. Where we're going: Projection/forecast
4. What we need to do: Actions to reach goal
Tools for Data Storytelling
- Tableau: Interactive dashboards with story points
- Power BI: Business intelligence narratives
- Flourish: Animated, scroll-based stories
- Observable: Interactive data narratives
- Python (Altair): Programmatic storytelling
Design Principles
- Contrast: Highlight important vs background
- Hierarchy: Guide eye from most to least important
- Simplicity: Remove everything that doesn't support story
- Consistency: Same colors/styles mean same things
- White space: Don't cram, let insights breathe
Checklist for Great Data Stories
- β Clear audience and purpose defined
- β One main insight per slide/section
- β Context provided (what's normal/expected)
- β Visualizations support narrative
- β Key points highlighted visually
- β "So what?" answered for each point
- β Call to action included
- β Can be understood in 30 seconds
- β No jargon (or explained if necessary)
- β Story flows logically
Before vs After Example
Before (Just Data)
Slide: "Website Metrics"
- 50,000 visitors
- 3.5% conversion rate
- 1,750 conversions
- $87,500 revenue
Problem: So what? No story, no insight
After (Data Story)
Slide 1: "Traffic Up 20%, But Revenue Flat"
Visual: Two lines diverging (traffic up, revenue flat)
Insight: Something broken in conversion funnel
Slide 2: "Conversion Rate Dropped from 5% to 3.5%"
Visual: Highlighted drop on timeline
Context: Started after new checkout launched
Slide 3: "3 Bugs Found in Checkout Process"
Visual: Funnel showing where users drop off
Evidence: A/B test of old vs new checkout
Slide 4: "Recommendation: Revert Checkout, Fix Bugs"
Visual: Projected revenue recovery
Action: Expect $30K revenue recovery this month
Best Practices
- Start with the insight, then show supporting evidence
- One main point per visualization
- Use annotations to guide the viewer
- Build tension with before-after comparisons
- End with action - what should happen next?
- Test on someone - can they get your point quickly?
Key Takeaways:
- Data storytelling = Data + Narrative + Visualization
- Know your audience and their needs
- Structure: Setup β Conflict β Resolution
- Every chart should support your story
- Guide the eye with color, annotations, titles
- Always answer "So what?"
- End with clear call to action