GTM Sauce

Sub Club by RevenueCat · 2024-04-03

Scaling Your Subscription App with Meta Ads – Marcus Burke, Independent Consultant

Meta ads consultant Marcus Burke explains why Meta is a first channel for subscription apps, how ATT and SKAN 3 changed it (pre-ATT at InnoGames budgets doubled monthly), and his playbook: consolidated campaigns, optimize for trial start, exclude under-25s early, manual before Advantage+, wait a week on SKAN data, placement-specific creative, a separate creative-testing campaign in live markets, onboarding surveys plus incrementality for scrappy modeling, and SKAN 4/AEM outlook.

Play the episode

17 tactics

InnoGames · B2C · German strategy games studio

Doubled budget month after month while beating ROI targets (pre-ATT)

At InnoGames from ~2012-2013, scaled Meta by jumping on each new product: app event optimization, then value optimization. With these on, no manual targeting was needed; pushed out many creatives and let Meta find the buyers.

Workedpaid-social
Sub Club by RevenueCat · 2024-04-03

Practitioner pattern · Marcus Burke (Sells Meta ads consulting to subscription apps and plans a paid Meta ads email course)

Keeps each campaign above SKAN's 88-installs-a-day threshold so Meta sees trials

Run one campaign with one ad set rather than e.g. 10 campaigns x 50 ad sets, so all signal trains one algorithm. Add only the splits you need (e.g. by country, since the US is worth more than Brazil). Add campaigns/ad sets as spend grows. This also helps pass the SKAN 3 privacy threshold of 88 installs per day per SKAN campaign ID (Meta may create hidden IDs per placement). Don't layer interest targeting.

Workedpaid-social
Sub Club by RevenueCat · 2024-04-03

Practitioner pattern · Marcus Burke (Sells Meta ads consulting to subscription apps and plans a paid Meta ads email course)

Apps with a trial in onboarding weathered SKAN better than games

Pick the conversion event closest to business value; for a subscription app that is the trial start. Put the trial in onboarding so it fires within the SKAN window, and make it the highest-value event in the SKAN conversion schema. Delayed-monetization products (e.g. strategy games) struggle because big purchases fall outside the window.

Workedpaid-socialanalytics-attribution
Sub Club by RevenueCat · 2024-04-03

Practitioner pattern · Marcus Burke (Sells Meta ads consulting to subscription apps and plans a paid Meta ads email course)

SKAN data arrives 2-3 days late; early reads show spend with zero trials

SKAN 3 postbacks arrive 2-3 days late, so for the first two days a new campaign may show e.g. $5K spent and zero installs. Match postbacks to the spend from 2-3 days earlier, and wait at least a week before evaluating so the algorithm has had data to work with. Don't shorten a trial (7 to 3 days) just to get faster reads if the longer one converts 5-10% better.

Unknownanalytics-attributionpaid-social
Sub Club by RevenueCat · 2024-04-03

Practitioner pattern · Marcus Burke (Sells Meta ads consulting to subscription apps and plans a paid Meta ads email course)

Young users give cheap trials that rarely convert; age is the biggest lever

Start broad otherwise: choose core markets, no interest targeting, but exclude users under 25 (sometimes under 30, depending on the app). Under-25s have low CPMs and give cheap trials, so Meta loves spending on them, but trial-to-paid is very poor. Broaden to 25+ or lower only once you have conversion data by age. Older users convert better because they have more money.

Workedpaid-social
Sub Club by RevenueCat · 2024-04-03

Practitioner pattern · Marcus Burke (Sells Meta ads consulting to subscription apps and plans a paid Meta ads email course)

Guest's standard setup; no numbers given

Start with manual campaigns: separate ad sets per country, younger age groups excluded. Be skeptical of 'recommended' Advantage+ automation, which maximizes Meta's reach and works best when the conversion event is close to revenue (a purchase, not a trial). Later in the account's life, layer on fully automated campaigns with a lower cost-per-trial target to reflect the lower conversion of the broader audience.

Unknownpaid-social
Sub Club by RevenueCat · 2024-04-03

Practitioner pattern · Marcus Burke (Sells Meta ads consulting to subscription apps and plans a paid Meta ads email course)

Guest says most accounts miss this; no numbers given

Don't compare creatives only on overall cost per trial (e.g. €10 vs €15); break results down by placement, age and gender in Ads Manager. Audiences differ: Instagram Reels is younger, lower intent and TikTok-like; Instagram Feed is higher quality but pricier; Facebook is older with more purchasing power. Use each app yourself and make ads that match that placement's native content.

Unknownpaid-social
Sub Club by RevenueCat · 2024-04-03

Practitioner pattern · Marcus Burke (Sells Meta ads consulting to subscription apps and plans a paid Meta ads email course)

Guest says matching the ad often lifts conversion; no numbers

Use Meta as the experimentation channel for angles, copy and styles, then carry winners into the rest of the funnel. Often as simple as reusing the winning ad as the App Store preview video or a screenshot, so people who click through see they landed in the right place.

Workedasopaid-social
Sub Club by RevenueCat · 2024-04-03

Practitioner pattern · Marcus Burke (Sells Meta ads consulting to subscription apps and plans a paid Meta ads email course)

Common mismatch: young Reels traffic won't pay $80-90 a year

If the best audience is e.g. women 35-44 on Facebook with a certain creative, tailor onboarding: show reviews from that demographic. If you drive UGC-style Reels traffic (portrait, <30s, person talking to camera), it skews young and low-intent, so a high price like $80-90/year will struggle; sync paywall and pricing with the placements and ads you run.

Unknownonboardingpricing
Sub Club by RevenueCat · 2024-04-03

Practitioner pattern · Marcus Burke (Sells Meta ads consulting to subscription apps and plans a paid Meta ads email course)

Gives sample data per channel and age where SKAN misses up to ~50% of trials

Because Meta passes no user-level data and SKAN often underreports ~50% of trials, add onboarding questions: age, gender, and 'Where did you hear about us?'. Use answers as samples, not one-to-one attribution (users name their first touch, e.g. a friend). Compare value by channel (Meta vs TikTok vs organic) and by age band against Meta's age/gender reporting, e.g. if 45-54 is 5x more valuable than 18-24, check whether the 18-24 cost per install is really 5x lower.

Workedanalytics-attributiononboarding
Sub Club by RevenueCat · 2024-04-03

Practitioner pattern · Marcus Burke (Sells Meta ads consulting to subscription apps and plans a paid Meta ads email course)

Scrappy model most small and mid-size teams use; no numbers

Three inputs: (1) incrementality: switch ads on/off and watch the baseline (e.g. $2K/day on Meta lifts baseline 50%), easiest for small apps with little organic; (2) the ATT opt-in sample matched to channels; (3) the 'Where did you hear about us?' survey. From these, set cost-per-trial targets per channel (e.g. Meta worth 2x TikTok) and by country and age. Then check actual payback against the model (e.g. at $50K/month, is payback really day 8?) and revisit after ~3 months.

Unknownanalytics-attribution
Sub Club by RevenueCat · 2024-04-03

Practitioner pattern · Marcus Burke (Sells Meta ads consulting to subscription apps and plans a paid Meta ads email course)

Most 10-20 person client teams run without one; no numbers

You don't need an MMP to run Meta: implement the Meta SDK, set the SKAN model there and track the trial event. For a small developer, extra tooling is another breaking point and becomes a cost center once free tiers run out. Use subscription analytics (e.g. RevenueCat) for trial-to-paid by country to feed the model.

Unknownanalytics-attribution
Sub Club by RevenueCat · 2024-04-03

Practitioner pattern · Marcus Burke (Sells Meta ads consulting to subscription apps and plans a paid Meta ads email course)

Protects the main campaign from resets; results carry over better

Never upload untested creatives into the scaled campaign: any change resets the learning phase and causes swings. Run a separate testing campaign that mirrors the scale setup: same optimization event (trial, not install) and one of your live core markets (the cheapest of them), not cheap unrelated markets like Thailand or Mexico where nobody knows the brand. Move only proven winners into the scale campaign. Fewer, more deliberate creative bets than pre-ATT.

Workedpaid-socialexperimentation
Sub Club by RevenueCat · 2024-04-03

Practitioner pattern · Marcus Burke (Sells Meta ads consulting to subscription apps and plans a paid Meta ads email course)

Use the placements yourself (including Facebook, which skews older with more purchasing power) and study what non-ad content people engage with, not just competitor ads. Follow a broad spectrum of news sites outside your bubble on Instagram and Facebook (e.g. Fox News) to see headline styles, how clickbaity they are and image styles, then tailor ads to feel native.

Unknownpaid-social
Sub Club by RevenueCat · 2024-04-03

Practitioner pattern · Marcus Burke (Sells Meta ads consulting to subscription apps and plans a paid Meta ads email course)

AEM helped high-CPI apps below SKAN thresholds, but it's a black box

Aggregated Event Measurement gives instant, modeled (IP-matching) postbacks and helps high-CPI advertisers who can't pass SKAN privacy thresholds. But it's a black box Apple could shut down. Keep the account foundation and evaluation on SKAN, which is future-proof and improving (SKAN 4 lowers the threshold to ~20 installs/day and adds two more postbacks), and use AEM campaigns for extra scale when they perform.

Mixedanalytics-attributionpaid-social
Sub Club by RevenueCat · 2024-04-03

Practitioner pattern · Marcus Burke (Sells Meta ads consulting to subscription apps and plans a paid Meta ads email course)

Guest's default channel order; no numbers given

Meta is usually one of the first channels to launch: it has volume and represents the audience you'll target later, and good creative is a competitive edge; it also tracks iOS better than Google Ads. Apple Search Ads buys high-intent traffic (someone searching 'weather app'), useful for validating funnel and pricing without worrying about ad quality, but it's competitive and doesn't scale.

Unknownpaid-socialapple-search-ads
Sub Club by RevenueCat · 2024-04-03

Marcus Burke consulting · B2B · Meta ads consultancy

Built a large backlog of consulting clients; no numbers

Posts tactical Meta ads, web-to-app, paywall and onboarding advice on LinkedIn daily; plans to add digital products such as an email course.

Workedfounder-brand
Sub Club by RevenueCat · 2024-04-03

Numbers mentioned

WhoMetricValueContextWhen
Metausers4,000M users/month
approximate
Monthly active users across Meta's family of apps, including WhatsApp (not buyable via Ads Manager)2:18
aggregateContent in Meta feedsshare50%
estimate
Share of feed content that is ads or influencer product placements (guest's impression)7:15
InnoGamesad spenddoubled month after month while beating ROI targets
approximate
Meta budget growth after turning on app event optimization and value optimization, pre-ATT11:04
benchmarkSKAN 3 postback delaytime to milestone2–3 days
approximate
Time for SKAN 3 postbacks to arrive; match them to spend from 2-3 days earlier18:57
benchmarkSubscription app trial-to-paid conversionconversion rate30–50%
approximate
Trial -> paid; why optimizing Meta for trial start is a weaker signal than a D2C purchase21:51
benchmarkSKAN 3 privacy threshold per SKAN campaign IDdownloads88 installsper SKAN campaign ID /dayMinimum daily installs to receive postbacks with conversion values under SKAN 326:02
benchmarkSKAN 4 crowd anonymity threshold, per early AppsFlyer datadownloads20 installsper SKAN campaign ID /day
estimate
Down from 88 under SKAN 353:15
benchmarkMinimum time before evaluating a new SKAN campaign on Metatime to milestone7 days
approximate
27:25
benchmarkMinimum age for Meta targeting of a new subscription appcount25–30 years of age
approximate
Exclude users below 25 (sometimes 30) until trial-to-paid by age is known; '25+ is kind of the best practice in the industry'29:53
aggregateMeta trials reported via SKAN vs actualshare50%
approximate
Share of trials underreported by SKAN, 'often around even 50%'39:43
benchmarkAnnual price too high for young Reels/UGC trafficpriceUSD 80–90/year
illustrative
Example of pricing that won't convert younger, lower-intent Reels traffic36:16
aggregateMarcus Burke's subscription app clientsteam size10–20 people
approximate
Typical client team size; most lack sophisticated attribution tooling43:34
Metashare40%
approximate
Share of Meta's SKAN postbacks on SKAN 4 in February 2024 (Singular tracker); later fell back to ~20%56:12
RevenueCatcustomers30K developers
approximate
46:24