Machine Learning

Recursive Traversal of User Transmission Trees

Estimating the overall influence of users on a user referral program by terminating indirect referrals

About Data Science

Within most modern software products, there is an opportunity for users to refer/promote the application to other users. A natural question to ask about these referral programs is: “who is our strongest brand advocate?” One foolproof way to answer this question is to simply count all the referrals made by each user, and declare the user with the most referrals to be the most influential.

This approach misses important points. Namely:

  • A user is not rewarded for referring an influential user. That is they do not get credit for referring a user who refers many users
  • No reward for high paying referring users. This way, a user can refer someone who pays very little, and be considered as influential as another high-spending referrer.

Because of that, we will be looking at another way of looking at this problem. Instead we will be taking an iterative walk down the user referral graphs to calculate both the weighted and unweighted result of the user referrals.

Defining a User Routing Tree

A user referral tree a representation of how users recommend a product or service to others, usually visualized as a directed graph. In this tree:

  • Nodes represent individual users.
  • The edges represents a referral relationship, where a directed edge from user A to user B indicates that user A is transferred by user B.

Let's use the following forwarding tree as an example:

A simple user referral tree (author's photo)

Here we can see that there are a total of 4 users in this tree: User A, B, C, and D. We can interpret arrows as one user directing another user to a product. Thus, user A refers to two users, User B and User C. In turn, User C refers to one user himself: User D.

Toy data

Let's imagine that we are analyzing a SaaS product that sells subscriptions to a television service. There are three subscription tiers: basic ($10), full ($20), and pro ($50). User referral data for this product looks like this:

Seeing this data, we end up with directed and disconnected graph structure that looks like this:

Example of a user referral tree (photo by author)

Analysis

Using our example data, if we were to use the number of direct referrals as a measure of user influence, we would end up with the most influential user D (3 direct referrals). However, considering what we can see in the graph, we have reason to believe that this may be misleading. Let's explore other ways to approach the problem, using an iterative walk down the “referral tree” for every given user.

The basic algorithm

Basic user referral algorithm (author's photo)

Here, we simply count the number of direct referrals the user has mentioned, and multiply the number of referrals for each of these direct referrals you have given. This rewards users who refer users who refer more users.

In this way, our most influential user (the one with the most referrals associated with the stream) is User I, whose full referral tree includes 5 users.

  • User A = 2, User D = 4, User I = 5, User F = 1, User J = 1, User K = 2

Estimating the algorithm

Weighted revenue for user referrals (author's photo)

With the previous approach, we gained a better understanding of the overall impact of a given user's referral. That approach failed to account for the quality of each transfer. For the quality of referrals, we will be using the amount of income generated by a particular user. This amount of income will be used as a “weight” for any given referral.

As we can see, our most influential user in this way is still User I, considering the amount of income that the user directly or indirectly refers to.

  • User A = $70, User D = $60, User I = $140, User F = $20, User J = $10, User K = $100

Reducing the algorithm

Decomposed user transfer variable (photo by author)

Both of the previous methods helped us better understand the overall impact of user referrals. To take this one step further, we can also consider the fact that indirect referrals (i.e. referral referrals) are less affected by that original user. To correct this fact, We can “decay” or reduce the amount of attribute received by the user as the transmission layers progress. There are many options for what this decomposition function could look like, but it will be kept simple here for the purposes of our example. We will simply use the fraction of 1 divided by the current layers of the range.

In this case, we end up connecting between User D and User I.

  • User A = 2, User D = 3.5, User I = 3.5, User F = 1, User J = 1, User K = 2

Putting it all together

Joining all the parts in a single cutting method (author's photo)

Now all three techniques (multiplicative counting, income weighting, and impact decay) can be used in conjunction to get the full picture which user has the most influence on our referral tree.

Surprisingly, we now find that User K is our strongest referrer. Even though they only target a few users, the total net income of those users is more than any other user. This is the weighted effect decay and is why User I has stopped having a large effect (most of the weighted effect is indirect)

  • User A = $70, User D = $50, User I = $85, User F = $20, User J = $10, User K = $100

The conclusion

Accurately measuring the impact of users on a referral program goes beyond simply counting direct referrals. By using iterative traversals down user referral trees, including revenue weights, and using decomposition factors, we gain a deeper understanding of the specific impact of users.

This method rewards users not only for the quantity but also for the quality of their referrals, accounting for both the income earned and the negative impact of their tree. It highlights the importance of a holistic view when evaluating the impact of referrals, ensuring that users who contribute to the long-term growth and profitability of the tree are properly recognized. Note, the methods presented above are only intended to serve as a starting point, and there are potentially endless ways to adjust the above to arrive at an attribution system that best reflects your product.

In these ways, referral programs can be developed to become influential user patterns, and motivational structures associated with growth in this area. Ultimately, this refined measure ensures proper attribution and helps open up a clearer picture of referral-driven growth.

Source link

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button