Cross-Channel Performance Dashboard
SkillSearchWhen the user wants a unified view of TikTok, Meta, and Apple Search Ads performance in one report. Use when the user mentions "all channels performance", "compare TikTok vs Meta", "paid channel dashboard", "where should I spend", or "channel comparison". For budget allocation, see cross-channel-budget. For profitability verdict, see campaign-profitability.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Cross-Channel Performance Dashboard skill
What this skill tells your AI
The instructions your AI receives, as published by appeeky/ua-skills in skills/cross-channel-performance/SKILL.md and read by ahel’s review.
You are a paid growth analyst. Produce a unified performance report across all connected ad channels — spend, installs, conversions, CPA, and ROAS — in one executive view.
Initial Assessment
- Read
app-ads-context.mdfor active channels, budget, and CPA targets - Check credential status for each platform
- Ask for date range: default last 7 days (operational) or last 14 days (strategic)
- Identify which channels are connected vs. planned
Credential Check
| Platform | MCP Tool |
|---|---|
| TikTok | tiktok_ads_credentials_status |
| Meta | meta_ads_credentials_status |
| ASA | asa_credentials_status |
| RevenueCat | rc_overview (test with keys) |
Report which channels have data vs. which need connection. Don't skip disconnected channels — note them as "not connected" in the dashboard.
Data Collection
Pull last 7d (or user-specified) from each connected channel:
TikTok
tiktok_ads_performance
level: advertiser
days: 7
For campaign-level drill-down:
tiktok_ads_performance
level: campaign
days: 7
Meta
meta_ads_insights
target_type: ad_account
date_preset: last_7d
level: campaign
If user has a specific ad account:
meta_ads_insights
target_type: ad_account
ad_account_id: "act_xxx"
date_preset: last_7d
level: campaign
Apple Search Ads
asa_profitability
rc_key: "<sk_xxx>"
level: campaign
days: 7
min_spend: 5
Revenue context
rc_overview
rc_key: "<sk_xxx>"
rc_project: "<proj_xxx>"
rc_attribution_summary
rc_key: "<sk_xxx>"
rc_project: "<proj_xxx>"
Unified Metrics Table
Build this table for every connected channel:
| Channel | Spend | Impressions | Clicks | Installs | Conv | CPI | CPA | Revenue* | ROAS | Trend |
|---|---|---|---|---|---|---|---|---|---|---|
| TikTok | ↑/↓/→ | |||||||||
| Meta | ||||||||||
| ASA | ||||||||||
| Google UAC | manual | |||||||||
| Total |
*Revenue from RC attribution or asa_profitability join where available. Mark estimated revenue with ~ prefix.
Derived metrics
| Metric | Formula | Notes |
|---|---|---|
| CPI | Spend / Installs | Top-of-funnel efficiency |
| CPA | Spend / Conversions | Bottom-of-funnel efficiency |
| ROAS | Revenue / Spend | Profitability signal |
| CTR | Clicks / Impressions | Creative relevance (social) |
| CVR | Installs / Clicks | Store listing quality |
| Share of spend | Channel spend / Total spend | Budget allocation check |
Channel Fit Guide
Help the user interpret which channels suit their app:
| App type | Usually best channel | Why |
|---|---|---|
| High-intent utility | ASA first | User is searching for solution |
| Visual consumer / B2C | TikTok | Demo-friendly, young audience |
| Broad demographic | Meta | Scale + lookalike targeting |
| Subscription beauty/lifestyle | TikTok + Meta test | UGC creative performs well |
| Productivity / B2B | ASA + Meta | Intent + professional targeting |
| Gaming | TikTok + Google UAC | Visual gameplay hooks |
| Niche community | Meta (interest) + Reddit | Precise interest targeting |
Cross-reference with user's category from app-ads-context.md.
Trend Analysis
Compare current period to prior period (pull days: 14 and split, or use two date ranges):
| Signal | Diagnosis | Action |
|---|---|---|
| Spend up, CPA up | Audience saturation or creative fatigue | Refresh creatives |
| Spend up, CPA stable | Healthy scaling | Continue |
| Spend down, CPA up | Budget cut on best ad sets | Check pacing |
| Installs up, conversions flat | Low-quality traffic | Tighten targeting or event optimization |
| ASA CPI low, social CPA high | Normal — ASA is highest intent | Don't compare CPI directly |
Reallocation Recommendation
If one channel CPA < 0.8× others with meaningful volume (50+ conversions):
- Shift 20% budget from worst-performing channel to best
- Document in output with specific dollar amounts
- Route to
cross-channel-budgetfor formal reallocation plan
Minimum volume rule: Don't reallocate based on < 20 conversions or < 7 days of data.
Per-Channel Drill-Down
For each channel, include a brief section:
TikTok highlights
- Top campaign by CPA
- Worst campaign (pause candidate)
- Creative fatigue signal (CTR declining 3+ days)
Meta highlights
- Top ad set by CPA
- Audience breakdown if available
- Event optimization status (install vs. purchase)
ASA highlights
- Top campaign by ROAS
- Bleeder campaign (ROAS < 1.0)
- Link to
asa-roas-analysisfor keyword detail
Output Template
# Cross-Channel Performance — [App Name] — [Period]
## Executive summary
- Total spend: $___
- Total installs: ___
- Blended CPI: $___
- Blended CPA: $___
- Best channel: [name] (CPA $___)
- Worst channel: [name] (CPA $___)
- Recommendation: [reallocate / hold / pause X]
## Channel dashboard
| Channel | Spend | Installs | Conv | CPI | CPA | Revenue | ROAS | Trend |
|---------|-------|----------|------|-----|-----|---------|------|-------|
| | | | | | | | | |
## Channel details
### TikTok
- Connected: Yes/No
- Top campaign: [name] — CPA $___
- Issue: [if any]
### Meta
- Connected: Yes/No
- Top ad set: [name] — CPA $___
- Issue: [if any]
### Apple Search Ads
- Connected: Yes/No
- Top campaign: [name] — ROAS ___×
- Issue: [if any]
## Reallocation recommendation
- Move $___/day from [channel] → [channel]
- Reason: [CPA difference, volume sufficient]
## Not connected
- [Channel]: connect via Appeeky Settings to include in dashboard
## Next steps
→ `campaign-profitability` for margin analysis
→ `cross-channel-budget` for formal budget plan
→ `asa-roas-analysis` for ASA keyword detail
Update app-ads-context.md
Offer to update Historical Performance section with latest CPAs and channel status.
Cadence
| Frequency | Use this skill for |
|---|---|
| Weekly | Operational check alongside channel audits |
| Day 14 of new channel | First meaningful comparison |
| Monthly | Strategic channel mix review |
| Before budget change | Evidence for reallocation |
Cross-Skill Handoffs
| Need | Route to |
|---|---|
| Profitability verdict | campaign-profitability |
| Budget allocation | cross-channel-budget |
| ASA keyword detail | asa-roas-analysis |
| TikTok campaign audit | tiktok-campaign-audit |
| Meta campaign audit | meta-campaign-audit |
| MMP issues (0 conversions) | mmp-setup |
Related Skills
cross-channel-budget— allocate budget based on performancecampaign-profitability— LTV vs CPA margin analysisasa-roas-analysis— ASA keyword profitabilityapp-ads-context— channel config and targetstiktok-campaign-setup/meta-campaign-setup— channel execution
Signals
- GitHub stars
- 55
- Forks
- 5
- Last commit
- Aug 2026
Advanced
- Catalog kind
- skill
- Gateway key
cross-channel-performance- Source
- github.com/appeeky/ua-skills