Measuring Trends in the Fediverse
Note: This is the blog version of a thread on the diffusion and fragmentation of trends on Mastodon, originally published here
Trends (e.g. twitter's trending topics) are an affordance of social media platforms that enable users to discover content and connect with other users. They are also being used by e.g. journalist and politicians to gage topics the general public is interested in (which is a huge attack-vector for Dark Participation and propagandistic communication).
On centralized social networks these trends are defined and moderated by the platform owners. While these trends that are published by the platform owners should be taken with a grain of salt, they still can be a measure of what topics are currently relevant to a lot of users.
On decentralized networks the concept of trends become a bit harder to measure. There is no central authority on what is popular on Mastodon (or the Fediverse in general).
Luckily, Mastodon’s API is pretty well documented and open! The
GET /api/v1/trends endpoints can give you an idea of what is happening on the network. So I collected some anonymous, public data from a bunch of (400+) popular instances and have so plots to share!
Using the API, I crawled the three kinds of trends available on Mastodon (hashtags, links and posts) across 400+ instances (all with more than 500 users) for a couple of days. For hashtags I aggregated the uses and number of accounts across all instances, for links I also extracted the top level domain. The trending posts were anonymized (only saving interaction metrics, the users’ home instances and the hashed uri).
Let’s start with hashtags. Mastodon's Explore page shows users hashtags that “are gaining traction among people on this and other servers of the decentralized network.” As expected with decentralized structures, there definitely is a long-tail of hashtags that are presented as “trending tags” to users (6k distinct trending hashtags per day).
|Date||Unique Hashtags||Uses (mean)||Accounts (mean)||Share of Instances (%)|
This graph shows all trending hashtags on all crawled instances per day, with the share of instances the hashtag is trending on on the y axis. Size/opacity shows the number of cumulated uses across all instances. Per day, the hashtag with the most uses is labeled.
You can see that some tags that are used by a huge number of people, only diffuse to a small (ish) share of instances. For example, #ukraine is used >90k times per day, but only trends on ~50% of instances.
Similarly, when aggregating the domains of the trending links, there are some news outlets that are shared often and trend on many instances (e.g. The Washington Post), but some regional outlets (e.g. @tagesschau) are also widely shared, but only on smaller share of instances.
The full data shows that established news outlets form the US and from Germany are often producing trending links. To illustrate this, I aggregated the top-level domains of the trending links:
Trending posts are defined as “posts from this and other servers in the decentralized network” that “are gaining traction.”
Looking at the posts with the most reblogs that are trending across instances shows how the big instances often produce these viral posts.
On the topic of trending posts: The interaction metrics (reblogs, replies, favs) differ depending on the instance the API request is made to. Although they should sync up over time, the state of these metrics is not always perfectly up to date.
To illustrate this, these plots show the interaction metrics for a bunch of trending posts across many instances. The red line is the “actual” metric for the post (drawn from the “home-instance” of the post). They are all lagging behind!
With decentralized social media, our understanding of trends/virality has got to change. Trending on Twitter and trending on Mastodon are two very different beasts (even if it looks so similar).
It also means for us as media scholars that we need to take good care sampling the instances we get our data from and triangulating post metrics is going to help us as well, I think.