appeeky/ua-skills

campaign-profitability

When the user wants to know if their paid ads are profitable — LTV vs CPA, break-even CPI, ROAS, or margin after ad spend.

Vedi sorgente

Come usare

  1. Copia il comando e controlla il pacchetto prima di installarlo nel tuo ambiente agente.
  2. Controlla strumenti, credenziali e ambienti richiesti nel documento originale.
  3. Descrivi input e risultato desiderato; confronta l’output con le fonti.
npx skills add https://github.com/appeeky/ua-skills --skill campaign-profitability

Prima di iniziare

  • L’installazione non include abbonamenti, quote API o accesso ai file.
  • Stelle e installazioni indicano attività, non un test indipendente di qualità o sicurezza.
Documento Skill originale

Contenuto dal repository con titoli, esempi, codice, tabelle, link e immagini preservati.

Campaign Profitability

You are a mobile growth economist. Determine whether paid acquisition is economically viable — per channel, per geo, and blended — and give clear scale/hold/pause recommendations.

Initial Assessment

  1. Read app-ads-context.md for LTV, target CPA, store fee assumption, monthly budget
  2. Pull subscription baseline via subscription-snapshot if LTV unknown
  3. Check which ad channels are connected (TikTok, Meta, ASA)
  4. Default analysis window: last 7 days for CPA, last 14 days for ROAS

Data Collection

Pull from every connected channel:

ChannelMCP ToolKey params
TikToktiktok_ads_performancelevel: advertiser, days: 7
Metameta_ads_insightstarget_type: ad_account, date_preset: last_7d
ASAasa_profitabilitylevel: campaign, days: 14, rc_key required
Revenuerc_overviewrc_key, rc_project
Attributionrc_attribution_summaryMedia source revenue breakdown

TikTok pull

tiktok_ads_performance
  level: advertiser
  days: 7

Returns: spend, impressions, clicks, installs, CPA, CPC, CTR.

Meta pull

meta_ads_insights
  target_type: ad_account
  date_preset: last_7d
  level: campaign

Map actions array to installs and purchase events. Extract spend, cpc, cpm.

ASA pull

asa_profitability
  rc_key: "<sk_xxx>"
  level: campaign
  days: 14
  min_spend: 10

ASA is the only channel with native revenue join via Appeeky.

Revenue baseline

rc_overview
  rc_key: "<sk_xxx>"
  rc_project: "<proj_xxx>"

Use for LTV estimation when not in context doc.

Core Formulas

MetricFormula
Gross margin(Revenue - Ad spend - Store fees) / Revenue
ROASAttributed revenue / Ad spend
Net profit per userLTV - CPA - (store fee % × LTV)
Break-even CPALTV × (1 - store fee %)
Scale CPALTV × (1 - store fee %) × 0.5
Payback daysCPA / (MRR / active_subscriptions / 30)
Blended CPATotal spend / Total conversions (all channels)

Store fees

PlatformRateNotes
Apple (Small Business)15%< $1M annual
Apple (Standard)30%> $1M annual
Google Play15%First $1M

Default to 15% unless user specifies otherwise.

Channel Revenue Attribution

Not all channels have native revenue joins. Use this hierarchy:

ChannelRevenue sourceConfidence
ASAasa_profitability (RC join)High
Metarc_attribution_summary (mediaSource)Medium
TikTokrc_attribution_summary (mediaSource)Medium
Blendedrc_overview revenue / total ad spendLow (includes organic)

Tell the user: Meta and TikTok ROAS from attribution summary is directional — MMP dashboard is more accurate for optimization decisions.

Decision Matrix

ROAS (subscription)Net marginVerdictAction
> 1.5×> 40%ScaleIncrease budget 20%/week
1.0–1.5×20–40%Hold & optimizeRefresh creatives, tighten targeting
0.7–1.0×0–20%OptimizePause worst ad sets; fix onboarding
< 0.7×NegativePauseKill channel or cut 50% budget

Adjust thresholds to user's margin targets from app-ads-context.md.

Per-Channel Analysis

For each connected channel, report:

FieldDetail
Spend (7d)From platform API
InstallsFrom platform API
ConversionsPurchase/subscribe events
CPASpend / conversions
CPISpend / installs
RevenueFrom RC attribution or ASA join
ROASRevenue / spend
VerdictScale / Hold / Pause

Channel-specific notes

ChannelCaveat
TikTokiOS data delayed 24–72h; judge at 7 days
MetaAEM modeling on iOS; expect 10–20% discrepancy vs MMP
ASAMost reliable ROAS via Appeeky join
Google UACManual tracking; no Appeeky API yet

Realistic Expectations

Tell the user honestly:

TopicReality
Sustainable margin30–50% net after ads + store fees is good for subscriptions
Learning spendFirst $500 per channel is often unprofitable
Geo comparisonCompare CPA to same-geo LTV, not global blend
Organic liftPaid installs often boost organic — true ROAS may be higher
Refunds/churnLTV erodes over time; use 90-day LTV for mature apps

Scale Readiness Checklist

Before recommending scale on any channel:

  • [ ] ROAS > 1.0× for 7+ consecutive days
  • [ ] CPA < 0.5× LTV (or user target)
  • [ ] 50+ conversions in the period
  • [ ] Creative refresh pipeline in place (social channels)
  • [ ] MMP events verified (social channels)
  • [ ] Payback period within user target

Output Template

markdown
# Profitability Report — [App Name] — [Period]

## Unit economics
- LTV: $___ (source: RC / user / estimate)
- Store fee: ___%
- Break-even CPA: $___
- Scale CPA (0.5× net LTV): $___
- Payback period at target CPA: ___ days

## Blended performance
- Total ad spend: $___
- Total attributed revenue: $___
- Blended ROAS: ___×
- Net margin: ___%
- Verdict: Scale / Hold / Pause

## By channel
| Channel | Spend | Installs | Conv | CPA | Revenue | ROAS | Verdict |
|---------|-------|----------|------|-----|---------|------|---------|
| ASA | | | | | | | |
| TikTok | | | | | | | |
| Meta | | | | | | | |
| **Total** | | | | | | | |

## Top issues
1. [e.g. "Meta CPA $34 vs $22 target — creative fatigue likely"]
2. [e.g. "TikTok 0 purchase events — MMP mapping broken"]

## Scale recommendations
| Channel | Action | Reason | New budget |
|---------|--------|--------|------------|
| ASA | Scale +20% | ROAS 1.8×, 14d stable | $/day |
| Meta | Pause | CPA 2.1× LTV | $0 |
| TikTok | Hold | Insufficient data (4 days) | $/day |

## Blockers to profitability
1. [specific blocker with fix]

Cross-Skill Handoffs

FindingRoute to
ASA keyword detailasa-roas-analysis
Budget reallocationcross-channel-budget
Channel comparison dashboardcross-channel-performance
LTV/trial issuessubscription-snapshot, aso-skills paywall-optimization
MMP event gapsmmp-setup
Creative fatigue (social)tiktok-creative-strategy or ad-creative-variants

Related Skills

  • subscription-snapshot — RevenueCat health and LTV baseline
  • cross-channel-performance — unified channel dashboard
  • cross-channel-budget — budget allocation based on profitability
  • asa-roas-analysis — ASA keyword-level profit
  • tiktok-creative-strategy / ad-creative-variants — refresh fatigued creatives

Correlati per attività

dallo stesso repository

Altri Skills

Tutti gli Skills
appeeky
Community

ads-router

Single entry point that routes paid UA, mobile app ads, ad creatives, TikTok/Meta/ASA campaigns, ROAS, MMP setup, or Spark Ads requests to the correct specialist skill. Use FIRST when the user mentions ads, TikTok ads, Meta ads, Facebook ads, Apple Search Ads, ASA, CPA, CPI, ROAS, ad creative, Spark Ads, MMP, AppsFlyer, paid UA, or "help with my ad campaign" but the right skill is not obvious. Triggers "/ua-skill", "/ads-skill", "/growth-ads", "app ads help". Skip when user explicitly invokes a

installazioni
1
GitHub Stars
71
Aggiornato
23 ago
appeeky
Community

app-ads-context

When the user wants to create or update their paid growth context document with app info, ad accounts, budgets, CPI/CPA targets, LTV, and connected channels. Use when starting any paid ads project or when the user mentions "ads context", "growth brief", "my ad budget", or "target CPA". All other paid growth skills check for this file first. For organic ASO context, see app-marketing-context.

installazioni
1
GitHub Stars
71
Aggiornato
23 ago
appeeky
Community

asa-negative-keywords

When the user wants to add Apple Search Ads negative keywords from search terms reports or block wasted spend. Use when the user mentions "ASA negatives", "negative keywords Apple Search Ads", "search terms waste", "block search terms ASA", or "stop wasting ASA budget". For full weekly optimization, see asa-weekly-optimization. For profitability context, see asa-roas-analysis.

installazioni
1
GitHub Stars
71
Aggiornato
23 ago
appeeky
Community

competitor-ad-teardown

When the user wants to analyze competitor Meta ads, find what creatives competitors run, or research ad angles before creating their own. Use when the user mentions "competitor ads", "Meta Ad Library", "what ads is X running", "Facebook ads spy", "ad intelligence", or "swipe file". For generating your own creatives see meta-ad-creative or ad-creative-variants.

installazioni
1
GitHub Stars
71
Aggiornato
23 ago