Integrations
AppRefer attributes each install to the ad that brought it, sends your conversions back to that network from the server, and imports ad spend so you can see cost and ROAS next to revenue.
Choosing between AppRefer and a separate attribution tool? Read our AppsFlyer alternative comparison.
Ad networks
Each network is set up per app, in the dashboard under Settings → Integrations, with the REST API (PATCH /api/v1/apps/{appId}/integrations/{network}, scope integrations:write) or with the MCP tool configure_integration. Credentials are encrypted at rest and masked on every read.
| Network | Attribution signal | Conversions sent | Spend sync | Guide |
|---|---|---|---|---|
| Meta | fbclid on /api/c/ links, plus the browser fbc/fbp | Conversions API (dataset), for app and website events | Yes, per ad account, in the account's currency | Meta |
| Google Ads | gclid on the /g/ landing page or Google Play Install Referrer | Data Manager API, one conversion action per event | Yes, per Customer ID | Google Ads |
| TikTok | ttclid on /api/c/ links | Events API (pixel) | Yes, per advertiser, in the advertiser's currency | TikTok |
| ChatGPT Ads (beta) | oppref on the /o/ landing page | OpenAI Conversions API | Yes, USD ad accounts only, for listed campaign IDs | ChatGPT Ads |
| X Ads | twclid on the /x/ link (website funnels only) | Web Conversion API, verified website receipts only. Off until you enable it | No | X Ads |
| Apple Ads | Apple AdServices token, sent by the iOS SDK on first launch | None (Apple has no conversions API) | Yes, from the Apple Search Ads API | Apple Ads |
| SKAdNetwork / AdAttributionKit | Anonymous postbacks from Apple | Conversion values, set on the device by the SDK | No | SKAdNetwork |
Purchases and support
| Integration | What it does | Guide |
|---|---|---|
| AppRefer Billing | App Store, Google Play and Stripe subscriptions verified by AppRefer itself. Every purchase, trial and renewal is attributed and forwarded like any other conversion. | Billing setup |
| RevenueCat (legacy) | Purchase webhooks for apps that still use RevenueCat. New apps should use AppRefer Billing. | RevenueCat |
| Superwall (legacy) | Purchase webhooks for apps that still use Superwall (network superwall, field webhookSecret). | |
| Support delivery | Push (APNs, FCM) and email settings for AppRefer Support replies live on the support integration, not on an ad network. | Support |
How forwarding works
- The install is attributed to one network, or to organic. See Attribution.
- A conversion arrives: an install or an event from the SDK, a purchase or trial from AppRefer Billing (or a legacy RevenueCat or Superwall webhook), or a verified receipt from your payment backend (website payments).
- Tracking consent is checked on every send. An install whose user denied tracking is never forwarded. While the user hasn't answered the iOS prompt yet, conversions are held for about 6.5 hours and sent if they allow it. See Privacy.
- The event is routed. An attributed install only ever reaches its own network. Organic and unattributed conversions go to every connected Meta, TikTok and ChatGPT Ads integration, and to Google only when a
gclidis known, so each network's optimisation sees the full picture. X and Apple Ads never receive organic events. - The event name is mapped to the network's own event. Meta and TikTok only receive events with a default or custom mapping, or that already use one of their standard event names; other in-app events (
app_opened,paywall_viewed…) are dropped. Google only receives events mapped to a conversion action, and X only events mapped to an X event ID. - It is sent from the server with a stable event ID and the original click ID. Failures are retried automatically with the same event ID, so the network can deduplicate, and every attempt is logged.
Test data is never forwarded
Events sent with apk_test_ key and App Store or Google Play sandbox purchases are recorded for debugging but never sent to an ad network.Test a connection
In Settings → Integrations, pick Meta, Google Ads, TikTok or ChatGPT Ads and click Test Connection. Google and ChatGPT Ads run a validate-only request that records nothing. Meta and TikTok send one test event: set a Test Event Code first so it lands in the network's Test Events view, otherwise it counts as a real event.