13 data analysis global skill

Use when raw data exists — Meta, Google, TikTok, GA4, Shopify, a CRM export, or a spreadsheet — and has to become insight and decisions: descriptive, diagnostic, predictive, and prescriptive layers, cuts by channel, campaign, creative, audience, and time, cohorts, and a decision log.

by minhnv0807·MIT license·★ 599 Stars on the repo·GitHub ↗

Use now

Files of 13 data analysis global

minhnv0807/master1 file shown
SKILL.md
Show the full text442 lines

Marketing Data Analysis (Global)

Insight before numbers. Lead with judgment, illustrate with data — never list numbers without interpretation.


Information Gathering

Ask up to 4 questions:

  1. Data source? Meta Ads, TikTok Ads, GA4, Shopify, Triple Whale/Hyros/Northbeam, Google Sheets — single source or combined?
  2. Time window? This week, this month, A vs B (e.g. March vs April)?
  3. Current business goal? Increase leads, lower CPL, raise ROAS, or a specific issue to fix?
  4. Paste data here — drop a table, or describe core metrics (spend, impressions, clicks, leads, revenue).

Analysis Principles

Reading Order
1. DESCRIPTIVE   — What happened? (numbers, trends)
2. DIAGNOSTIC    — Why? (root cause)
3. PREDICTIVE    — What's next? (forecast)
4. PRESCRIPTIVE  — What to do? (concrete actions)
Presentation Rules
Rule Explanation
Insight first, numbers second "CPL up 40% due to creative fatigue" — not "CPL went from $5 to $7"
Compare, don't quote absolutes Always compare with: prior week (WoW), prior month (MoM), or industry benchmark
Flag anomalies Any metric moving > 20% vs prior period → flag for investigation
Recommendations have deadlines Each recommendation specifies: action, when, owner, success metric

Analysis Frameworks by Source

Meta Ads
Level Primary metrics Secondary metrics
Account Spend, ROAS, CPA Frequency, Reach
Campaign CPM, CPL, Conv rate Budget utilization
Ad Set CPC, CTR, CPM Audience size, overlap
Ad (Creative) Hook rate (3s view), Hold rate, CTR Engagement rate, save rate

Reading Meta Ads:

High spend + low impressions → CPM high → audience too narrow or auction-pressured
High impressions + low clicks → CTR low → creative not compelling
High clicks + low leads → LP problem or form too long
High leads + low bookings → poor lead quality or weak nurture
TikTok Ads
Level Primary metrics Secondary metrics
Account Spend, CPA, ROAS Total impressions
Campaign CPM, Cost per result Campaign type performance
Ad Group CPC, CTR, Conv rate Audience size, age/gender split
Ad (Video) 2s view rate, 6s view rate, completion rate Like, comment, share

Reading TikTok Ads:

2s view rate low → weak hook — first 3 seconds aren't strong enough
6s view rate low → losing attention after the hook
Completion rate low + CTR low → video doesn't drive action
CPV high → wrong audience, or video doesn't fit TikTok format
Google Analytics 4
Metric group Metric Meaning
Acquisition Users, Sessions, Source/Medium Traffic origin
Engagement Engagement rate, Time on page, Pages/session Traffic quality
Conversion Conv rate, Events (form submit, click CTA) Conversion effectiveness
Retention Returning users, User retention Stickiness

Reading GA4:

Traffic up + engagement down → low-quality traffic, filter sources
Traffic up + conversions down → LP problem or wrong-intent traffic
Bounce rate high (>70%) on one page → mismatch with ad copy or slow load
E-commerce Attribution Tools (Dropshipping/DTC)

For dropshipping or DTC stores, native ad-platform metrics often diverge from real revenue. Use one of these:

Tool Best for Key feature
Triple Whale Shopify DTC Pixel-based attribution, blended ROAS, AI insights
Hyros Info products + DTC Server-side tracking, long-window attribution
Northbeam High-spend DTC ($100K+/mo) MTA + MMM, incrementality testing
Polar Analytics Mid-market DTC All-in-one dashboards, source-of-truth tracking
Wicked Reports Email-heavy DTC Multi-touch attribution including email

Cross-checking: when Meta reports 5x ROAS but Shopify reports 2x ROAS, trust the platform-of-record (Shopify). The gap is usually iOS 14+ attribution loss.

Spreadsheet Data (Manual)

When user pastes data from a sheet:

  1. Identify core columns: date, channel, spend, units (impressions/clicks/leads/orders), revenue
  2. Compute derived metrics: CPL, CPA, ROAS, conversion rate
  3. Sort by time to surface trends
  4. Group by channel/campaign for comparison

Trend Detection

Week over Week (WoW)
Metric Prior week This week Change Status
[Metric] [Value] [Value] [+/- %] [Normal / Watch / Alert]

Alert thresholds:

  • 10–20% change → monitor, no action yet
  • 20–40% change → investigate, prepare a response
  • 40% change → act now

Month over Month (MoM)
Metric Prior month This month Change vs Industry benchmark
[Metric] [Value] [Value] [+/- %] [Above/Below industry avg]
Seasonality (Global)
Period Impact Adjustment
Q4 holiday (US: Black Friday → Christmas) CPM +30–50%, conversion up Increase budget; book inventory early; lock LPs
Chinese New Year Asia logistics paused, CPM +20% in APAC Move launches before/after; warn customers about shipping
Back-to-school (US: Aug; UK: Sep) CPM +10–15% (education/electronics) Plan from June
Valentine's, Mother's Day, Father's Day CPM +15–25% (gifting niches) Run campaigns 1 week before
Summer (Northern hemisphere: Jun–Aug) CPM dips 10–15% in many verticals Test creative, scale new channels
Ramadan / Eid (varies by year) MENA conversion shifts Adjust tone, timing — engagement spikes after iftar

Anomaly Detection (Decision Trees)

CPL Spike
CPL up
├── CTR down? → Creative fatigue → Refresh creative
├── CTR normal + Conv rate down? → LP issue
│   ├── Slow load? → Check PageSpeed
│   ├── Form broken? → Test form on mobile
│   └── Wrong intent traffic? → Audit audience targeting
└── CPM up? → Auction pressure or seasonality
    ├── Holiday / sale season? → Increase budget or pause
    └── Competitor spend up? → Switch audience or channel
ROAS Drop
ROAS down
├── Revenue down + spend flat? → Conversion problem
│   ├── Lead quality poor? → Check audience
│   ├── Sales team slow? → Check response time
│   └── Pricing changed? → Audit pricing
├── Revenue flat + spend up? → Over-spending
│   ├── Scaled too fast? → Reduce, max 20%/day increase
│   └── New channel not optimized? → Stop scaling, optimize first
└── Both down? → Systemic issue
    ├── Competitor running big promo? → Competitor scan
    └── Off-season? → Check seasonality
Engagement Drop
Engagement down
├── Reach down? → Algo de-prioritized
│   ├── Too many promo posts? → Increase educational/entertainment ratio
│   └── Posting too often? → Reduce frequency
├── Reach normal + ER down? → Content not compelling
│   ├── Stale format? → Try new formats (carousel, POV, duet)
│   └── Repetitive topics? → Rotate angles per content matrix
└── Reach up + ER down? → Wrong audience reaching

Cohort Analysis

Monthly Cohort Template
Cohort (signup month) Month 1 Month 2 Month 3 Month 6 Month 12
Jan 2026 (100 customers) 100% [X%] active [X%] [X%] [X%]
Feb 2026 (120 customers) 100% [X%] [X%] [X%] —
Mar 2026 (95 customers) 100% [X%] [X%] — —

Reading:

  • Steady decline across months → natural churn, build retention program
  • Sharp drop in month 2 → bad first experience, fix onboarding
  • Stable from month 3 → retention floor reached, focus on this segment
Cohort by Acquisition Source
Source Customers CAC LTV 90 days LTV:CAC
Meta Ads [X] [X] [X] [X:1]
TikTok Ads [X] [X] [X] [X:1]
Organic [X] [X] [X] [X:1]
Referral [X] [X] [X] [X:1]
Email [X] [X] [X] [X:1]

Healthy LTV:CAC is generally 3:1 or better.


Attribution Models

Comparing 3 Models
Model How it credits When to use
Last Click 100% to final touch Default, simple, short funnels
First Click 100% to first touch Evaluating TOFU/awareness channels
Linear Equal split across all touches Long funnels, multi-channel, fair credit

Attribution comparison template:

Channel Last Click First Click Linear Note
Meta Ads [X orders] [X orders] [X orders] [Role: TOFU/BOFU?]
TikTok Ads [X orders] [X orders] [X orders] [Role?]
Google Search [X orders] [X orders] [X orders] [Role?]
Organic [X orders] [X orders] [X orders] [Role?]
Email [X orders] [X orders] [X orders] [Role?]

Recommendations:

  • Short funnel (1–3 days): Last Click works
  • Medium funnel (7–14 days): use Linear
  • Long funnel (30+ days): First Click for TOFU, Last Click for BOFU
  • DTC/dropshipping at scale: switch to a dedicated tool (Triple Whale, Hyros, Northbeam)

Output Template

# Data Analysis Report — [Brand/Campaign]
Period: [Start] — [End]
Data sources: [Meta Ads / TikTok Ads / GA4 / Shopify / ...]
Analysis date: [YYYY-MM-DD]

---

## 1. Executive Summary

**3 most important insights:**
1. [Insight 1 — written as judgment, not raw numbers]
2. [Insight 2]
3. [Insight 3]

**Overall status:** [Green = stable | Yellow = monitor | Red = urgent action]

---

## 2. Descriptive — What happened?

### Top-line metrics

| Metric | This period | Prior period | Change | Industry benchmark | Status |
|--------|-------------|--------------|--------|--------------------|--------|
| Spend | [X] | [X] | [+/- %] | — | [icon] |
| Impressions | [X] | [X] | [+/- %] | — | [icon] |
| Clicks | [X] | [X] | [+/- %] | — | [icon] |
| CTR | [X%] | [X%] | [+/- %] | [X%] | [icon] |
| Leads | [X] | [X] | [+/- %] | — | [icon] |
| CPL | [X] | [X] | [+/- %] | [X] | [icon] |
| ROAS | [Xx] | [Xx] | [+/- %] | [Xx] | [icon] |

### Performance by channel

| Channel | Spend | Leads | CPL | ROAS | % of budget | Note |
|---------|-------|-------|-----|------|-------------|------|
| Meta Ads | [X] | [X] | [X] | [Xx] | [X%] | [1 sentence] |
| TikTok Ads | [X] | [X] | [X] | [Xx] | [X%] | [1 sentence] |
| Google Ads | [X] | [X] | [X] | [Xx] | [X%] | [1 sentence] |

### Top 5 campaigns

| Campaign | Spend | Leads | CPL | ROAS | Note |
|----------|-------|-------|-----|------|------|
| 1. [Name] | [X] | [X] | [X] | [Xx] | [1 sentence] |
| 2. [Name] | [X] | [X] | [X] | [Xx] | [1 sentence] |
| 3. [Name] | [X] | [X] | [X] | [Xx] | [1 sentence] |
| 4. [Name] | [X] | [X] | [X] | [Xx] | [1 sentence] |
| 5. [Name] | [X] | [X] | [X] | [Xx] | [1 sentence] |

### Top 3 creatives

| Creative | Format | Hook rate | CTR | CPL | Days running | Note |
|----------|--------|-----------|-----|-----|--------------|------|
| 1. [Name/desc] | [Video/Image/Carousel] | [X%] | [X%] | [X] | [X days] | [1 sentence] |
| 2. [Name/desc] | [Format] | [X%] | [X%] | [X] | [X days] | [1 sentence] |
| 3. [Name/desc] | [Format] | [X%] | [X%] | [X] | [X days] | [1 sentence] |

---

## 3. Diagnostic — Why?

### What's working — why?
- [Cause 1 + supporting data]
- [Cause 2 + supporting data]

### What's not — why?
- [Cause 1 + supporting data + remedy]
- [Cause 2 + supporting data + remedy]

### Anomalies to investigate
- [Anomaly 1 — description + likely cause + investigation step]
- [Anomaly 2]

---

## 4. Predictive — Forecast

### Next period (3 scenarios)

| Metric | Bear | Base | Bull |
|--------|------|------|------|
| Spend | [X] | [X] | [X] |
| Leads | [X] | [X] | [X] |
| CPL | [X] | [X] | [X] |
| ROAS | [Xx] | [Xx] | [Xx] |
| Revenue | [X] | [X] | [X] |

### Forecast drivers
- [Driver 1: seasonality, competitor, algo change, ...]
- [Driver 2]

---

## 5. Prescriptive — Actions

### Act now (next 48h)
| # | Action | Owner | Deadline | Measure by |
|---|--------|-------|----------|------------|
| 1 | [Specific action] | [Role] | [Date] | [Metric] |
| 2 | [Specific action] | [Role] | [Date] | [Metric] |

### This week
| # | Action | Owner | Deadline | Measure by |
|---|--------|-------|----------|------------|
| 1 | [Specific action] | [Role] | [Date] | [Metric] |
| 2 | [Specific action] | [Role] | [Date] | [Metric] |

### This month
| # | Action | Owner | Deadline | Measure by |
|---|--------|-------|----------|------------|
| 1 | [Specific action] | [Role] | [Date] | [Metric] |
| 2 | [Specific action] | [Role] | [Date] | [Metric] |

Auto-Diagnostics

When analyzing, automatically check these conditions:

Condition Check Action
CPL up > 30% WoW Creative running > 14 days? Frequency > 3? Refresh creative, rotate audience
CTR < 0.8% Strong 3s hook? Eye-catching imagery? A/B test hooks, change opening frame
ROAS < 2x for 7 days Right audience? LP conv rate? Narrow audience, audit LP
LP conv rate < 3% Load time? Form length? CTA clarity? Trigger skill 12-landing-page-brief-global
Frequency > 4 Audience saturated Expand audience or switch channel
Spend < 70% of budget Audience too narrow or bid too low Expand audience, raise bid
One channel > 60% spend Single-channel dependency risk Reallocate, test new channel

Skill Cross-references

  • 03-performance-review-global — broader marketing performance review
  • 07-marketing-report-global — turn analysis into stakeholder-ready monthly/quarterly report
  • 10-reverse-kpi-calc-global — recompute KPIs and budget from real data
  • 12-landing-page-brief-global — when LP conversion is the bottleneck
  • 05-ad-copy-global — when creative is the bottleneck
  • 15-social-listening-global — add qualitative data (sentiment, trends) alongside quantitative

Quality Checklist

Before delivering the report
  • Every insight has supporting data
  • Every number is compared (WoW, MoM, or vs benchmark)
  • Anomalies (> 20% change) flagged and explained
  • Recommendations specify: owner, deadline, success metric
  • Forecast includes 3 scenarios (bear, base, bull)
  • No raw numbers without interpretation
  • Source and time window are clearly stated
  • Cross-checked: ad-platform spend matches actual spend
  • For dropshipping/DTC: revenue cross-checked between Shopify and ad platform
1---
2name: 13-data-analysis-global
3description: "Use when raw data exists — Meta, Google, TikTok, GA4, Shopify, a CRM export, or a spreadsheet — and has to become insight and decisions: descriptive, diagnostic, predictive, and prescriptive layers, cuts by channel, campaign, creative, audience, and time, cohorts, and a decision log. Trigger on 'analyze this data', 'read these numbers for me', 'what does this export say', 'pull insight from GA4', 'cohort analysis', 'here is the spreadsheet'. Also use when the user pastes a table and asks what it means. Not for — diagnosing ad root cause, see `03-performance-eval-global`; writing the report a stakeholder reads, see `07-marketing-report-global`; auditing account setup, see `21-ads-audit-global`."
4metadata:
5 version: 2.5.1
6 category: performance
7 language: en
8triggers:
9 - "data analysis"
10 - "analyze data"
11 - "marketing analytics"
12 - "Meta Ads analysis"
13 - "TikTok Ads analysis"
14 - "GA4 report"
15 - "performance analysis"
16 - "Triple Whale"
17 - "Hyros"
18 - "Northbeam"
19output: A .md report structured as Descriptive, Diagnostic, Predictive, Prescriptive — with tables and concrete recommendations
20related:
21 - 03-performance-review-global
22 - 07-marketing-report-global
23 - 10-reverse-kpi-calc-global
24 - 12-landing-page-brief-global
25---
26 
27# Marketing Data Analysis (Global)
28 
29> Insight before numbers. Lead with judgment, illustrate with data — never list numbers without interpretation.
30 
31---
32 
33## Information Gathering
34 
35Ask up to 4 questions:
36 
371. **Data source?** Meta Ads, TikTok Ads, GA4, Shopify, Triple Whale/Hyros/Northbeam, Google Sheets — single source or combined?
382. **Time window?** This week, this month, A vs B (e.g. March vs April)?
393. **Current business goal?** Increase leads, lower CPL, raise ROAS, or a specific issue to fix?
404. **Paste data here** — drop a table, or describe core metrics (spend, impressions, clicks, leads, revenue).
41 
42---
43 
44## Analysis Principles
45 
46### Reading Order
47 
48```
491. DESCRIPTIVE — What happened? (numbers, trends)
502. DIAGNOSTIC — Why? (root cause)
513. PREDICTIVE — What's next? (forecast)
524. PRESCRIPTIVE — What to do? (concrete actions)
53```
54 
55### Presentation Rules
56 
57| Rule | Explanation |
58|------|-------------|
59| Insight first, numbers second | "CPL up 40% due to creative fatigue" — not "CPL went from $5 to $7" |
60| Compare, don't quote absolutes | Always compare with: prior week (WoW), prior month (MoM), or industry benchmark |
61| Flag anomalies | Any metric moving > 20% vs prior period → flag for investigation |
62| Recommendations have deadlines | Each recommendation specifies: action, when, owner, success metric |
63 
64---
65 
66## Analysis Frameworks by Source
67 
68### Meta Ads
69 
70| Level | Primary metrics | Secondary metrics |
71|-------|-----------------|-------------------|
72| Account | Spend, ROAS, CPA | Frequency, Reach |
73| Campaign | CPM, CPL, Conv rate | Budget utilization |
74| Ad Set | CPC, CTR, CPM | Audience size, overlap |
75| Ad (Creative) | Hook rate (3s view), Hold rate, CTR | Engagement rate, save rate |
76 
77**Reading Meta Ads:**
78 
79```
80High spend + low impressions → CPM high → audience too narrow or auction-pressured
81High impressions + low clicks → CTR low → creative not compelling
82High clicks + low leads → LP problem or form too long
83High leads + low bookings → poor lead quality or weak nurture
84```
85 
86### TikTok Ads
87 
88| Level | Primary metrics | Secondary metrics |
89|-------|-----------------|-------------------|
90| Account | Spend, CPA, ROAS | Total impressions |
91| Campaign | CPM, Cost per result | Campaign type performance |
92| Ad Group | CPC, CTR, Conv rate | Audience size, age/gender split |
93| Ad (Video) | 2s view rate, 6s view rate, completion rate | Like, comment, share |
94 
95**Reading TikTok Ads:**
96 
97```
982s view rate low → weak hook — first 3 seconds aren't strong enough
996s view rate low → losing attention after the hook
100Completion rate low + CTR low → video doesn't drive action
101CPV high → wrong audience, or video doesn't fit TikTok format
102```
103 
104### Google Analytics 4
105 
106| Metric group | Metric | Meaning |
107|--------------|--------|---------|
108| Acquisition | Users, Sessions, Source/Medium | Traffic origin |
109| Engagement | Engagement rate, Time on page, Pages/session | Traffic quality |
110| Conversion | Conv rate, Events (form submit, click CTA) | Conversion effectiveness |
111| Retention | Returning users, User retention | Stickiness |
112 
113**Reading GA4:**
114 
115```
116Traffic up + engagement down → low-quality traffic, filter sources
117Traffic up + conversions down → LP problem or wrong-intent traffic
118Bounce rate high (>70%) on one page → mismatch with ad copy or slow load
119```
120 
121### E-commerce Attribution Tools (Dropshipping/DTC)
122 
123For dropshipping or DTC stores, native ad-platform metrics often diverge from real revenue. Use one of these:
124 
125| Tool | Best for | Key feature |
126|------|----------|-------------|
127| **Triple Whale** | Shopify DTC | Pixel-based attribution, blended ROAS, AI insights |
128| **Hyros** | Info products + DTC | Server-side tracking, long-window attribution |
129| **Northbeam** | High-spend DTC ($100K+/mo) | MTA + MMM, incrementality testing |
130| **Polar Analytics** | Mid-market DTC | All-in-one dashboards, source-of-truth tracking |
131| **Wicked Reports** | Email-heavy DTC | Multi-touch attribution including email |
132 
133**Cross-checking:** when Meta reports 5x ROAS but Shopify reports 2x ROAS, trust the platform-of-record (Shopify). The gap is usually iOS 14+ attribution loss.
134 
135### Spreadsheet Data (Manual)
136 
137When user pastes data from a sheet:
138 
1391. Identify core columns: date, channel, spend, units (impressions/clicks/leads/orders), revenue
1402. Compute derived metrics: CPL, CPA, ROAS, conversion rate
1413. Sort by time to surface trends
1424. Group by channel/campaign for comparison
143 
144---
145 
146## Trend Detection
147 
148### Week over Week (WoW)
149 
150| Metric | Prior week | This week | Change | Status |
151|--------|-----------|-----------|--------|--------|
152| [Metric] | [Value] | [Value] | [+/- %] | [Normal / Watch / Alert] |
153 
154**Alert thresholds:**
155- 10–20% change → monitor, no action yet
156- 20–40% change → investigate, prepare a response
157- > 40% change → act now
158 
159### Month over Month (MoM)
160 
161| Metric | Prior month | This month | Change | vs Industry benchmark |
162|--------|------------|-----------|--------|----------------------|
163| [Metric] | [Value] | [Value] | [+/- %] | [Above/Below industry avg] |
164 
165### Seasonality (Global)
166 
167| Period | Impact | Adjustment |
168|--------|--------|-----------|
169| Q4 holiday (US: Black Friday → Christmas) | CPM +30–50%, conversion up | Increase budget; book inventory early; lock LPs |
170| Chinese New Year | Asia logistics paused, CPM +20% in APAC | Move launches before/after; warn customers about shipping |
171| Back-to-school (US: Aug; UK: Sep) | CPM +10–15% (education/electronics) | Plan from June |
172| Valentine's, Mother's Day, Father's Day | CPM +15–25% (gifting niches) | Run campaigns 1 week before |
173| Summer (Northern hemisphere: Jun–Aug) | CPM dips 10–15% in many verticals | Test creative, scale new channels |
174| Ramadan / Eid (varies by year) | MENA conversion shifts | Adjust tone, timing — engagement spikes after iftar |
175 
176---
177 
178## Anomaly Detection (Decision Trees)
179 
180### CPL Spike
181 
182```
183CPL up
184├── CTR down? → Creative fatigue → Refresh creative
185├── CTR normal + Conv rate down? → LP issue
186│ ├── Slow load? → Check PageSpeed
187│ ├── Form broken? → Test form on mobile
188│ └── Wrong intent traffic? → Audit audience targeting
189└── CPM up? → Auction pressure or seasonality
190 ├── Holiday / sale season? → Increase budget or pause
191 └── Competitor spend up? → Switch audience or channel
192```
193 
194### ROAS Drop
195 
196```
197ROAS down
198├── Revenue down + spend flat? → Conversion problem
199│ ├── Lead quality poor? → Check audience
200│ ├── Sales team slow? → Check response time
201│ └── Pricing changed? → Audit pricing
202├── Revenue flat + spend up? → Over-spending
203│ ├── Scaled too fast? → Reduce, max 20%/day increase
204│ └── New channel not optimized? → Stop scaling, optimize first
205└── Both down? → Systemic issue
206 ├── Competitor running big promo? → Competitor scan
207 └── Off-season? → Check seasonality
208```
209 
210### Engagement Drop
211 
212```
213Engagement down
214├── Reach down? → Algo de-prioritized
215│ ├── Too many promo posts? → Increase educational/entertainment ratio
216│ └── Posting too often? → Reduce frequency
217├── Reach normal + ER down? → Content not compelling
218│ ├── Stale format? → Try new formats (carousel, POV, duet)
219│ └── Repetitive topics? → Rotate angles per content matrix
220└── Reach up + ER down? → Wrong audience reaching
221```
222 
223---
224 
225## Cohort Analysis
226 
227### Monthly Cohort Template
228 
229| Cohort (signup month) | Month 1 | Month 2 | Month 3 | Month 6 | Month 12 |
230|-----------------------|---------|---------|---------|---------|----------|
231| Jan 2026 (100 customers) | 100% | [X%] active | [X%] | [X%] | [X%] |
232| Feb 2026 (120 customers) | 100% | [X%] | [X%] | [X%] | — |
233| Mar 2026 (95 customers) | 100% | [X%] | [X%] | — | — |
234 
235**Reading:**
236- Steady decline across months → natural churn, build retention program
237- Sharp drop in month 2 → bad first experience, fix onboarding
238- Stable from month 3 → retention floor reached, focus on this segment
239 
240### Cohort by Acquisition Source
241 
242| Source | Customers | CAC | LTV 90 days | LTV:CAC |
243|--------|-----------|-----|-------------|---------|
244| Meta Ads | [X] | [X] | [X] | [X:1] |
245| TikTok Ads | [X] | [X] | [X] | [X:1] |
246| Organic | [X] | [X] | [X] | [X:1] |
247| Referral | [X] | [X] | [X] | [X:1] |
248| Email | [X] | [X] | [X] | [X:1] |
249 
250**Healthy LTV:CAC** is generally 3:1 or better.
251 
252---
253 
254## Attribution Models
255 
256### Comparing 3 Models
257 
258| Model | How it credits | When to use |
259|-------|---------------|-------------|
260| Last Click | 100% to final touch | Default, simple, short funnels |
261| First Click | 100% to first touch | Evaluating TOFU/awareness channels |
262| Linear | Equal split across all touches | Long funnels, multi-channel, fair credit |
263 
264**Attribution comparison template:**
265 
266| Channel | Last Click | First Click | Linear | Note |
267|---------|-----------|-------------|--------|------|
268| Meta Ads | [X orders] | [X orders] | [X orders] | [Role: TOFU/BOFU?] |
269| TikTok Ads | [X orders] | [X orders] | [X orders] | [Role?] |
270| Google Search | [X orders] | [X orders] | [X orders] | [Role?] |
271| Organic | [X orders] | [X orders] | [X orders] | [Role?] |
272| Email | [X orders] | [X orders] | [X orders] | [Role?] |
273 
274**Recommendations:**
275- Short funnel (1–3 days): Last Click works
276- Medium funnel (7–14 days): use Linear
277- Long funnel (30+ days): First Click for TOFU, Last Click for BOFU
278- DTC/dropshipping at scale: switch to a dedicated tool (Triple Whale, Hyros, Northbeam)
279 
280---
281 
282## Output Template
283 
284```markdown
285# Data Analysis Report — [Brand/Campaign]
286Period: [Start] — [End]
287Data sources: [Meta Ads / TikTok Ads / GA4 / Shopify / ...]
288Analysis date: [YYYY-MM-DD]
289 
290---
291 
292## 1. Executive Summary
293 
294**3 most important insights:**
2951. [Insight 1 — written as judgment, not raw numbers]
2962. [Insight 2]
2973. [Insight 3]
298 
299**Overall status:** [Green = stable | Yellow = monitor | Red = urgent action]
300 
301---
302 
303## 2. Descriptive — What happened?
304 
305### Top-line metrics
306 
307| Metric | This period | Prior period | Change | Industry benchmark | Status |
308|--------|-------------|--------------|--------|--------------------|--------|
309| Spend | [X] | [X] | [+/- %] | — | [icon] |
310| Impressions | [X] | [X] | [+/- %] | — | [icon] |
311| Clicks | [X] | [X] | [+/- %] | — | [icon] |
312| CTR | [X%] | [X%] | [+/- %] | [X%] | [icon] |
313| Leads | [X] | [X] | [+/- %] | — | [icon] |
314| CPL | [X] | [X] | [+/- %] | [X] | [icon] |
315| ROAS | [Xx] | [Xx] | [+/- %] | [Xx] | [icon] |
316 
317### Performance by channel
318 
319| Channel | Spend | Leads | CPL | ROAS | % of budget | Note |
320|---------|-------|-------|-----|------|-------------|------|
321| Meta Ads | [X] | [X] | [X] | [Xx] | [X%] | [1 sentence] |
322| TikTok Ads | [X] | [X] | [X] | [Xx] | [X%] | [1 sentence] |
323| Google Ads | [X] | [X] | [X] | [Xx] | [X%] | [1 sentence] |
324 
325### Top 5 campaigns
326 
327| Campaign | Spend | Leads | CPL | ROAS | Note |
328|----------|-------|-------|-----|------|------|
329| 1. [Name] | [X] | [X] | [X] | [Xx] | [1 sentence] |
330| 2. [Name] | [X] | [X] | [X] | [Xx] | [1 sentence] |
331| 3. [Name] | [X] | [X] | [X] | [Xx] | [1 sentence] |
332| 4. [Name] | [X] | [X] | [X] | [Xx] | [1 sentence] |
333| 5. [Name] | [X] | [X] | [X] | [Xx] | [1 sentence] |
334 
335### Top 3 creatives
336 
337| Creative | Format | Hook rate | CTR | CPL | Days running | Note |
338|----------|--------|-----------|-----|-----|--------------|------|
339| 1. [Name/desc] | [Video/Image/Carousel] | [X%] | [X%] | [X] | [X days] | [1 sentence] |
340| 2. [Name/desc] | [Format] | [X%] | [X%] | [X] | [X days] | [1 sentence] |
341| 3. [Name/desc] | [Format] | [X%] | [X%] | [X] | [X days] | [1 sentence] |
342 
343---
344 
345## 3. Diagnostic — Why?
346 
347### What's working — why?
348- [Cause 1 + supporting data]
349- [Cause 2 + supporting data]
350 
351### What's not — why?
352- [Cause 1 + supporting data + remedy]
353- [Cause 2 + supporting data + remedy]
354 
355### Anomalies to investigate
356- [Anomaly 1 — description + likely cause + investigation step]
357- [Anomaly 2]
358 
359---
360 
361## 4. Predictive — Forecast
362 
363### Next period (3 scenarios)
364 
365| Metric | Bear | Base | Bull |
366|--------|------|------|------|
367| Spend | [X] | [X] | [X] |
368| Leads | [X] | [X] | [X] |
369| CPL | [X] | [X] | [X] |
370| ROAS | [Xx] | [Xx] | [Xx] |
371| Revenue | [X] | [X] | [X] |
372 
373### Forecast drivers
374- [Driver 1: seasonality, competitor, algo change, ...]
375- [Driver 2]
376 
377---
378 
379## 5. Prescriptive — Actions
380 
381### Act now (next 48h)
382| # | Action | Owner | Deadline | Measure by |
383|---|--------|-------|----------|------------|
384| 1 | [Specific action] | [Role] | [Date] | [Metric] |
385| 2 | [Specific action] | [Role] | [Date] | [Metric] |
386 
387### This week
388| # | Action | Owner | Deadline | Measure by |
389|---|--------|-------|----------|------------|
390| 1 | [Specific action] | [Role] | [Date] | [Metric] |
391| 2 | [Specific action] | [Role] | [Date] | [Metric] |
392 
393### This month
394| # | Action | Owner | Deadline | Measure by |
395|---|--------|-------|----------|------------|
396| 1 | [Specific action] | [Role] | [Date] | [Metric] |
397| 2 | [Specific action] | [Role] | [Date] | [Metric] |
398```
399 
400---
401 
402## Auto-Diagnostics
403 
404When analyzing, automatically check these conditions:
405 
406| Condition | Check | Action |
407|-----------|-------|--------|
408| CPL up > 30% WoW | Creative running > 14 days? Frequency > 3? | Refresh creative, rotate audience |
409| CTR < 0.8% | Strong 3s hook? Eye-catching imagery? | A/B test hooks, change opening frame |
410| ROAS < 2x for 7 days | Right audience? LP conv rate? | Narrow audience, audit LP |
411| LP conv rate < 3% | Load time? Form length? CTA clarity? | Trigger skill 12-landing-page-brief-global |
412| Frequency > 4 | Audience saturated | Expand audience or switch channel |
413| Spend < 70% of budget | Audience too narrow or bid too low | Expand audience, raise bid |
414| One channel > 60% spend | Single-channel dependency risk | Reallocate, test new channel |
415 
416---
417 
418## Skill Cross-references
419 
420- **`03-performance-review-global`** — broader marketing performance review
421- **`07-marketing-report-global`** — turn analysis into stakeholder-ready monthly/quarterly report
422- **`10-reverse-kpi-calc-global`** — recompute KPIs and budget from real data
423- **`12-landing-page-brief-global`** — when LP conversion is the bottleneck
424- **`05-ad-copy-global`** — when creative is the bottleneck
425- **`15-social-listening-global`** — add qualitative data (sentiment, trends) alongside quantitative
426 
427---
428 
429## Quality Checklist
430 
431### Before delivering the report
432 
433- [ ] Every insight has supporting data
434- [ ] Every number is compared (WoW, MoM, or vs benchmark)
435- [ ] Anomalies (> 20% change) flagged and explained
436- [ ] Recommendations specify: owner, deadline, success metric
437- [ ] Forecast includes 3 scenarios (bear, base, bull)
438- [ ] No raw numbers without interpretation
439- [ ] Source and time window are clearly stated
440- [ ] Cross-checked: ad-platform spend matches actual spend
441- [ ] For dropshipping/DTC: revenue cross-checked between Shopify and ad platform
442 

Discussion

Alternatives

Aeon Time Series Machine LearningThis skill should be used for time series machine learning tasks including classification, regression, clustering, forecasting, anomaly detection, segmentation, and similarity search. Use when working with temporal data, sequential patterns, or time-indexed observations requiring specialized algorithms beyond standard ML approaches. Particularly suited for univariate and multivariate time series analysis with scikit-learn compatible APIs.Science · MITdeepTools: NGS Data Analysis ToolkitNGS analysis toolkit. BAM to bigWig conversion, QC (correlation, PCA, fingerprints), heatmaps/profiles (TSS, peaks), for ChIP-seq, RNA-seq, ATAC-seq visualization.Science · MITExploratory data analysisPerform bounded, local exploratory analysis of explicitly supported scientific files. Use for redacted CSV/TSV/JSON profiles; optional NumPy, HDF5, FASTA/FASTQ, and basic image metadata inspection; missingness/leakage audits; outlier and transformation sensitivity; and rigorous EDA report scaffolds. Other domain formats are reference-only and unknown formats fail closed.Science · MITNeuropixels Data AnalysisAnalyze Neuropixels extracellular recordings end-to-end with SpikeInterface. Covers loading SpikeGLX/Open Ephys/NWB data, preprocessing, drift/motion correction, Kilosort4 (and CPU) spike sorting, quality metrics, and unit curation (threshold-based, model-based UnitRefine, and AI-assisted visual review). Use when working with Neuropixels 1.0/2.0 recordings, spike sorting, or extracellular electrophysiology analysis.Science · MIT