It’s a frequent question, asked in a variety of ways. Here are two:
- How do you measure user engagement?
- What user events should I be capturing?
I’ve been making events happen in large businesses like PlayStation and Rakuten since 2012. I estimate I’ve had a hand in over 1 trillion events being sent.
Even at high scale, events boil down into about 6 types. I’ll give a quick runthrough of each and a small taste of their benefits.
Let’s dive right in:
The Page View
The page view is the most basic unit of app analytics tracking. It’s incredibly versatile.
In almost every analytics tool, this is what you get by dropping in the standard snippet of code. The ROI of dropping in that code is huge given how many benefits there are and how little effort it takes.
Let me divide up some benefits into pre- and post-conversion.
Prior to conversion, when you’re looking at content viewed by prospective customers, you can see a few things quickly.
- You can see where customers are landing, and where they most commonly navigate to next. That tells you what pages are valuable.
- Even without any additional events, you can look at the number of people who reach your checkout/signup page, and even how many people have purchase confirmations or start using your app, and get a rough conversion rate with no additional effort.
After signup, you want to focus on what your newly onboarding customers are doing.
- What proportion of customers proceed to do something important right away to get value out of your product?
- How many fall out of the funnel right there instead?
- Do any customers come back later and do that important thing?
- Are there patterns in where users navigate? Are they missing content that’s really important to their success with your product?
Just looking back up at those sets of bullets, that’s a lot of goodness to get out of the humble Page View.
As the wise Amy Hoy writes, “stay close to the money.”
The Purchase event lets you do that.
But wait, I hear you say. Can’t I get this from Stripe?
In some cases, yes. When you want to examine your MRR or ARPU, I definitely recommend looking at Stripe or Baremetrics. In fact, I’ve written before about the difference between Stripe/Baremetrics and Google Analytics for revenue metrics.
But there are a ton of other ways you need to examine your revenue. In those cases, you benefit from having (at least some) transactions in your analytics tools:
- Which campaigns lead to trials/subscriptions more often?
- What kind of feature usage correlates with converting from trial to paid?
- Do users who churn have something in common?
- What errors or app failures are costing me money?
These questions all have in common the need for analytics data, such as tagging marketing campaigns individually, capturing feature usage, or capturing errors.
A campaign code lets you organize all your inbound traffic, so that you can categorize (and understand) all your efforts to gain traffic.
Tiny technical sidebar: in code, campaigns don’t get their own event. They are properties added to existing events, particularly Page Views and purchase events.
Suppose you have four major ongoing efforts to gain traffic:
- An email list
- Facebook ads
- Reddit non-paid posting (e.g. your own posts/comments, starting a community subreddit, etc.)
- Reddit paid ads
If you use campaign codes on all of the links from those efforts back to your app, you can then slice and dice all of them to know what’s most valuable, and when and where.
It may seem like a lot of work, but it lets you answer really valuable questions like:
- Which efforts drive the most eyeballs and awareness?
- Which efforts drive conversion most effectively?
- Among my paid ads, which service is more economical?
In the classical analytics world, lots of people call this “clicks” – what are people clicking on and interacting with on the screen?
At PlayStation we started calling them User Interactions because most of the time, our customers don’t use mice.
More importantly, this is a totally standard event that lets you see what happens on the page. If you have a submittable form and a video trailer, you can find out which one your users interact with more often.
And by combining this event with the Purchase event I from above, you can find out if one is more valuable to conversion than the other.
Error events can be a life-saver, even if you already have infrastructure monitoring in place.
If there’s an error that faces the user, that’s a great time to send an event with it.
This lets you do three super important things:
- When a customer is logged in, you can know who is experiencing a problem, so you can proactively reach out to them.
- If your visitor is a prospective customer, you can find out if/when there’s something blocking them from giving you money
- If your tool has real-time support, you can monitor this metric and be aware of increasing problems. (Shout out to fellow indie creation GAInsights for linking that monitoring to your Slack instance!)
I admit, it’s a bit of a cop-out to have a listicle of 6 event types and have the last one be a catchall.
But importantly, every app is different. Here’s a short preview of other things you might want to capture, if your app has them:
- Have streaming video or audio? You can capture a heartbeat event every 30-60 seconds to know how much of your content is being consumed
- Have social networking features? You can expand the definition of User Interaction to include adding friends, following people, publishing posts, or hitting the Share button
- Is your app all about long-form text? Do you have those cool super-long, story-driven landing pages? You can capture scroll depth to know how much of a story is being read
- Do you have an e-commerce app? You should absolutely capture the e-commerce classics: adding something to the cart, every checkout step, payment method management. Also, store searches and promo code usage will let you into people’s heads so that you know what they want and what triggers a buying decision.
Where might your app’s magic be? Use these events to find out.
How about a step-by-step walkthrough to go 0-to-100 in half a day?
My book, Analytics for Indies, is exactly that guide.
Each one of the event types I’ve written about in this post gets its own chapter, with code samples that can go straight into your app.
Sign up now for four free tips to get started. I’ll also throw in a free cheat sheet that tells you which tools to use.