One of my missions is to get every entrepreneur we work with on their web app onto USERcycle.
USERcycle provides a Pirate Metrics dashboard, lifecycle messaging, and cohort-based long-term effect A/B testing.
Today I integrated USERcycle into Student Source.
This post is an overview of my process.
What are your user types?
If you have a multi-sided marketplace, you really have multiple apps. We like to track each user type in its own USERcycle instance, so the metrics for all user types are not blended.
What do you want "activated" to mean?
USERcycle has a special event "activated" that you will send, based on your own criteria.
For Student Source, we'll consider students activated after they've signed up, filled out their profile, and viewed a job posting. Employers will be activated when they've signed up, filled out their profile, and posted their first project.
These are fairly high bars to set, and our conversion won't be nearly as high than if we just set activated to "filled out profile" but the point here is not to create a new vanity metric.
We want to ensure users are getting to the point where obtaining value is possible.
What custom events are important to you?
It's not critical to do anything more than setup standard USERcycle events: "signed_up", "activated", "came_back", "upgraded", "downgraded", "billed", "referred", and "canceled".
And taking this further, I advise taking an iterative approach, getting each event working in production before moving on to the next one.
For StudentSource, I started with "signed_up" and "activated". "came_back" event gets pushed automatically with use of the Javascript API.
Which integration library should you use?
Rather than using the standard USERcycle Javascript API, I'm using Segment.io's Analytics.js which will allow the same work to apply to other services, or provide an easier switch some day if we decide to use a different system.
How to get started with lifecycle messaging?
With events setup and tracking into the dashboard, now it's time to turn to lifecycle messaging.
USERcycle allows you to trigger messages based on events, as well as when time passes after one event occurs, but another doesn't.
For example, if a user signs up but doesn't activate, you can trigger a series of messages. You can get even more granular with custom events, like sending an email if the user filled out their profile, but didn't upload a photo as part of that process.
Once again, this should be an iterative process. Get your most important messages loaded and operational as soon as possible, then add more based on your results.
How can you do A/B testing better?
Finally, USERcycle provides a unique A/B testing feature. Many A/B tests track only short-term results. "Which version of the sign up page yields more sign ups?" is only part of the question. Which version of that page yielded more account upgrades, or revenue events?
With USERcycle, each variation gets their own cohort, and can be tracked through the entire user lifecycle.
We have seen instances where one variation yields a higher conversion higher in the funnel, but the metrics switch deeper in the funnel, leading to more revenue than the option that looked good on the surface.
Need help with your integration?
Differential is a USERcycle integration partner. If you have a SaaS web app, and would like to get a high-level Pirate Metrics dashboard, lifecycle messaging, and smarter A/B tests integrated into the app, drop me an email.