10
27 Comments

How do you track the activity of your web/mobile app users?

Hi all. I'd like to hear about techniques / best practices / services to help learn about the behavior of your app users.

For example, it'd be nice if I could click on a user's profile in my system, and see something like:

4:30pm User #129 clicked on Link #1 from their Dashboard
4:32pm User #129 clicked on Messages in the navigation menu
4:32pm User #129 clicked on Create New Message
4:35pm User #129 sent a message to User #476

I figure this could be accomplished by saving a record of each activity they do into some type of access log, which can then be used to generate these types of reports, but I'm curious how others have done this.

  1. 3

    For mobile apps, I always drop Fabric in since its free and will give me crash reporting as well as analytics. You can also define a KPI based on those analytics.

    https://get.fabric.io/
    https://fabric.io/kits/ios/answers

    1. 1

      Fabric is great! I'm using it at the moment in a game I have out on iOS.

    2. 1

      Fabric sounds interesting. Thank you.

  2. 3

    A few services can do that - if they have user profiles feature). I use Countly if that helps and has the exact feature you mentioned. Mixpanel can do also.

    1. 1

      Thanks, I'll check Countly out.

  3. 3

    I use Mixpanel, but I know there are a ton of analytics services out here that can do this for you.

    Segment is also a good one.

    1. 1

      I've started playing around with Mixpanel. Very impressed so far. Thanks!

  4. 2

    Check out list of the best cross platform mobile analytics tools, I'm sure you will choose one and use it - https://www.cleveroad.com/blog/how-to-choose-the-best-cross-platform-mobile-analytics-tools-and-get-maximum-profit-with-your-app

  5. 2

    At my company we use Heap Analytics. It is great because you can define events and get data from that event from before you defined it.

    1. 1

      Thanks, Josh! Will check out Heap.

  6. 2

    Amplitude and Heap are my favorites. Amplitude's free plan is extremely generous for us indies too.

    1. 1

      Awesome. I'll check those out.

  7. 1

    For tracking activity of your website you need to do On-page optimization.
    On-page optimization is a set of measures to change the site, aimed at increasing site traffic target customers from search engines on requests reflecting the desire of customers to purchase services and products promoted by the site.
    About all On-page optimization factors you can read in this article www.linksmanagement.com/onpage-guide-tutorial/ .

  8. 1

    Tracking is generally split into frontend (browser/app) and backend (server).

    A lot of the plug-and-play analytics tools are frontend tracking, the most well-known of which is Google Analytics. These are super easy to use (just insert a piece of code) and can give you a good sense of immediate surface events happening in your app. The downside is that access points are fickle and don't stay the same, thus "entity resolution" or connecting who's who is going to be hard.

    Backend tracking is usually custom implemented as every app will have a different way of storing and handling data. For example, you can store an event each time a user logs in, and each time an endpoint is hit, at varying levels of granularity. Lots of flexibility, you know who's who, but you have to roll your own.

    For bringing all of this data together to look at, try an open source tool called Metabase. It's especially great if you work with a small distributed team.

    Source: I use Google Analytics (frontend), MongoDB (backend), and Metabase (analytics) as my own stack for a passive learning app I built called Harvest (https://harvest.li)

  9. 1

    The problem you have is one faced by pretty much every web and mobile app with users today and there are a lot of solutions. You could integrate individual services by hand but that takes time and prevents you from trying new services between builds. Using a clickstream aggregator simplifies everything.

    Check out Astronomer if you're looking for a flexible analytics router. We support sending your events to many integrations like Google Analytics, Mixpanel, Keen, etc on both the client-side and server-side without you doing any extra work. We do have a free tier for low event volume :).

    https://www.astronomer.io/clickstream/

    A full list of the destination services & databases supported is here.

    https://docs.astronomer.io/v2/clickstream/destinations/overview.html

    Full disclosure: I'm an engineer building this product. Would love to hear your feedback if you try it.

  10. 1

    We use firebase (it’s free). The event data is consolidated to anyomous segments (you need to allow for privacy). You can connect it to Google Analytics (again free) and to your Google AdWords a/c. Facebook offer event tracking too and it’s good for tracking against FB Ads. Lots of other options out there. Good luck!

  11. 1

    That's too much info that you want. You are basically breaching too much privacy over there. Idk why.

    I do agree that it's good to know at what time many users log in, at what time many users are active at the same time and so on. And about what web pages or features they use a lot etc and that helps improve business by checking user behaviour. But to the extent of knowing when they clicked a message button and talked to someone ? How does that help improve business ?

    1. 2

      Privacy aside, I do agree that trying to track everything or too much isn't helpful. Anytime I've gotten that general request (from product management for example) when building software I stress that you first need to come up with a few key questions or KPIs that you're interested in. Then instrument enough to answer those.

      1. 1

        Agreed. Tracking every little thing is likely not needed if the few key questions are just focused on 5% of the available data.

    2. 1

      I don't think it's a breach of privacy. I'm not about reading people's messages or anything like that. Knowing that user #1 messaged user #2 is already in the database. Every big social network keeps track of who you talk to and feeds into their algorithms.

      Those were just some quick made-up examples in my original post. We may want to know if "Send Message" button #1 is clicked more than "Send Message" button #2. It's more about tracking how people are using the app, not about tracking their personal details. This will help answer questions like, "What does our typical user do every day in the app? And in what order?"

    3. 1

      This comment was deleted 9 years ago

  12. 1

    check out fullstory.com - by far the best tool i used. you can actually see the page as your users see it.

    1. 1

      Will check it out. Thank you!

  13. 1

    I use Heap Analytics as well.

    1. 1

      I'll check out Heap. Thanks!

  14. 1

    You can use Google Analytics, which is Free. Very easy to install and use.

    1. 1

      I considered setting up custom tags in Google Analytics, but wanted to see what other types of options are out there.

  15. 1

    This comment was deleted 8 years ago

  16. 1

    This comment was deleted 8 years ago