Foreword to the new version

Hello :-)
After about two months since we replaced the old content on this site with a single page in which we wrote that updating this Guide to Mastodon would not be worth our effort and the time it would take us, because of the many harmful choices the Mastodon development team made, today, Friday, November 3, 2023, mastodon.help is back online, with an updated Guide: the reasons for our disappointment and criticism have unfortunately not gone away, but we felt that expressing them here, in an updated version of this resource that we still feel can be useful and that we hope can be more so precisely because of its critical approach, is better than abandoning it and putting it permanently offline.

Introduction

Mastodon is a Free and Open Source microblogging platform whose functionalities may resemble those of Twitter or Tumblr. Its development was started by programmer Eugen Rochko in 2016, and since then Mastodon has steadily grown, due to its adoption by an increasing number of communities looking for an independent social environment, untied from large companies and free from their censorship.

But Mastodon is not a Twitter clone: it is structurally and functionally very different, and much more interesting!

This page, that was last updated at the end of October 2023, is not the official guide to Mastodon, but an introduction to its basic features and concepts that allows you to understand and appreciate how it works. It is structured in a series of independent sections that you can jump to from the Index (see the related link in the upper-left corner of your screen), but it can also be read as a single text.

The site also features a search engine for Mastodon Instances where you can choose the one that best fits your needs.

What is Mastodon?

Mastodon is not a social network

There is no such thing as a social network called Mastodon! There are, instead, thousands of independent social networks called Mastodon Instances.

Every Instance has its own independent server, its own homepage, its own community, its own rules, and it’s administered and moderated by different people.

From any Instance it is possible to interact with users who are on any other Instance. It works a bit like e-mail (you can send an e-mail from Gmail to a Yahoo address, right?).

Those who administer an Instance may limit or suspend users from their own and any other Instance, and may also decide to limit or suspend entire other Instances, for example because they allow posting offensive content, or because they are not properly moderated. These limitations and suspensions, however, will only affect the Instance they administer.

So what is Mastodon?

When we say “Mastodon” we mean the whole network of Mastodon Instances, but also the technology they share.

With a metaphor, Mastodon can be described as a galaxy of independent but interconnected social networks using a common platform.

Who owns Mastodon?

Everybody! Since it is a Free (as “in beer” too) and Open Source platform, anyone can use it, modify it and, if they wish, install it on their own server to create an Instance. It is a classic example of the philosophy behind Free Software: make and share open software tools that anyone can use as they like and contribute to improve.

A girl with her arms opened in front of a blue sky. Photo by Jess Hall.

Your personal data are located on the Instance server you register on. This means that, besides you, only those who administer your Instance can access them, just as on any other platform, be it commercial or not.

The Instance

Running an Instance

Anyone with a server and enough technical skills to manage it can set up a Mastodon Instance. Mastodon server software is completely Free and Open Source (FOSS), and “free as in beer” too, but maintaining a server and buying an internet domain has costs and requires a certain amount of work, as well as managing moderation. Depending on the technical specifications, the configuration you choose and how many people use your Instance, the cost can range from a few hundred euros per year to some thousand.

Many Instances cover their costs with crowdfunding or collections among members, but it cannot be ruled out that some may resort to other ways, like asking for a fee.

Mastodon, however, was born as an ad-free platform. For this reason, it’s not well suited for advertising, and anyway, if an Instance were to self-fund itself through advertisements, it would most likely be suspended by most of the other Instances.

Close-up of a server. Photo by Whrelf Siemens.

Choosing the Instance

Since every Instance is completely independent of the others, every Instance is different from the others.

If you register on an Instance that is run by a French vegan community, you should expect that most of the posts you will read will be in French and that posting photos of steaks and grills will be considered offensive and against the policy.

If instead you registered on an Instance run by an British religious community, the posts will be mostly in English and pictures of steaks and grills would be welcome, but probably posting nude pictures might cause you some problems.

Choosing the Instance that best matches your needs and interests is the key to best accessing the Mastodon Galaxy.

You can choose an Instance by language, policy and terms of service, topics it covers and its ethical and political positions, or by other criteria. In any case, remember that the more you feel at home on the Instance of your choice, the better.

A well run Instance should always have its own well defined and accessible policy, and should make the list of other Instances it may have limited or suspended available.

Please forgive us for repeating this, but it is really important to register on an Instance where those who perform moderation speak your language and share with you at least those political positions that you consider essential: only in this way will you be able to communicate effectively with them.

Don’t be afraid to try as many Instances as you like: you can decide later whether to delete the account you don’t want to use or even move it to another Instance!

Medium and small Instances are better

Mastodon Instances number in the thousands: there are both those with only five users and those with over three hundred thousand users.

Among the latter is mastodon.social. It’s the Instance created and run by Mastodon main developer, but this doesn’t mean that it should be considered as some kind of “Mastodon Official Instance”, because each Instance has exactly the same powers as the others, neither more nor less.

The main problem with very big Instances like this is that, since they are not connected to a specific community and are more complex to moderate, it is likely for some of the obnoxious behaviors that we usually see in large commercial social networks to develop within them.

To give an example: if you register on a large generalist Instance based abroad, administered by people who don’t know your language, and someone started threatening you, those who administer the Instance might have a hard time even realizing that you were receiving threats. Or, if you register on an Instance that doesn’t have a feminist or anti-homophobic policy, those administering it might tend to downplay real abusive behaviors against you. Conversely, if you register on an Instance whose policy you agree with, moderation will also be better suited to your needs.

The Mastodon Galaxy works best when it connects many small and medium-sized Instances, not by relying only on a few generalist big Instances.

This is the reason why, by default, our search engine doesn’t include among the results those Instances that have more than thirty thousand users, although you can set it to do so.

You can read more about this topic in our Critique of Mastodon development team’s politics.

Interactions and echo-chambers

Considering the large number of tools Mastodon provides for limiting and suspending users and Instances, one might think that the Mastodon Galaxy mostly consists of isolated communities locked in their own bubbles.

Two plush monkeys, one covering its eyes and the other covering its ears. Photo by Streuli Silvan.

In contrast, reality is quite different, and in fact the variety of communities that intersect on Mastodon can hardly be found on large commercial social networks.

While it is technically possible for those who administer an Instance to set it up to be isolated from the others, by default each Instance is open to interaction with all the others, and only later can those who administer it decide to stop some of these interactions. The latter choice is usually based on the culture and open-mindedness of the community using the Instance. A community that does not respect different people and lifestyles will most likely suspend and be suspended by many Instances. In contrast, an Instance inhabited by a community willing to respectfully dialogue with those who have a different culture or lifestyle will never be suspended by other Instances that are populated by similarly willing communities.

Since its inception, Mastodon has been adopted by various communities that share anti-fascist, anti-racist, anti-sexist, pro-LGBTQIA+, anti-homophobic and anti-transphobic values, and over time it has attracted communities from indigenous peoples and ethnic minorities, ecologists, animal rights advocates, vegetarians, vegans, human rights advocates, etc. For this reason, most of the communities that are currently on Mastodon will limit or suspend those who spread racist and bigot content. Instances created by racist groups, in fact, are isolated with great efficiency.

Instances with customized and modified software

Those who administer an Instance can choose to activate or deactivate certain features (for example, an Instance can be configured to not show Trending Posts, Trending Hashtags and Trending News) and, since Mastodon is Free and Open Source software, they can even make changes to its source code, for example to give users of the Instance they administer an amount of available characters for each post higher than the standard 500.

Copyrights

Each Mastodon Instance is independent, has its own specific policy and, since when you post something on Mastodon that content is physically saved on your Instance’s server, it is handled according to your Instance’s own rules.

If you are interested in using Mastodon as a tool to promote your art, or if for other reasons you want your content to get some specific kind of protection and treatment, you may prefer Instances specialized in that.

However, due to the federated nature of the platform, any public post may reach other Instances, that are not required to provide the same protections provided by yours.

User-side software

Mastodon on smartphones

On smartphones, Mastodon can be used from any web browser or with one of the many available Apps.

On Android, the best known Apps are Mastodon (the official app), Tusky, Fedilab and Subway Tooter. With the exception of Subway Tooter, you can download these Apps not only from the Google Play Store, but also from F-Droid, an alternative Apps store that includes only Free and Open Source and privacy-friendly Apps.

On iOS you have a similar amount of choice, with Mastodon (the official App), Toot! and Mast being the most widely used Apps.

Every App is a little different from the others and has its own pros and cons, so you will have to try them out and see for yourself which one is best for you, just like with Instances.

Be aware that some of these Apps, such as Toot! and Mast, may not be Free and Open Source.

Each App may add or, conversely, not provide certain features. For example, some Apps allow automatic translation of posts, while others may indicate whether an account is a bot with a special icon, and so on.

Three screenshots showing Mastodon running on a smartphone.

Mastodon on the desktop

The typical way to access an Instance on desktop computers is by simply openining its homepage in a web browser. However, there are also specialized Applications, such as

There are also alternative web frontends! They are simply websites that let you access your Instance by entering your Mastodon Address and password, and that provide an interface that is different and may better suit you than the one that the official Mastodon web frontend provides. Among the best known alternative web frontends are

  • Pinafore, a simplified Mastodon web frontend
  • Halcyon, a web frontend that looks like Twitter

What we have written about smartphone Apps also applies to desktop Applications and alternative web frontends: each Application and frontend may have features that others lack, or may work a little differently. Therefore, it is possible that certain instructions, tips and tricks meant for people accessing Mastodon from the web homepage of their Instance will not work on a desktop Application or an alternative web frontend.

In addition, some functions may be be called in slightly different ways in different Apps and frontends. For example, those that on one App may be called “Direct messages” could be called “Private posts” on others.

A screenshot from Mastodon official web frontend.

Using Mastodon

Mastodon Address

A Mastodon Address is made up just as an e-mail address:

username@instance

Sometimes new users tend to tell only the username (the part preceding the “@”) as their address, but that way the address is incomplete and unusable, just as an e-mail address without the part following the “@”.

Mastodon also gives you the ability to define and change at any time a “Display name” that can be different from your username, and none of the Instances we know require you to use your real first and-or last name for either the username or the “Display name”.

When you post on Mastodon you can mention people by simply writing their addresses preceded by “@” (for example, «Hello @goofy@instance1.net and @pluto@instance2.net, how are you?»). If you mention someone on Mastodon by writing only their username, in most cases the user-side software will assume that they are on the same Instance as you.

Note that many Apps automatically suggest completion of addresses.

Three Timelines

On Mastodon there are three different Timelines

  • Home: it shows all the posts, replies and reblogs from the accounts you follow;
  • Local: it shows all the new public posts from all the accounts on your Instance, excluding replies and reblogs;
  • Federated: just like the Local Timeline, but it also shows public posts from other Instances’ accounts that are followed by at least one account of your Instance, still excluding replies and reblogs.

On these three Timelines posts are shown in descending chronological order.

A screenshot showing the header with the icons of the three Timelines.

Trending posts, hashtags, news and accounts

In addition to the three chronological Timelines, over the past few years Mastodon has gradually introduced other ways of displaying content, currently four: Trending Posts, Trending Hashtags, Trending News and Trending Accounts.

These new views are accessible, in the web frontend and official Apps, as subsections of a section called “Explore”, where they are respectively called “Posts”, “Hashtags”, “News” and “For You”.

A screenshot showing the “Hashtags” subsection of the “Explore” section on Mastodon default web frontend.

Trending Posts are those that have gotten the most interactions (stars, reblogs, replies) in the last few days, Trending Hashtags are those that have been used the most in the last few days, Trending News are links to articles from news sites that have been linked to the most in the last few days, and Trending Accounts are the most followed and active.

All these new views are technically based on all the posts and accounts of your Instance, plus those of other Instances that are known to yours.

We really dislike the introduction of these new views, and you can read why in our Critique of Mastodon development team’s politics.

Threads and branches

A thread can evolve into a sort of “tree” formed by lateral discussions that can develop from any post. The following image represents a thread that, starting from an initial post, develops into four “branches”:

A graphical representation of a thread that develops into four branches. Each post is represented by a small square with a progressive number. The small square representing the initial post stands at the top, and subsequent squares, with progressively higher numbers, are arranged downward. The different branches are represented by lines connecting the squares. The branch that we might call “main” is formed by answers 1, 2, 3 and 4, that are arranged below the initial post along a perfectly vertical line. From the square representing answer number 1, however, a second line departs to the left, connecting squares 2a and 3a. These represent branch “a”. From the square representing answer number 2 of the “main branch” departs, to its right, a ramification called “b”, consisting of posts 3b, 4b, 5b, 6b. Finally, there is the last branch, called “c”, that does not branch off from a post of the main branch, but from the right side of the square representing post 5b. Branch “c” consists of posts 6c and 7c.

Those who use Twitter already know this way of organizing threads, but those who come from different platforms (e.g., Facebook) may take some time to get used to it.

In order to navigate within a highly branched discussion, it is necessary to understand only one concept: when you select a post, the thread is reorganized to show only those posts that, starting from the first one, led up to the one that was selected, and, below it, those belonging to subsequent branches are shown in their chronological order.

Let’s give some examples. If you want to read the full thread from the previous image, you just have to select its first post, and all subsequent ones will be reordered to appear in their chronological order (see the image below).

The initial post is highlighted. The different threads in the previous image are now reorganized into a single vertical line. At the top is still the initial post, and below it, descending, there are posts 1, 2, 3, and 4. The connecting line showing the chronological-discursive concatenation of the “main branch” starts from the initial post and connects the posts just mentioned. Below post 4 we find posts 2a and 3a. The connecting line of branch “b” starts from post 1 making a wide curve to the left until it touches post 2a and from there it continues vertically to post 3a. Further below we find posts 3b, 4b, 5b, 6b. The branch junction line starts at post 2, makes a wide curve to the right until it touches post 3b and then descends to post 6b. Below that we find posts 6c and 7c, with the line of conjunction starting at post 5b, making a right curve until it touches post 6c and then descends to post 7c.

If you select post number 2, subsequent ones will still to be shown in the same order we just described, but those of the branches that develop from earlier posts will not be shown (in this case posts 2a and 3a are not shown).

Compared to the previous image, now the highlighted post is post 2. Below it, the posts remain arranged as previously described, with the only difference being that branch “a”, the one that starting with post 1 develops to the left in posts 2a and 3a, is no longer present in the vertical line of posts and is shown instead aside and in gray, to indicate its exclusion. Therefore the vertical line consists of posts 1, 2, 3 and 4, then 3b, 4b, 5b, 6b, and finally 6c and 7c.

If you select the last post of a certain branch (in this case post 7c), all previous posts that, starting from the first one, lead to 7c, will be shown in chronological order, but none of the other branches will be shown.

Now the highlighted post is 7c, and the vertical line shows only the posts that from the initial one led to it, i.e., in order, 1, 2, 3b, 4b, 5b, 6c, 7c. All branches developing from posts prior to 7c are shown aside and in gray, to indicate their exclusion.

Searching things

On some Instances, what you enter in the search box is searched for only in the hashtags, “Display names” and addresses that are known to your Instance (you can limit the search to hashtags only by prefixing a “#” character to the term to be searched; by prefixing an “@” character instead, you limit it to accounts). On other Instances – those that have Mastodon’s advanced search mechanism enabled – the search is also performed on the full text of posts you have written, starred, reblogged, or where your Mastodon Address has been mentioned.

To have your Instance retrieve and display a post that was published on another Instance, even when your Instance has not fetched it already, it is always possible to enter its URL in the search box, and this will allow you to interact with it (reply, star, reblog, etc.). The same applies to accounts.

A screenshot showing the search box.

The post’s privacy

When you publish a post you can choose among four different privacy levels

  • An icon depicting our planet.Public: your post will appear on public Timelines (Local and Federated) and anyone will be able to read it. It will also be received in the Home Timeline by your followers and those who you possibly mentioned. The latter will also receive it as a notification. Public posts are marked with a globe icon.
  • An icon depicting an open padlock.Unlisted: identical to the Public post, except that it will not appear on the Local and Federated Timelines. It will still be readable by anyone on your profile. Unlisted posts are marked with an open padlock icon.
  • An icon depicting a closed padlock.Followers only: your post will only be readable by your followers and those who you may mention. To their eyes it will appear as a Public post, except for the icon depicting a closed padlock.
  • An icon depicting a letter envelope.Mentioned people only: your post will be readable only by those accounts you mentioned in it. These posts, also called “Private messages”, “Direct messages” or “DM”, are marked by an icon depicting a letter envelope.

Remember, however, that Mastodon is designed primarily to circulate what you write and generate discussion, not for privacy: technically, those who administer your Instance have the ability to read everything you write, including direct messages, just as they do on large commercial social networks.

For exchanging encrypted and secure messages there are other, specific platforms.

Sharing a post

If you want to introduce your followers to someone they may not know yet, or suggest them to read a Public or Unlisted post (also known as a “toot”, in Mastodon jargon), you can reblog it (this action, in Mastodon jargon, is also known as a “boost”), or you can mention in a reply to it the addresses of those you think might be interested.

You can also cite a post by copying its URL (see the image below) and pasting it into a new post of yours, but this method, although it gives others the same opportunity to read the linked post as the methods described above, makes it less easy for them to interact with the post and the person who wrote it.

Note that all of these actions are possible or make sense only with Public or Unlisted posts (for example, posts with “Followers only” privacy can’t be reblogged, and if you link to them in another post, or suggest them with a reply mentioning those you think might be interested, they will still be visible only to followers of the person who wrote them).

A screenshot showing the “three dots” menu that is present on every post, with the “Copy link to status” entry highlighted.

Content Warning

When you write a post, Mastodon gives you the ability to set up a Content Warning (CW), that is an additional text field where you can write a custom warning that will be displayed above the content of the post, while the content itself will be hidden, and in order to view it one will need to tap or click on a button. In addition, when Content Warning is used, any attached media (images, audio, video) will be hidden behind an opaque box that one will be able to remove by clicking or tapping on it (it is also possible to hide media this way without setting a Content Warning).

Content Warning is used with content that, while allowed by your Instance’s policy, might offend the sensibility of some people, for example violent images, depictions of nudity, text with spoilers or about topics that might be unpleasant for someone.

For example, if you want to write a post where you reveal part of the plot of a movie, you can turn on Content Warning and fill it with the movie title followed by “spoiler”.

Each Instance has its own rules regarding the use of Content Warning, so it is not rare to see them used in uncommon ways. For example, on some Instances Content Warning may be mandatory for selfies or pictures of food. This is because what is commonly accepted on one Instance may be considered a sensitive topic on another. In fact, it is not uncommon for an Instance to be limited or suspended by others because its users do not use Content Warning on certain types of content.

Each user can still set their preferences so that posts preceded by Content Warning and attached media are always shown.

Describing media for accessibility

On Mastodon and the Fediverse there are many people who are unable to get to know the content of an image, video, or audio without a textual description of it, for example, blind or visually impaired people who use screen readers to convert written text to synthesized speech, or deaf or partially hearing people, or people with other disabilities. There are five simple things that those who are able can do to make this content more accessible.

  • Before publishing a post with attached media, tap or click on the “Edit” link found on the preview of each attached media to add a textual description of what you see and-or hear, then read it by asking yourself if you can imagine, based on what you have written, the salient elements of the image, video, or audio; finally, remember to tap or click on the “Apply” button, if necessary.
  • When writing a hashtag, always use the “CamelCase,” which means capitalize the first character of each word (e.g., “#DogsOfMastodon” instead of “#dogsofmastodon”): capitalized initials make the hashtag more readable and, most importantly, help screen readers to separate words correctly and thus pronounce the hashtag comprehensibly.
  • Avoid random capitalization in what you write to parody poor or excited writers, as this prevents screen readers from functioning effectively.
  • If you happen to read the hashtag “#Alt4Me” in a post replying to a post with attached media, it means that a person who is unable to otherwise know their content wants a description of them. If you can, reply to the post with this hashtag by providing it.
  • If you come across a post with media without a description, even if it was not requested be proactive and respond with a description preceded by the hashtag “#Alt4You”, which will allow people who need it to find it more easily.

Note that it may also happen that the hashtag “#Alt4Me” is added directly into the original post by the person who wrote it because they cannot describe the attached media or are in difficulty to do so, for example because of some disability.

[The text of this section is a reworking of the content of this and this page from fedi.tips, as it showed on Friday 27 October 2023.]

Moving to another Instance

If you want to move to another Instance, you can transfer to your new account the accounts that follow you, those you follow, the list of those you have muted or blocked, the list of Instances you have blocked, and your bookmarks. Currently, however, you cannot transfer your posts.

Please see the official guide for an explanation of these possibilities.

No “Retweet and comment”

Currently, on Mastodon, there is no feature analogous to Twitter’s “Retweet and comment”.

This lack was intentional, because “Retweet and comment” is mostly used to create disruption, generate controversy, and harass those who have written a post without discussing it directly. While it’s true that this feature can also be used in good ways, for example to advise someone of an ongoing discussion they may be interested in, the same can be done in other ways that are less likely to generate arguments.

Unfortunately, however, the development team seems to have changed its mind, and the implementation of a “Quote posts” function, similar to “Retweet and comment”, is planned.

You can read more about why we dislike this feature to come in our Critique of Mastodon development team’s politics.

Moderation

Harassment and moderation

Mastodon is known to be a platform where there is no room for harassment and trolling, not because there is none (it is impossible) but because its structure and the tools it provides allow for extremely efficient moderation and quick interventions against malicious people or Instances. In addition to the technical tools, it is the communities themselves who frequent the Instances that actively collaborate in keeping their network a livable environment! Different communities help each other by alerting others when they detect malicious behavior from an account, or when they identify Instances run by groups that spread hate content and intolerance, or that do not have efficient enough moderation. Since each Instance is moderated by different people, the relationship between those who frequent it and those who moderate it is much closer than in large and centralized commercial social networks.

It is important, however, to remember that each Instance is a separate entity with its own independent policy, and that moderation is always a political action, even when it claims to follow a policy of cool impartiality, that in reality is always in defense of the status quo.

Limiting and suspending

If those who administer Instance 1 limit Instance 2, all accounts on Instance 2 and all their posts will be hidden from Instance 1, but accounts on Instance 1 will still be able to interact with those they are already following on Instance 2, and vice-versa.

If those who administer Instance 1 suspend Instance 2, people who have their accounts on Instance 1 will no longer be able to interact with those on Instance 2, and vice-versa.

Basically, suspension is applied to those Instances that are considered to be banned outright, for example because they spread racist content, while limitation (that in older Mastodon versions was called silencing) is used for those Instances that are frowned upon or objectionable, for example because they are full of bots, or because they spread content bordering the limiting Instance’s policy. Those in charge of moderation, of course, can also limit or suspend, on their Instance, individual accounts frome their own or any other Instance.

Similarly, any user from their own account can mute (the equivalent of limiting) or block (the equivalent of suspension) any other account, thus ensuring that they will no longer see posts coming from the other account and, in the case of blocking, preventing the other account from mentioning their own and receiving and reading their posts. Any user can also block entire Instances, to avoid any interaction with them and the accounts they host.

Federation

The Fediverse

All the Mastodon Instances that together form the entire “Mastodon Galaxy” are part of something much bigger called the Fediverse.

Besides Mastodon, in fact, there are many other federated, Free and Open Source platforms using the same common protocol, ActivityPub. Some of them, like Pleroma and Misskey, are also similar to Twitter, but others are very different.

And there are more...

All of these platforms, like Mastodon, don’t have a unique central server, but are “Galaxies” of many independent Instances: there is no “main” or “official” Friendica Instance, you can choose among different Pixelfed Instances, and so on. And all of these platforms (“Galaxies”) interact with each other, forming the Fediverse.

What does that mean? Well, imagine that you could directly receive Facebook statuses on Twitter, or even liking and commenting a YouTube video using your Tumblr account: that’s what the Fediverse is! You have a Pixelfed account? Ok, I don’t use Pixelfed but I can follow you from Mastodon! A friend of mine doesn’t like Mastodon and prefers the more Facebook-like Friendica instead? No problem: he can follow me from Friendica and we can both write to and interact with each other, while staying each one on the platform that we prefer!

Remember, however, that the Fediverse is constantly evolving and therefore not everything always works right already. Some things may work differently than you would like, and the people carrying out their development may not be able to fix them on the fly, or to add features that you prioritize over others. Work is in progress, in short, and so it is not surprising that you will have to make some compromises.

The logos of many FOSS social network platforms before a background representing a universe (the Fediverse).

Decentralized and federated

Most commercial social platforms are centralized. This means that for each of them there is a single central authority that manages and controls everything technically, legally, and commercially, and that sets a single policy for all of its users.

If you want to interact with a Twitter account, for example, you have no other way but to open an account on twitter.com yourself, accepting its terms and conditions.

A graphical representation of a centralized network: in the center is the Twitter logo surrounded by many dots, each of which represents a user and is connected to the central logo by straight line segments.

Mastodon, on the other hand, is a galaxy of independent, decentralized social networks called Instances, each with its own server, community, policy and terms of service.

A graphical representation of four decentralized networks: four Mastodon logos, representing as many Instances, each surrounded by some dots representing users, that are connected to the logo they surround by straight line segments.

But Mastodon is also federated! This means that all of these social networks can interact with each other (though they are not obliged to).

A graphical representation of a federated social network: there are four Mastodon logos, representing as many Instances, each surrounded by some dots representing users, that are connected to the logo they surround by straight line segments. Each Mastodon logo is also connected to each other by a curved line segment.

How federation works (theory)

A newly created Instance is open to connections with other Instances, but is not immediately connected (“federated”) with any of them, so initially people using it will only be able to interact among themselves.

Graphical representation of the Mastodon Galaxy. Several Mastodon logos represent individual Instances. They are in scattered locations and of different sizes. Some are connected with others (connections are represented by lines), forming three separate networks. In one corner is an Instance separate from all others and named “My Instance”.

The moment a person on your Instance creates a connection with a person on another Instance or vice-versa (more on how this happens later), all the people using the same Instance as you will be able to interact with the person on the other Instance.

Same graphical representation as in the previous image. Now, however, from “My Instance” starts a previously absent line that connects it to one of the Instances that is part of one of the three already described networks.

The person on the other Instance reblogs and interacts with the posts of other people they are in contact with, whether they are on your Instance or others. All these interactions are visible to people who, from your Instance, are followers of the person on the other; these people, in turn, can take part in these interactions and create new ones. Thus the number of connections between previously unknown people and Instances begins to grow (this is what federating means).

Same graphical representation as in the previous image. Now, however, many lines depart from “My Instance” that connect it to all the Instances in the network that the Instance with which the first connection occurred is part of. The other two networks remain separate.

Any user of any Instance can create a new connection with any other Instance.

Same graphical representation as in the previous image. Now, however, “My Instance” is part of the network with which it had begun to federate, and even more lines connect it to other Instances in that network. At its edge, however, a line representing a connection links a small Instance of the network we are now part of with an Instance that is part of one of the two previously isolated networks.

Basically, the more you interact with people who are on other Instances, the larger the network of your Instance becomes, until it forms a giant federated network consisting of a huge number of independent Instances. Your Instance’s federated network, however, will probably never cover the entire Mastodon Galaxy, but only a part of it. How far it will stretch depends on how active the people on your Instance are: the more connections you make with different and distant Instances, the wider your network will be.

The network we are now a part of has merged with the one with which, in the previous image, a first connection was made, and in fact two of the three initial networks have become one giant whole of which “My Instance” is also a part. The third network still remains isolated.

If your Instance suspends one of the Instances it came in contact with, the other connections still remain and the other Instances will still be able to interact with the one your Instance suspended.

Within the large network that has formed, of which “My Instance” is now an integral part, one of the lines connecting it to the other Instances is now gray in color and, halfway along its length, has an “X” superimposed, representing the interruption of the connection with one of the other Instances. All other lines representing links between the other Instances remain unchanged. The third network still remains isolated.

Notice that some Instances may form completely separate and “parallel” networks. This may happen because these Instances have been suspended by a large number of other Instances, or because no connection has yet been made. These Instances are also part of the Mastodon Galaxy, but they occupy a different and distant part of it. They are not part of “our” federated network, but of a separate, different, autonomous and independent network.

And it doesn’t stop there: the same concepts we have just seen apply to all the platforms in the Fediverse! Your Mastodon Instance can connect not only with people from other Mastodon Instances, but also with people using Pleroma, Friendica, Pixelfed, PeerTube, and so on. Can you imagine how wide and varied the federated network of each Instance can be? ;-)

How federation works (practice)

On commercial and centralized social networks everything is done while staying within them, never leaving the gates of the platform.

On Mastodon and the other Fediverse platforms things work differently: your own and your Instance’s federated network grow with the reblog mechanism (for example, when you follow an account that reblogs some posts from another account that you’ve never seen before, and you decide to follow the latter too, and so on), that doesn’t require you to leave your Instance, but they can grow by many other means: anyone can discover new and interesting Instances, accounts and posts by checking dedicated online resources (like our Instances search engine and those you can find on our Links page), or by browsing the web outside Mastodon, reading blogs and magazines and having real-life interactions. Just as in real life, those who explore allow boundaries to be expanded faster!

Keep in mind, moreover, that most Mastodon Instances, as well as most Instances of other Fediverse platforms, allow you, from their web homepages and without having an account, to read their Local Timeline, simply by tapping or clicking on the “Live feeds” link (“See what’s happening,” on Instances with older versions of Mastodon), and to browse their “Profiles directory,” where the profiles of the users who have opted-in it are shown, by accessing it from the corresponding link.

A screenshot showing the web homepage of a Mastodon Instance with the “Live feeds” and “Profiles directory” links highlighted by two red circles.

If during your explorations outside your Instance you find an interesting account or post from a federated platform, all you need to do to be able to interact with it is to copy its URL, paste it into your Instance’s search box, and press “Enter”. This will show the account’s profile, that you’ll be able to follow, or the post, that you’ll be able to “star”, reblog or reply to.

Depending on whether you are accessing Mastodon from a browser or an App, this feature may slightly change. It may also vary a bit depending on which Fediverse platforms are involved. Some platforms have special buttons to help you with the operation. One of them, for example, is PeerTube. If you want to share a video post from a PeerTube Instance you are visiting, you can do so from your browser by clicking or tapping the “Share” button under the video itself.

A screenshot showing a PeerTube Instance with the “Share” button of a video post highlighted by a red circle that is pointed to by a red arrow.

This will bring up a popup from which you can easily copy the URL of the video post by clicking or tapping the “Copy” button.

A screenshot showing a popup with the “Copy” button highlighted by a red arrow.

At this point you can go to your Mastodon Instance website, paste the copied URL into its search box, and press “Enter”: the video post will appear inside Mastodon, and from there you’ll be able to “star” it, reblog it, comment on it, and to follow the PeerTube account that posted it.

A screenshot showing the main page of a Mastodon Instance website, with the search box filled with the URL of the video post that is already showing prominently in the center column of the page itself.

Or, if you just want to follow the account that the video was posted from, you can directly tap or click on the “Subscribe” button on PeerTube.

A screenshot showing a video post page on a PeerTube Instance website with the “Subscribe” button highlighted by a red circle to which an equally red arrow points.

This will cause a popup menu to appear from which you’ll be able to subscribe to the PeerTube account (i.e., follow it) by entering your Mastodon Address.

A screenshot showing the popup menu that appears when clicking on the “Subscribe” button on the page of a video post on a PeerTube Instance’s website.

Once you enter your Mastodon Address and press “Enter,” a new browser tab will open and, if you are not already logged in to your Mastodon Instance, you will be asked to do so, otherwise you will be directly shown a page from which you can confirm that you want to follow the PeerTube account from your Mastodon account.

A screenshot showing a Mastodon follow confirmation page.

That’s it! Now you can open the PeerTube account profile you just followed on your Mastodon Instance website, or on the PeerTube Instance website, or simply close this browser tab.

A screenshot showing a Mastodon Instance website page with a message confirming that you are following the PeerTube account, a “Go to web” button that you can use to open in Mastodon the profile of the PeerTube account you just followed, a “Show the user’s profile” button that you can use to open it on its PeerTube Instance, and a message adding that you can also close that browser tab.

A critique of Mastodon
development team’s politics

Mastodon is by far the most widely used platform in the Fediverse (fedidb.org reports today, November 3, 2023, almost 12,000 active servers, while the second most used platform, Misskey, only has approximately 1,200), and it shares with the other Fediverse platforms some features that make it much better than commercial social networks: the absence of profiling tools, giving also greater privacy, and the structural unfitness for its use in advertising by large companies.

At the same time, however, its development team pursues in many ways a strong centralization of the Fediverse toward the already most populated Mastodon servers and in particular toward mastodon.social, the Instance it directly manages, for example by means of the design of the the official Apps’ welcome screen, which does everything possible to drive new users to sign up on mastodon.social, by presenting the most populated Instances on top of this page, with mastodon.social in the lead, and by carefully avoiding the introduction into the web frontend and the official Apps of simple features that are already present in other compatible clients, such as the ability to follow the Local Timelines of Instances other than one’s own, and to discover new Instances from one’s own account: features that would by themselves reduce, and only for those who so wish, the differences between using a small-medium sized Instance and a large one. All of this has greatly contributed to determining the current situation, in which the 1% of the most populated Mastodon Instances hosts 86% of Mastodon users, and the 10% hosts 99%, and the situation is even worse when one looks at the data regarding the active users; and this is problematic because, as we have written in our Guide since the very beginning, such large Instances are difficult to moderate, and therefore social harassment dynamics that are typical of commercial social networks easily recreate there, and because those who run them gain a lot of power over too many people, and because a more distributed network made up of many small to medium-sized Instances is much more resistant than a network with this level of centralization.

Moreover, the implementation of content views such as Trending Posts, Trending Hashtags, Trending News and Trending Accounts introduces and reproduces in the Fediverse the competitive and meritocratic dynamics – with merit defined in essence by the popularity of a piece of content – that are typical of commercial social, and the same cumulative tendency whereby the content and accounts that they make most visible are much more likely to become even more so than others. Besides, although these views can be deactivated (with the regrettable exception of Trending Accounts, and only in bulk) by those who administer an Instance, they are active by default, and their possible deactivation, at present, produces a disadvantage for the Instances that enact it: in the official Apps, in fact, the corresponding subsections of the “Explore” section do not get hidden and remain empty, easily giving users, particularly new ones, the impression of an inactive, isolated, or malfunctioning Instance.

Finally, to make the current trend of reproducing commercial social network dynamics worse, the introduction of a feature similar to X/Twitter’s “Retweet and comment”, which just a few years ago Eugen Rochko, Mastodon’s main developer, considered harmful and therefore declared he would not implement, is looming: “Quote posts” are already planned in Mastodon’s development roadmap and will inevitably be used mainly, as is already the case on X/Twitter, to create disruption, generate controversy and harass the person who wrote a post without discussing it directly with them, while recommending a post or an ongoing thread can already be done in other ways that are less prone to harassing usage.

We think that in a social context that is culturally and materially increasingly marked by competition, centralization, and the inability to confront each other outside of these dynamics, which are pursued and advocated by all the big economic and political players through their media overpower, those who develop FOSS social networks should avoid providing even only optional features such as Trending Post, Hashtags, News, Accounts, and the “Quote posts” to come, and to pursue in their turn, in their small context, the centralization and deterioration of social interactions for their own benefit; all the more so when they claim and pride themselves on pursuing instead cooperation, equal confrontation and decentralization.