insight-synthesis
Transform analysis outputs into structured business insights. Use when converting statistical findings into business recommendations, prioritizing insights by business impact, or structuring analysis narratives.
When & Why to Use This Skill
This Claude skill bridges the gap between raw data analysis and strategic decision-making by transforming statistical findings into structured, actionable business insights. It utilizes proven frameworks to connect data patterns to business impact, helping users communicate the 'So What' and 'Now What' of their data to stakeholders effectively. By prioritizing insights based on impact and confidence, it ensures that data-driven recommendations are both persuasive and practical for executive audiences.
Use Cases
- Executive Reporting: Converting complex churn or retention analysis into a concise executive summary that highlights revenue risks and immediate action items.
- Stakeholder Communication: Translating technical data findings into tailored narratives for different departments, such as product, marketing, or operations.
- Insight Prioritization: Ranking multiple analysis results using an impact-confidence matrix to focus resources on the most critical business opportunities.
- Strategic Framework Application: Structuring raw research findings into the 'So What? - Why? - Now What?' framework to drive immediate organizational response and accountability.
| name | insight-synthesis |
|---|---|
| description | Transform data findings into compelling insights. Use when converting analysis results into actionable insights, connecting findings to business impact, or preparing insights for stakeholder communication. |
Insight Synthesis
Quick Start
Convert raw analysis findings into clear, actionable insights that drive business decisions by connecting data patterns to business impact.
Context Requirements
- Analysis Findings: Raw results, statistics, patterns discovered
- Business Context: What the business cares about, current priorities
- Audience: Who needs these insights and what they'll do with them
- Decision Framework: What decisions these insights should inform
- Constraints: Limitations, caveats, confidence levels
Context Gathering
For Findings:
"Share your analysis results:
- Key statistics and metrics
- Patterns or trends found
- Correlations discovered
- Anomalies identified
- Hypothesis test results
Example: 'Churn rate increased 15% in Q4. Mobile users churning 2x more than desktop. Correlation with recent app update.'"
For Business Context:
"Help me understand business priorities:
- Current goals/OKRs
- Pain points being addressed
- Strategic initiatives
- Budget/resources available
- Timeline for action
This helps frame insights as actionable, not just interesting."
For Audience:
"Who will act on these insights?
- Executives: High-level strategic implications
- Product team: Feature/UX implications
- Marketing: Campaign/targeting implications
- Operations: Process improvement implications
Different audiences need different framing."
Workflow
Step 1: Structure Findings
import pandas as pd
import numpy as np
class InsightSynthesizer:
def __init__(self, analysis_name):
self.analysis_name = analysis_name
self.findings = []
self.insights = []
def add_finding(self, finding_type, metric, value, context):
"""Log an analysis finding"""
self.findings.append({
'type': finding_type, # trend, comparison, correlation, anomaly
'metric': metric,
'value': value,
'context': context,
'business_impact': None,
'recommendation': None
})
def convert_to_insight(self, finding_idx, impact, recommendation, confidence):
"""Convert finding to actionable insight"""
finding = self.findings[finding_idx]
insight = {
'finding': finding,
'impact': impact,
'recommendation': recommendation,
'confidence': confidence,
'priority': self._assess_priority(impact, confidence)
}
self.insights.append(insight)
return insight
def _assess_priority(self, impact, confidence):
"""Determine insight priority"""
if 'high' in impact.lower() and confidence == 'high':
return 'critical'
elif 'high' in impact.lower() or confidence == 'high':
return 'high'
elif 'medium' in impact.lower():
return 'medium'
else:
return 'low'
# Initialize
synthesizer = InsightSynthesizer("Q4 Churn Analysis")
# Add findings
synthesizer.add_finding(
finding_type='trend',
metric='Churn Rate',
value='15% increase in Q4',
context='Previous quarter was 8%, now 23%'
)
synthesizer.add_finding(
finding_type='comparison',
metric='Mobile vs Desktop Churn',
value='2x higher on mobile',
context='Mobile: 35% churn, Desktop: 17% churn'
)
print("✅ Findings structured")
Step 2: Connect to Business Impact
# Convert finding to insight with business context
insight_1 = synthesizer.convert_to_insight(
finding_idx=0,
impact="High revenue risk: 15% churn increase = $2M ARR at risk. Accelerating trend suggests worsening if unaddressed.",
recommendation="Immediate win-back campaign for at-risk customers. Investigate root cause (recent product changes, competitor moves).",
confidence='high'
)
insight_2 = synthesizer.convert_to_insight(
finding_idx=1,
impact="Mobile represents 40% of user base. 2x churn rate means disproportionate loss of mobile users. Mobile-first strategy at risk.",
recommendation="Audit mobile app experience. Recent app update (v3.2.0) correlated with spike - consider rollback or hotfix.",
confidence='high'
)
print(f"✅ Created {len(synthesizer.insights)} actionable insights")
Step 3: Apply Insight Framework
def apply_insight_framework(finding, business_context):
"""
Use So What? - Why? - Now What? framework
"""
insight = {}
# SO WHAT? (Why it matters)
insight['so_what'] = f"This means {finding['value']} which affects {business_context['impact_area']}"
# WHY? (Root cause hypothesis)
insight['why'] = f"Likely driven by {business_context['hypothesis']}"
# NOW WHAT? (Action)
insight['now_what'] = f"We should {business_context['action']}"
# Expected outcome
insight['expected_outcome'] = business_context.get('expected_outcome')
return insight
# Example
finding = synthesizer.findings[0]
context = {
'impact_area': 'monthly recurring revenue and growth targets',
'hypothesis': 'recent app update degrading mobile UX, competitor launched similar product',
'action': 'immediately investigate app update, run win-back campaign, monitor competitor',
'expected_outcome': 'Reduce churn to <10% within 60 days, recover $500K ARR'
}
structured_insight = apply_insight_framework(finding, context)
print("\n📊 Structured Insight:")
print(f" SO WHAT: {structured_insight['so_what']}")
print(f" WHY: {structured_insight['why']}")
print(f" NOW WHAT: {structured_insight['now_what']}")
Step 4: Prioritize Insights
def prioritize_insights(insights):
"""Rank insights by impact and urgency"""
priority_map = {'critical': 4, 'high': 3, 'medium': 2, 'low': 1}
# Sort by priority
sorted_insights = sorted(
insights,
key=lambda x: priority_map[x['priority']],
reverse=True
)
print("\n🎯 Prioritized Insights:\n")
for i, insight in enumerate(sorted_insights, 1):
print(f"{i}. [{insight['priority'].upper()}] {insight['finding']['metric']}")
print(f" Impact: {insight['impact'][:80]}...")
print(f" Action: {insight['recommendation'][:80]}...")
print()
return sorted_insights
prioritized = prioritize_insights(synthesizer.insights)
Step 5: Generate Executive Summary
def generate_executive_summary(insights, analysis_name):
"""Create concise executive summary"""
summary = f"# Executive Summary: {analysis_name}\n\n"
# Top 3 insights
summary += "## Key Insights\n\n"
for i, insight in enumerate(insights[:3], 1):
summary += f"**{i}. {insight['finding']['metric']}**\n"
summary += f"- Finding: {insight['finding']['value']}\n"
summary += f"- Impact: {insight['impact']}\n"
summary += f"- Action: {insight['recommendation']}\n\n"
# Bottom line
summary += "## Bottom Line\n\n"
summary += f"Immediate action required on {len([i for i in insights if i['priority'] in ['critical', 'high']])} high-priority issues. "
summary += f"Estimated business impact: $2M+ ARR at risk if unaddressed.\n"
return summary
exec_summary = generate_executive_summary(prioritized, "Q4 Churn Analysis")
print(exec_summary)
Context Validation
- Findings are factually accurate
- Business impact is realistic
- Recommendations are actionable
- Confidence levels are honest
- Audience needs considered
Output Template
# Key Insights: Q4 Churn Analysis
## Critical Insight #1: Mobile Churn Crisis
**Finding:** Mobile users churning at 2x rate of desktop (35% vs 17%)
**So What:**
- Mobile = 40% of user base, disproportionate loss
- Threatens mobile-first strategy
- Concentrated in recent cohorts (post-app update)
**Why:**
- App update v3.2.0 introduced performance issues
- Competitors launched improved mobile apps
- Mobile onboarding less effective
**Now What:**
1. IMMEDIATE: Rollback app to v3.1.9 (stable version)
2. Week 1: Emergency UX audit of mobile experience
3. Week 2: Launch mobile win-back campaign
4. Month 1: Redesign mobile onboarding
**Expected Outcome:**
Reduce mobile churn to <20% within 60 days, save $500K ARR
**Confidence:** HIGH (validated with user feedback, correlates with app release)
---
## High Priority Insight #2: Churn Accelerating
**Finding:** 15% increase in churn (8% → 23% in one quarter)
**Impact:** $2M ARR at risk, undermines growth targets
**Action:** Root cause investigation + retention programs
**Confidence:** HIGH
Common Scenarios
Scenario 1: "Turn analysis into exec presentation"
→ Extract top 3-5 insights → Frame with business impact → Lead with recommendations → Support with data → Include next steps
Scenario 2: "Why should stakeholders care?"
→ Connect to OKRs/goals → Quantify business impact ($, customers, time) → Show urgency (what happens if we don't act) → Make recommendations concrete → Provide confidence levels
Scenario 3: "Too many findings to present"
→ Prioritize by impact → Group related findings → Focus on actionable insights → Save rest for appendix → Tailor to audience
Scenario 4: "Findings conflict or unclear"
→ Acknowledge uncertainty → Present alternative interpretations → Recommend validation approach → Provide provisional insights → Set up next analysis
Scenario 5: "Create insight library"
→ Document insight patterns → Template common insight types → Build metrics → insights mapping → Enable self-service insights → Track insight outcomes
Handling Missing Context
Just raw numbers, no context: "I can see the data changed, but need business context:
- Why do we care about this metric?
- What's an acceptable range?
- What can we actually do about it? Let's connect findings to business impact."
Unclear what action to take: "Let's work backwards:
- Who has the power to act?
- What levers can they pull?
- What's a realistic timeline? Then frame insights as actionable recommendations."
Low confidence in findings: "Be transparent about uncertainty:
- State what we know vs. suspect
- Provide confidence levels
- Recommend validation
- Avoid overconfident claims"
Advanced Options
Insight Scoring Model: Weight insights by impact × confidence × actionability
Insight Templates: Pre-built frameworks for common analysis types
Automated Insights: Scan for statistical significance, anomalies, patterns
Insight Tracking: Monitor which insights led to action and outcomes
Competitive Insights: Compare to industry benchmarks, competitors