Analytics apps don't tell you much about usage behavior. You might be able to see how many users performed an event, or how many times they did it. But none of the analytics packages out there are good at showing you how often people do things. Are they using to-dos once a week? Every day? Only signing into the app once a month but happily paying for years?
Time matters. You can't understand usage without time. So I tried exploring time series as a way to view usage data. The problem is, it's a lot of data. It's easy to count how many users have done something or not. The result is just a number: x%. How do you count how many users have a similar pattern of behavior over time?
The other challenge is intuition. You might get some kind of statistical answer to these questions. But does that deepen your understanding about the behavior? I've wanted a way to see the behaviors directly.
To that end I've been exploring ways to view time series data on user behaviors one by one and also in clusters. The general technique looks like this:
- Query logs to get a time series of usage per person or per account. This looks like # events per day, or # days/week with usage, depending on the context.
- Dimensionally reduce all the time series and cluster them together by similarity, in the spirit of Principle Component Analysis. So far t-SNE is producing the best results.
- Visually explore the dimensionally reduced map to see individual behaviors and clusters of behaviors.
- Lastly, once an interesting behavior is identified, work backwards to count how many accounts or users are in the "neighborhood" of the map. Or work backward to the account IDs to recruit for qualitative research like phone interviews.
Early progress looks like this:
Here's a short movie of interactively filtering the dimensionally reduced map: