How to detect and convert users sharing accounts
So you have built an awesome subscription service and have a bunch of subscribers, but many of your users are sharing their account between multiple people. For example,sharing one account between friends, or perhaps an entire office using a single shared account rather than paying per user. In this guide, we show you how to use Upollo's real time analysis to detect if the user logging in is sharing the account, and if they are, show a gentle nudge to upgrade to their own account.
Prerequisites
- Be signed up to Upollo at app.upollo.ai/login. You will be able to add tracking while on the free plan but real time analysis will require the growth plan.
- Add the Upollo libraries to your project and track events by following the quick start instructions.
Step 1: Track events
The first step to detecting account sharing is to send user events to
Upollo. If you completed the quick start instructions you
should have already added some events, and in particular, a good one to
make sure you have added for account sharing is the
EVENT_TYPE_LOGIN_SUCCESS
event.
// When the user successfully logs in
upollo.track(
{ userEmail: "person@example.com" },
EventType.EVENT_TYPE_LOGIN_SUCCESS
);
Step 2: Respond to analysis
Once you have added tracking to find out how many customers are sharing accounts, the next step is to convert some of these customers into happy paying customers with their own accounts.
One of the best ways to initially respond to users who are sharing accounts is to notify them that they have been account sharing. This can be an awkward conversation to have, but if you follow our tips for communication with customers, it can be done in a non accusative way that results in converting more happy paying customers. For more see best practice for reducing account sharing.
Notify the customers
First, you need to decide when to show an upgrade prompt to the user,
and then use our assess
API to access the analysis information that
will contain whether the user is account sharing. For example, if you
would like to show the prompt when account sharing users login, call
assess
with the EVENT_TYPE_LOGIN_SUCCESS
event type, and show the prompt if the ACCOUNT_SHARING
flag is present in the result.
const analysis = async upollo.assess(
{ userEmail: "person@example.com" },
EventType.EVENT_TYPE_LOGIN_SUCCESS
);
const flagTypes = analysis.flags.map(flag => flag.type);
if (flagTypes.includes(FlagType.ACCOUNT_SHARING)) {
// You will want to design this dialog based on your UI
openAccountSharingDialog();
}
The following image provides an example of a dialog that could be shown to a customer to get them to register for separate accounts.
Testing
To test your integration you can use an email address with +account_sharing
in it (eg foo+account_sharing@example.com
), this will
return a response with the ACCOUNT_SHARING
flag.
Next steps
Congratulations, you are now letting users know when they are account sharing, suggesting an appropriate product for them, and converting them into being happy paying customers. Some next steps may include showing the notification for events other than login, limiting the number of devices that can be logged in at once, or reaching out to these customers with your sales team to help find a plan that works for them.