So... There seems to be a common misconception where people assume all of Mastodon has 180,000 users because says it's home to that number of users.

The real number is closer to 1,5 million. Those 180k are only users and there are like... 3,000 other servers?

I wonder what I should do. 🤔

@Gargron Is there a central place to see all that info and stats?

@nightpool @Gargron Yeah for me it's clear once you scroll down as you see the numbers per instance. A global counter would be cool too

@Gargron it'll be a challenge to figure out which users are active, not bots, and not dups.

@Gargron and then you have to consider that people like me have accounts on multiple servers, so it's kinda hard to count.

@phoneboy Yes, that too, plus inactive accounts. But that affects both kinds of numbers and it's more wrong to ignore all other servers than to ignore some people having multiple accounts

@Gargron @phoneboy Maybe below "Home to" it shows "Federated with X accounts on Y instances"? Reporting monthly active users would probably make it sound too much like a Silicon Valley startup.

@Gargron focusing on numbers on one instance is definitely "more wrong." Personally I think number of total accounts and total number of Federating instances gives a much better idea of size.

@Gargron Talk to them, they'll probably want to hear from you.


That's a brand awareness issue.

"the fediverse is home to 1.5 million users, spread across thousands of mastodon instances. Only a fraction live on mastodon dot social."

Is pawoo bigger?

@Mainebot @Gargron and other projects, like pleroma, writefreely, misskey, hubzilla...

@Gargron Can you get aggregate numbers? Maybe post aggregate membership on the Mastodon site?

@Gargron How many of those users are actually active or dead accounts?

All that seems a bit messy to me. Maybe you should think about centralizing all that 😝

@Gargron I’d say putting a giant total counter on the join mastodon site would be good start. Like “Join the 1.5 million others today!”

@bigzaphod Side note I wonder if "get started" should be changed to "sign up" or something.

Being committed to no tracking means I have no idea what works haha

@Gargron yeah probably would help too. The federation concept is tricky to understand when coming from Twitter. Could start to sell the idea more like Reddit’s subreddits. Like, start by finding and joining the “community” you want today. Or something like that?

@Gargron if interested, I brought quite a few people over here a few days ago starting with this twitter thread: Maybe it suggests some of the things that twitter users might want to know about when looking into Mastodon.

@bigzaphod @Gargron i've always found the subreddit comparison to be really faulty. content isn't silo'd to a certain instance, and instances are organized around people and not posts/topics. you don't post to an instance, you post to your profile and your followers.

@trwnh @Gargron I think you’re probably right. I was just looking for ways to compare it to things people already kind of know, I suppose.

@bigzaphod @Gargron email

activitypub is basically email over json anyway. twitter started as an sms equivalent to mailing lists. email is the largest decentralized network ever.

@schwa @bigzaphod @Gargron literally everyone in the world could use gmail and it'd still be federated as long as it maintained the "" identifier and it continued to accept remote email over SMTP. People understand this when giving each other their email addresses. No one says "my email address is somename", they say "my email address is somename at gmail" by minimum.


Say something like "Home to 180k out of 1.5m+ users"? Probably could be refined better, but that might be great direction to go in.

Put that info in the about page? lixe, 180k in this instance and 1.5m in all 3000 more instances. I dunno, grab that number from some updated page

@thegibson Pull from where tho. Some central aggregating service, one of the few that exist right now. What if it's down? What if it's being slow?

Using total row count of accounts table might be more reliable and more in spirit.

@Gargron @thegibson Maybe have instances whisper information to one another about their user counts--and the user counts they know about--to other instances once a day or so? Two degrees of separation ought to be enough for m.s to estimate a rough head count, no?

Smaller instances, meanwhile, would see a much smaller observable aggregate count, but that'd be interesting too.

@beadsland @thegibson It could be done... The question is, *should* it be done that way. Hmph.

@saper @Gargron @thegibson It would avoid reliance on a single centralized service.

Not any more unmanageable than a game of whisper-down-the-alley. (Hence my use of the term.) Thus, not going to provide a painstakingly accurate sum—certainly not as observed from less connected instances—but when you're dealing with ~1.5 million horizon, long tail can fall off without losing significant digits.

"Here's my count, and counts of every server that polled me for toots today" hardly implies mess.

@saper @Gargron @thegibson Alternatively, a store-and-forward network a la Usenet could be used to share small instance-reported statistical packets, without the worry of losing the long tail.

This would eliminate the need for any given instance to reconcile the counts coming in over alternate routes—as the Usenet-esqe messages would self-reconcile on GUID. The trade-off is storage consumed by storing-for-forward those stats-packet messages.

@saper @beadsland @thegibson No need for recursivity you can just fetch stuff from each known instance in a flat manner.

I don't like the approach for another reason, managing these counts and fetching this data is like a side quest for Mastodon's core functionality, I don't feel good about mixing them in one codebase.

Maybe it's a more general tool for admins that should be part of Tootsuite to help admins, but not part of Mastodon.

@thegibson @beadsland @saper

@Gargron @saper @thegibson Ah, well, if you have a known list of instances, then that works. I'm working off the assumption that there isn't a master list, so the only way to glean that information is via federated neighbors.

I'm also working off the assumption that you don't want a central point of failure. Hence suggesting alternatives that don't rely on polling from (or pushing to) a single point that could be offline or slow, as you note.

@saper @beadsland @Gargron

I think a simple count of the lines in the DB would suffice...

No need to get complex for something so simple.

@thegibson @saper @Gargron Right, but the question is how to obtain the counts from a sufficient space of 3,000ish servers to produce an aggregate total.

It was suggested having that done from/to a single point (either polling or pushing) could be problematic. Hence my spitballing.

@beadsland @thegibson @saper Obtaining counts was just one of the suggested solutions... Improving the wording on existing stats, moving/removing the stats, adding some kind of link, adding stats to instead and hoping that solves the issue, there are many alternative ways

@Gargron @thegibson @saper Well, if you really are dealing with numbers near 1.5 million, that number won't need to be updated all that often. (Unless growth is really pronounced.)

Easy enough to just have an old McDonald's style banner proclaiming "1.5 Million Accounts Federated" and update the static number therein by hand as needed.

@beadsland @thegibson @Gargron I think multicast subscription and routing for hashtag messages is much more interesting issue

@saper @beadsland @thegibson Hashtags are probably solved by the relays, depending on how sophisticated of a solution you're thinking of. Relays are a brute force approach

@Gargron @beadsland @thegibson there are interesting lessons to be learned from the evolution of IP multicast routing protocol at IETF, I hope to find some pointers.

@saper @Gargron @thegibson This is why I suggested only two degrees of separation. Anything beyond that becomes computationally expensive.

Granted, two-degrees of separation only work if there's enough interconnectivity across the fediverse as seen from m.s for that to be representative. If there's another sizeable Mastodon cluster that can only be reached from three or more degrees of follow linkages, the whisper approach would fail.

@beadsland @Gargron @thegibson I am quite happy with the status quo, there are more pressing issues to work on I think.

@saper @beadsland @thegibson Right, I am more interested in cosmetic improvements to the way this information is conveyed, rather than solutions that require new standards etc

@beadsland @saper @Gargron @thegibson Eric Ried of DEC used to produce Usenet usage reports in the late 1980s / early 1990s

@Gargron Yes the accounts table would be a good idea for the instance, although there are also dead accounts in there and that number would be lower after they are purged with the purge_removed_accounts rake task (what I periodically do). I'm afraid people would refrain from using this rake task, to keep the known user count higher.


@Gargron On a rounded number would be enough. It can be updated daily and if e.g. is down, the number stays the same. The same when the number suddenly changes e.g. more than 50% up or down.

@TheGibson Yes but still, if you want to use the accounts table after purging those dead accounts, AFAIK they wouldn't be there anymore, so also not counted.

Sign in to participate in the conversation

Server run by the main developers of the project 🐘 It is not focused on any particular niche interest - everyone is welcome as long as you follow our code of conduct!