How to implement referral program in mobile Apps for both Android and iPhone

We have a mobile app that's available in both Google Play Store and Apple AppStore, we want to implement a referral program to get more users to install and use our App.

Here's the user story:

  • Every new user (E.g John) is given to a unique referral link, where he/she can share to FB/TW/Email or SMS.
  • When John friend clicks the link, they are directed to respective AppStore base on their device.
  • The moment John's friend install the app and open the app, our server should get notified, and we shall know that the referral is from John, John will be rewarded accordingly.

We have evaluated a number of Mobile App Install Tracking Tools, most of the tools are the best use in the Publisher/ Mobile Advertisement.

Appreciate any comments, suggestions

Cheers James


  • We are doing a similar type of referral system in our app which provides certain amount of Reward Points to the referrer (one who actually shared the link to app) on successful install of the app by new user (one who received the link).

    I will try to explain our implementation using your scenario: So according to your user story:

    • Every new user (E.g John) is given a unique referral link, which he/she can share it to his friends using FB/TW/Email or SMS.

    • When John's friend clicks on the link, he is re-directed first to a Servlet which eventually redirects him to respective AppStore based on his platform (Android/iPhone) to download the app.

    • Note that we can find out the IP address, user agent and device model of the user who clicked the link using a Servlet.

    • We already know that the referral link belongs to John and hence the servlet maps the IP address,user agent and/or device model of John's friend to John's entry in database.

    • The moment John's friend installs the app, and opens the app, the application sends the IP address, user agent and/or device model to the server.

    • The server checks the entry against all the user to find the referrer and if it finds him, in our case John, John gets rewarded accordingly..

    Thats it. We implemented this in the last month itself and it does increased our downloads. Let me know if that's helpful.