Subscription attribution guide



If your app offers subscription-based features, you can record subscriptions and subscription renewals with AppsFlyer.

Recording subscriptions can help you calculate revenue and ROI, as well as highlight successful campaigns. By gathering subscription related data, you can decide which subscriptions offer more value, and which media sources bring more subscribing users.

Ways to record subscription events

There are two ways to record subscription-related events in AppsFlyer: Server-to-Server Events and In-App Events (sent directly from the app). Each approach has its advantages and disadvantages which are discussed in the table below. This can help you decide which approach suits you better.

Topic Server-to-Server In-App Events
Event dependence on the app

The event is sent from the server and is not dependent on the app to be launched.

The event is sent from the app which means that the app must be launched



  • Requires backend logic to handle subscriptions
  • Requires backend logic to send events to AppsFlyer using API
  • Implemented using the SDK
  • Can be implemented once in the app for all users
Data accuracy


  • The event is sent in real-time at the time of subscription creation or renewal
  • When sending a set of events simultaneously, you still have control over the event timestamp
  • Accurate subscription and subscription renewal timestamps
  • Accurate revenue data


  • Events are only sent when the app is launched
  • Subscription time and event time might differ
  • Less control over the event
  • Some events might be missing
  • Revenue data might not be accurate
Identifying subscribing users
  • Requires you to cross-reference data in order to identify the actual user for whom a subscription was renewed


  • Easy to identify the user for whom a subscription is created or renewed
  • The SDK allows you to easily identify the user


Was this article helpful?