You are running paid ads for a subscription app, RevenueCat handles your purchases, and you want to know one thing: which campaign produced which paying user. After ATT, that join is hard — the ad networks no longer see a device-level identifier they can match. The good news: for RevenueCat apps you can rebuild it server-side, with a tracking link and a webhook, and no SDK in your app.
Why it is hard without an SDK
A purchase arriving at RevenueCat is anonymous from the ad network's point of view. There is no shared identifier that ties it back to the click. Traditional MMPs solve this by embedding an SDK that fingerprints the device. MakeRVN takes the opposite path: it never touches your app binary and instead reconstructs the join from a click plus RevenueCat's own webhook.
The webhook-first setup
- Create a tracking link per channel (makervn.app/go/<slug>). The link encodes the campaign and platform. Use it as your ad's destination URL.
- Connect the RevenueCat webhook: paste the URL and authorization value from Integrations into RevenueCat. Every trial, purchase and renewal now flows to MakeRVN.
- Optional, recommended: add two lines on first launch that pass the click id to RevenueCat, so each purchase is matched to the exact ad and creative.
That is the whole integration. On a purchase, MakeRVN matches the event back to the click (deterministically via the click id, or by IP and a time window when it is absent), then forwards the conversion server-side to Meta Conversions API or TikTok Events API so the ad algorithm can optimize.
What you get
- Every purchase attributed to a campaign, with revenue, in real time
- Server-side conversions to Meta and TikTok — Purchase for a payment, StartTrial/Subscribe for a free trial
- No SDK, no app update, live in minutes
The click tells you the campaign. RevenueCat tells you the money. MakeRVN joins them — and pays for itself the moment your ads start optimizing on real conversions.
Pricing is pure usage: the first 50 attributed conversions are free, then €1 each, with no monthly base fee. So you can validate the whole pipeline before you ever pay.