Well, it is just outliers in 2023. This is an upward trend since 2020.
> but the binning is also a full year and the 'idle year' is counted in a weird clippy (i.e. looking at calendar year rather than elapsed year) way
Granted, and I acknowledge this limitation. My idea, however, is that when studying many users in the same manner, this will even out. Why? Because a full calendar year implies somewhere between 0-2 elapsed years. So the average elapsed year, over many users, is 1 year.
I double checked. I don't really see an issue. The only specific thing that affects 2023 is that I removed the users seen / last seen in 2024 (since it is not complete year). The aggregation is simple also: count the users first seen, grouped by year. count the users last seen, grouped by year.
There was a separate issue though (I didn't filter out the "dead" and "deleted" stories / comments). I fixed that and updated the article. Some values changed, but the patterns and conclusions stands.
Just to double check we're talking about the same thing: The red line is 'users who have been inactive for a year or more, at the time of the aggregate point'. So, for instance, for 2016 you'd have a point for 'users with a year+ inactivity, counted from 2016 back'.
That will be great! Please don't hesitate to reach out if there is anything I can help with.
> Just to double check we're talking about the same thing: The red line is 'users who have been inactive for a year or more, at the time of the aggregate point'. So, for instance, for 2016 you'd have a point for 'users with a year+ inactivity, counted from 2016 back'.
Not quite. It is means the user has been last seen in that year (2016). By "last seen" I mean the user last shared story or comment (separate graphs) was that year.
> So to be part of the red value for a given year, you have to be seen in that year and then what? Be idle for a year after that?
Exactly! Last seen: this is year of their last contribtuion (story / comment).
A user shared their first story in 2012, and last one in 2016: 2012 is when they were first seen, and 2016 is when they where last seen. So, on the blue line, they are part of 2012, and on the red line, they are part of 2012
> What's the connection between seen-ed-ness and idleness?
If I am last seen in 2016, then I am idle since then, no?
That is correct.
> What happens if you cut off the data at 2022, 2021, 2020, 2019, 2018, etc and plotted those graphs? You'd see a different (rather than merely truncated) graph, no? Maybe even a different trend. So if my understanding is right, this is a pretty wiggly metric. The history of something you want to use as a historical trend line should not change as you append more data.
I see your point, but I don't see how it is avoidable. From my knowledge, any user churn metric will suffer the same effect: If you consider a user is churned after two weeks of inactivity, then this will change if you change the cut-off (the last two weeks of the this month? the two weeks before them? ...etc).
Even if you measure the "elabsed time" instead of "last seen", the cut-off will change your curve.
Extreme example: If you assume a user is churned after 1 year of inactivity (elapsed time since last activitiy), then a user that shared one story in 2007, and then a second story in end of 2023, will apear as active. If you change the cut-off from 2023 to 2022, then the user will appear as inactive.
You can define a metric such that future data doesn't affect past data. Here's a straightforward one: a user is inactive at time t if they haven't posted in the period between t and t - k where k some constant time period one picks. So let's say k is a year and you're looking at active users per year†. So in your last example, the user would be counted as active in 2007 and 2008, counted inactive in 2009 to 2022 and would count as active in 2023. If you truncate the data at 2022 nothing changes.
† year is probably too big of a window for this (I'd take something like a month) but let's stick with it for now
1. I am making a proxy for churn (last seen == end of subscription in this product).
2. You are looking for active users (yearly / monthly / ...)
I think your suggestion (point 2) is definitely an important view, but it doesn't conflict with the need for point 1.
Sorry if this is self-evident, I will just leave this link for reference on such metrics: https://userpilot.com/blog/product-engagement-metrics/
In any case, I am happy to help: if you would like an export of the data, or the DB dump, let me know. And I very much looking forward for your analysis :)