Skip to main content

User assessment for realtime client decisions

A key part of turning users into happy paying customers is to guide them the right way at the right time. Upollo's realtime assessments give your client application the information required to do this.

This example shows how you can nudge a user who is account sharing. We will warn the user on login that others are using their account, and also remind them of benefits they can receive if they invite their friends to create accounts. A similar process can be applied in various other situations.

The core steps are as follows:

  1. Assess: Have your client application inform Upollo of the event which is taking place.
  2. Analysis: Identify relevant flags in the AnalysisResponse Upollo responds with.
  3. Action: Present the user with information which encourages splitting the account.

Prerequisites

The steps below assume you:

  • Are already signed up for Upollo.
  • Have imported the relevant Upollo Client Library into your application.
  • Understand the basics of sending an event to Upollo.

The Quick Start shows how to do all of this. If you have not already, you may wish to read through and follow its guidance first.

Step 1: Assess

If you followed the Quick Start, you will already be familiar with tracking EVENT_TYPE_LOGIN_SUCCESS events. To get back realtime information your client application can act on, issue an assess() call instead of track().

The resulting code is shown in the next step, along with processing of the AnalysisResponse that assess() produces.

Step 2: Analysis

After calling assess(), you can then inspect what flags appear on the result. Tailor your application's behaviour appropriately if the user is flagged for ACCOUNT_SHARING.

// Replace 12345 and person@example.com with the real ID and email of your user.
const analysis = async userwatch.assess(
{ userId: 12345, userEmail: "person@example.com" },
EventType.EVENT_TYPE_LOGIN_SUCCESS
);
const flagTypes = analysis.flags.map(x => x.type);
if (flagTypes.includes(FlagType.ACCOUNT_SHARING)) {
// Display a special message for the user who is account sharing.
// See Step 3 for suggestions.
}

Step 3: Action

Finally, you need to communicate with those users who are identified as account sharing. Your UI norms will guide how best to do this, but consider a message such as:

Warning: Multiple people may be using your account. We recommend changing your password.

If you know others who would enjoy using this product like you do, consider sending an
invitation by the following link. You will each receive $10 of credit toward your
subscription:

https://www.example.com/invite?token=mV5mU4r8VcWthcoHbXvDIg

The discount for creating new accounts is designed to help overcome the users' unwillingness to pay. For more information on this topic, see Grow by Understanding Account Sharing.

Conclusion

This example has shown how Upollo lets you communicate with people on a shared account, and guide them toward separate accounts.

One additional consideration is that some individual users will use multiple email addresses to try and repeatedly gain the $10 or even full $20 of value for themselves, maybe even creating new email addresses to do so repeatedly. Upollo can detect and help you address that too. The example on Token verification for realtime server decisions shows how.