Mastodon is an innovative open-source and self-hostable microblogging platform similar to Twitter or Tumblr. Its development was started in 2016 by Eugen Rochko and since then Mastodon constantly attracted new users and communities looking for a social environment independent from big company logics and censorship.
Mastodon is not a Twitter clone: by concept, structure and functionalities it is something completely different and much more interesting!
This page is an introduction to Mastodon’s basic concepts and features which you should know to fully understand how Mastodon works. It is structured in independent sections which you can jump to from the Index (see the link in the upper-left side), but it can also be read as a single text.
The site also hosts an Instances search engine that you can use to find the Mastodon instance that best fits your needs.
There is no such thing as a social network called Mastodon! Instead there are thousands of independent social networks called Mastodon Instances.
Every Instance has its own server, community, rules, admins and moderation.
From every Mastodon Instance it is possible to interact with users who are on other Instances. It works exactly like e-mail does (you can send an e-mail from Gmail to Yahoo, right?). That’s because all the Instances can be mutually interconnected.
Every Instance administrator can choose to silence or to completely block a user of his own or another Instance, but also to block another Instance as a whole (for example because it has bad moderation and allows trolling).
When we say “Mastodon” we mean the whole network of Mastodon Instances but also the technology that the Instances share.
A good way to describe the network is by saying that Mastodon is a “galaxy of interconnected social networks based on a common platform”.
Everybody! Since Mastodon is a Free and Open Source platform, everybody can use, modify and install it on his own server. Moreover the people who developed Mastodon do not own any copyright on it. That’s the basic philosophy of Free and Open Source Software: to share useful software that everybody can use freely and collaborate to improve it.
Your personal data and contents are located on the Instance you have chosen. That means that only the instance admins can have access to it (like on every social platform).
Everyone who has a server and enough skills to manage it can create his-her own Instance. Mastodon’s server software is completely Free and Open Source Software (FOSS), but hosting a server and buying a domain name have some costs. It also takes some work to maintain and moderate an Instance. Depending on the technical configuration and the amount of users of the Instance, running it can cost between a few hundred dollars per year to many thousands.
Many Instances are crowfunded but it’s also possible that some will ask a fee or some other way to cover its costs.
Mastodon is born as an Ad-free platform. For this reason, instances that will finance themselve with advertisement will be silenced or blocked by many.
Since every Instance is completely independent, each Instance can be very different from the others.
If you sign up on an Instance run by a French vegan community you can expect most of the users to communicate in French, and that posting pictures of barbecues and meat food would be considered offensive.
Similarly, if you sign up on an Instance run by a British religious community, the users will communicate in English and pictures of barbecues will be welcomed, but maybe posting nudity would be a problem.
Choosing the Instance that better fits your needs and attitudes is the best way to access the Mastodon galaxy.
You can choose an Instance by language, moderation policy, political views or any other criteria. Anyway, the more you feel at home on your chosen Instance, the better it is.
A well-run Instance will have its policies clearly written on its homepage and also publish the list of blocked or silenced Instances.
It’s extremely important that you sign up on an Instance whose admins share your language, your culture and, possibly, your political views: that way you will be able to have an easier time communicating with them.
Don’t be afraid to try out as many Instances as you like: you can always delete your accounts later on, link them to one another, or even keep them all! The sky is the limit!
There are thousands of different Mastodon Instances. There are Instances with only 5 users but also Instances with more than 100.000 users.
One such Instance is mastodon.social. It’s the Instance created and run by the creator of Mastodon, but that doesn’t mean it should be considered some sort of “official” Mastodon Instance, because every Instance has equal standing to the others.
The problem with those very huge Instances is that, since they are not connected to a specific community or identity and being their moderation more complex, they tend to replicate some of the problems of the big commercial social networks in regards to users’ behaviour.
As an example: if in your country you are part of a threathened minority and you are registered on a huge Instance and another user from your country harrasses you, it will be a struggle for the admin just to understand that you are the harrassed one! At the opposite, if you are registered on an Instance dedicated to your community, it will be easier for the admin to intervene quickly.
That’s just one of the reasons why the Mastodon network works at its best by connecting many small and medium Instances instead of relying on a bunch of gigantic ones.
For all those reasons, on this website we don’t list such big Instances by default among our suggestions.
Given all the possibilities that users and admins have to block other users and Instances, one could argue that Mastodon is a network filled with closed communities that don’t talk to each other and isolate themselves in their own echo-chambers.
While this is technically possible, the truth is completely different and in fact on Mastodon there is a huge variety of communities that is rarely seen on most social networks.
Basically, every Instance can interact with all the other ones and later decide to close some of these connections. That’s up to the community that runs the Instance, its culture and mind openness. A closed minded community that doesn’t respect different people and lifestyles will easily block and be blocked from other Instances. On the other hand, an Instance run by open-minded people that is willing to talk respectfully with others will never be blocked by other open-minded communities.
Since its inception, Mastodon has been adopted by various communities that carry anti-fascist, anti-racist, anti-sexist, pro-LGBT, anti-homophobic, anti-transphobic values and with time attracted other communities that promote ecology, natives, human rights groups, animal rights, vegetarianism and veganism and also minorities, anti-casteism movements etc. Therefore, racist and bigots would be surely banned from most Instances and if they would run their own Instances, those Instances would be quickly isolated by most of the existing ones.
Since Mastodon software is open source (if you are a geek you can find the code here), every Instance administrator can apply some little modifications to it. For example some Instances make it possible for a user to publish posts longer than the standard 500 characters. Also, some Instances can choose to not use certain features like Trending Hashtags.
Every Instance is completely indipendent and has its own policy and terms of service. Therefore, when you publish something on Mastodon, your content is saved on your Instance’s server and every Istance will manage it in a different way, depending by its own rules.
If you want to use Mastodon to promote your art or, for other reasons, you want to have certain specific guarantees for your content, you should choose an Instance specialized in that.
Anyway, due the federated nature of Mastodon, your content could be boosted also on other Instances that could manage it in different ways.
For the same reason if your Instance admin removes one of your posts, a copy of it can still be present on other Instances.
Everybody has an e-mail address, but as you can notice there is no “official” e-mail App. Instead you can access to your e-mail from your web browser or using one of many e-mail Apps. In much the same way, there is no official App for Mastodon (and you can always use your web browser!).
On Android you have many alternatives, the most notable being Tusky, Fedilab and Subway Toot. You can download these either from the Google Play App-store or from F-Droid, a free and open source alternative to App-stores.
On iOS you have a similar amount of choice, with Amaroq, Toot and Mast being the most widely used Apps.
Every App is slightly different from the others and will have its pros and cons, so you will have to check them out and see for yourself what fits you best, just like with Mastodon Instances!
Be aware that some of those Apps, such as Toot and Mast, may not be free or open source!
Every App can add or hide certain functionalities. For example some of them have translation buttons and other have bot indicators.
The usual way to access to your Instance from your desktop computer is by going to the Instance homepage trough your browser. But there are also Desktop Applications for Mastodon like
- Whalebird (Linux, Windows, OSX)
- Tootle (Linux)
- TheDesk (Linux, Windows, OSX)
- Hyperspace (Linux, Windows, OSX)
There are also alternative frontends! A frontend is a website where you can login with your Mastodon account but doesn’t show your standard home page graphics: the colours, buttons and menus are all different and maybe you could find them better or easier to use then the original ones.
Applications and frontends too can add, hide or customize certain functions, compared to the ones you find when you access to your Instance from its homepage. Therefore sometimes it’s possible to find tips, advices or instructions that are not applicable if you use them not on the homepage but on an Application or frontend. Take notice.
A Mastodon account is formed somehow like an e-mail account:
Many new users believe that their username is only the @name part but that part alone is unusable, like an email address without what’s written afer the @.
If you mention someone on Mastodon only by @name, the software usually assumes that the contact is on the same Instance you are currently logged into. Therefore, if that person is on a different Instance and you don’t write the @instance part, clicking on @name will either result in a broken link or bring you to somebody with the same name on your Instance.
Some Apps will correct this behaviour, so check it out.
Like every digital platform, Mastodon too renames functionalities that other platforms call differently.
For example the posts, or messages, that on Twitter are called “tweets”, on Mastodon are called “toots”. A shared post on certain platforms is called “repost” or “retweet” while here it’s called “boost”.
Since you can access Mastodon with different Apps and frontends developed by different people it’s also possible that certain functionalities are called or translated differently. For example what is called “direct messages” on an App, on a different one is called “private messages”.
On Mastodon you have 3 different timelines
- Home: like on Twitter, it shows all the posts of all the people you follow on all Instances;
- Local: it shows all the posts of the members of your Instance;
- Federated: it shows all the posts of the members of your Instance and also the posts of people on other Instances that are followed by people of your Instance.
On every timeline the posts are shown in chronological order. This means that no algorythm, number of stars or other factors will influence the number of times you will see a post. A post can be boosted (“retweeted”) but that’s it.
In many Instances, if you search something in the search box of Mastodon, it will find only users or #hashtags. A more powerful search system will be implemented in the near future.
The search box does not explore the entire Fediverse but only the portion of it that your instance is connected to. Therefore if you search a user it will search among all the users of your instance and of the instances you are connected to, but not those who are on instances you aren’t connected to. If you search an hashtag it will not list all the posts from all the existing instances containing it but only the posts published by users that your instance knows.
Twitter’s “Trending Topics” feature finds its Mastodon’s counterpart in “Trending Hashtags”. When “Trending Hashtags” are active, though, they’re reviewed by the admins to ensure they aren’t being gamed as a vector for abuse. However what’s most important is that this feature is completely optional: it is up to each instance’s admin and its community to decide if they want to have “Trending Hashtags”, and in fact many instances don’t activate it, thus eliminating the urge for their users to participate in certain topics instead of others and all the “social noise” about vapor-problems. So many Mastodon Instances are places where you can talk with people without having to know by a “Trending Topics” board that a certain topic is more important than the one you really want to talk about.
The “boost” function has no “comment” feature like the “retweet and comment” button on Twitter.
That’s by design, because it’s a feature that is mostly used to harrass people and leads to talks around a topic but without direct interaction. Yes, we know, it also has legitimate uses but, well, the point here is to prefer real interactions than boosts.
If you want to suggest somebody to read a certain thread on Mastodon you can boost it or interact directly in the thread and mention the account of the person that you want to join the discussion.
You can also reference to a post by copying its URL and pasting it into a post of yours. That’s ok too, but remember that it will work correctly only from desktop and from certain Apps. In other Apps, clicking on the link will take the user from the App to the browser.
When you check another user’s profile you will see the number of people who follow and who are followed by them, but if you click on that number you can’t see the entire list of people. Instead you can only see some of them: the ones you already know or who are members of your same Instance.
That’s by design, being an anti-harrassment feature.
Let’s check real life: in real life you don’t walk around with the list of your friends attached to your neck, do you?
But then, if you cannot discover new people by checking who is following who, how can you find and meet new people on Mastodon? By talking, socializing and discussing things. When you boost friends’ posts you are presenting them to all your other friends and so on. Mastodon emphasizes real human socialization instead of espionage-style exploration of profiles.
When you post a message (toot) you can choose among 4 types of posting
- Public: your post is public, it appears on public timelines and everybody can see it. Public posts are recognizable by a globe icon.
- Not listed: your post is still public but doesn’t appear on timelines. People can read it only if they are mentioned in it or if they go to your profile and scroll through your posts. Not listed posts are recognizable by an open padlock icon.
- Followers only: your post is still half-public because only your followers will see it. At their eyes it appears as a regular public post. Followers only posts are recognizable by a closed padlock icon.
- Direct: your post is private and viewable only by the people mentioned in it. Direct posts are recognizable by an envelope icon.
Anyway remember that Mastodon is designed to spread interactions and not for privacy: your Instance admins can read all your messages, including direct ones, just like on every other big social network.
For encrypted messaging there are other and more specific platforms.
A thread can evolve in a sort of “tree” because people will reply and counter-reply to different posts. In the following picture you see a thread that, from a single post, evolves in four different branches:
Twitter users are quite used to it but if you arrived here from different platforms (eg. Facebook) this can be a little bit confusing.
If you want to read a thread that is highly ramificated, the most important concept to understand is that when a post is selected, the thread is reorganized to show only the branch that starts from the first toot and arrives to the selected one, plus all the posts and branches following the selected post.
Let’s make some examples. If you want to read the thread pictured above and you select the first toot, all the following posts will be rearranged in chronological order (see the picture below).
Now, pay attention: if you pick the thread by selecting the post nr. 2 you will still see all the following posts in chronological order, but you will not see the previous ramification (the sub-thread containing the posts 2a and 3a).
Also, if you pick the last post of a sub-thread (in this picture the post 7c) you will see all the previous posts in chronological order, but excluding all the other sub-threads.
If you want to change Instance it is possible to transfer all your data (including posts, followers and blocked users list) to the new one.
Instances that use older Mastodon software use a different trasfer method. For that reason, before moving your account check if both Instances (the new one and the old one) are both updated. Otherwise the process will only partially work.
The first thing to do is to open an account on a new Instance.
The data transfer is done through several steps (some are not mandatory and therefore you can choose what to transfer to the new Instance): inform both Instances about the existence of the other account and confirm that you are the owner and then transfer your followers. After that you can export from the old Instance other data like your posts, the people you follow, the one you have blocked, the Instances you have blocked and then you can import that data in the new account. Last but not least it’s possible to set a redirect: that’s a link between your old and new account so that people that search your old account will be redirected to the new one. After the transfer you must wait some time to gain permission from your Instance to transfer your account again.
The point is that when you transfer your account you can choose between more options: keep the old account but redirect the users to the new one, completely delete the old one and transfer only the followers and so on.
That is done in the Settings under “Import” and “Export”
Mastodon developers are improving the transfer methods but anyway it’s still a delicate procedure that takes some time.
Mastodon features a Content Warning system. It’s an optional mask that covers the content of a post with an editable warning message.
It’s used to cover content that is admitted by your Instance policy but may still hurt people, like spoilers, nudity, depiction of violence or threads about sensitive topics.
For example, if you want to start a thread about the ending of a fresh new movie, you can do it using a CW like “Spoiler about the ending of...”
Every Instance has its own rules about CWs and therefore it’s common to see them used in different ways, like on selfies or depictions of food. That is because what on an Instance is considered a sensitive topic on another may be something commonly accepted. It’s possible that an Instance is blocked by others because of its misuse of CWs on certain kinds of topics.
This said, if you want you can always go in the Setting page and set to automatically uncover all the CWs.
Mastodon is famous for its anti-harassment environment not because there isn’t any on it (that would be impossible) but because its structure and moderation tools permit a series of efficient and immediate actions against bad accounts or Instances and because most of the Instances are run by communities that actively work to maintain Mastodon’s environment a nice and tolerant place. Many communities help, inform and warn each other when they identify an Instance run by people that spread hatespeech or trolling. Having admins and moderators for every single instance, the ratio between regular users and moderators can be extremely high. Also remember that every Instance has its own policy based on the community’s culture, ethics and political view. Moderation is always a political act and claiming for total impartiality means taking the side of the status quo.
If the admins of Instance1 block Instance2, then the users of Instance1 cannot interact with the users of Instance2.
If the admins of Instance1 silence Instance2, then the users of Instance1 can still privately follow and interact with the users of Instance2, but those interactions (like boosts) will not be seen by the other users of Instance1.
To be more clear: blocking is used for Instances that permit horrible things and behaviours, while silencing is used for Instances that your Instance tolerate but doesn’t appreciate that much.
The same things are applicable to users.
You too, as a simple user, can decide to block or silence – for your eyes – other users and entire Instances.
Please note that even if Instance2 is blocked, it’s still possible that their users see some contents of Instance1. More effective kinds of blocking are in development.
On Mastodon you will not receive notifications like “40 people liked the post you boosted” or “John is tweeting about this” or “Laura and Mike are now following Hannah”.
Nobody will tell you what you “must” read or who you “must” follow.
Nobody cares that much about the “success” of a post.
There are no blue badges for verified accounts.
You get informed about how many people “starred” or boosted your post and that’s it.
To know how many times a certain post was boosted or “starred” you must click on it. But there is no emphasis on it and in fact nobody really cares.
What’s important, here, is to interact in real conversations and... who cares about “points” received from people that don’t interact?
Are you still searching for the Trending Topics that will impose to everyone today’s obligatory conversation topic?
Are you searching for “people to follow” instead of “people to interact with”?
Are you still planning time-wasting things like hashtag wars instead of doing something real?
Are you searching for emotional and social gratification in the number of retweets you receive?
Are you still judging a post by the number of likes that it received?
Are you still writing cool posts to obtain likes insted of writing interesting things that stimulate discussion and interaction?
If so, please pay attention: there is still much Twitter inside you! And it takes some time to heal... 😉
You can still keep some relation with your previous Twitter account using crossposting services.
There are services like ifttt.com, masto.donte and moa.bridge which can connect your Twitter account with your Mastodon account. With these services you can publish your tweets on Mastodon and/or publish your toots on Twitter.
We strongly suggest to use only the second option because, being centered on real interactions, a Mastodon account that is simply a Twitter bot that doesn’t reply will easily be blocked by many.
Many Instances have strong rules about the use of crossposters, especially because if you use them from Twitter to Mastodon, your Mastodon account could be considered like a bot and also bots are sometimes strongly regulated. So check your Instance policy before using them.
If you want to mention a Twitter user in a toot crossposted to Twitter and you want his-her username to be clickable both by Mastodon and by Twitter users, you must write it as follows:
All the Mastodon Instances that together form the entire “Mastodon Galaxy” are part of something much bigger called the Fediverse.
- PixelFed is similar to Instagram;
- PeerTube is similar to Youtube;
- Friendica is similar to Facebook;
- FunkWhale is similar to Soundcloud;
- Write.as and Plume are blogging platforms;
- Hubzilla is a powerful multi-functional platform.
And there are more...
All of them, like Mastodon, don’t have a unique central server but are a “Galaxy” of many Instances. There is no “main” or “official” Friendica Instance, you can choose among different PixelFed Instances and so on...
Please note that what on Mastodon is called an “Instance”, on other platforms may have a different name (for example, on Hubzilla it is called an “Hub”).
And all of these platforms (“Galaxies”) interact with each other, forming the Fediverse.
What does that mean? Well, imagine that you could natively 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 an account on Pixelfed? Ok, I don’t use Pixelfed but I can follow you from Mastodon! A friend of mine does’t like Mastodon but prefers the more Facebook-like Friendica? No problem: he can follow me from Friendica and we can both chat and interact, staying each one on the platform that we prefer.
Also remember that the whole Fediverse is an innovative work in progress where not everything works yet perfectly and some adjustments on your part may be needed. Things will likely work differently from what you expect and the developers may not have time or interest in implementing things that you think should be priorities.
The majority of commercial social platforms are centralized networks. That means that everything on them is run and controlled by one authority, usually the company that owns the platform.
If you want to interact with a Twitter user, for example, you can do it only by signing up on Twitter.com, thus agreeing to abide by Twitter’s terms and conditions policy.
Mastodon is instead a galaxy of decentralized and independent networks called instances, each one with its own website, policy and community.
But Mastodon is also federated! That means that all of these networks can (but are not obliged to) interact with each other.
A fresh new instance is not federated with any other instance, so its users can initially interact only with other users on the same instance.
Once you create a connection with somebody on another instance, or somebody on another instance creates a connection with somebody on your instance (we will see later how), all the users of your instance can begin to interact with that user.
The user of the other instance will boost and interact with posts of other users of their instance and also other instances that are just in connection with them. All the people on your instance can see those interactions and participate in them. By doing so, the number of connections will start to grow (that’s what federation means).
Every single user of any instance can create a new connection with new instances.
Therefore, the more you interact with people on other instances, the more your instance network will grow and become part of a huge, gigantic federated network formed by lots of instances. Your federated network will probably never cover the entire Mastodon galaxy but only a part of it. How much depends on you to decide. The more people on other instances you connect with, the bigger your network will be.
If one day your instance decides to end the interaction with a certain other instance by blocking it, all your connections with other instances will remain and other instances can continue to interact with the instance that is blocked by your instance.
Note some instances end up creating completely different “parallel” networks. This can happen because those instances are blocked by many instances in your network or just because connections don’t exist (yet). They too are on Mastodon, but in a completely different part of the galaxy. Far far away, they are not part of your federated network but members of an autonomous and independent network.
Also note that the the same concepts are appliable to all the platforms of the Fediverse! Your instance isn’t limited to connecting with other Mastodon instances, you can connect your instance with people on Pleroma, Friendica, Pixelfed, Peertube and so on. How vast and wide-ranging your view of the Fediverse can be is entirely up to you! 😉
How can you create a connection with people that you don’t know on instances that nobody on your network has ever seen before?
Well, that’s a little bit tricky and it works exactly as in real life: by exploring, going to new places, searching new things and having different experiences.
On commercial centralized networks everything happens inside: by design you search things without ever going outside the platform and remaining inside their gates.
Here it is different: your federation will not grow very much if you remain tangled inside the borders of your own network. You must go outside Mastodon, read blogs, magazines, create a new account on a different instance, surf other networks and forums, have real life interactions to find new and completely unknown instances to add to your network! There are also webpages dedicated to the discovery of new Instances. Only explorers will enlarge their federation. Always remember that every closed gate is bad for your mind: Mastodon is not a walled garden separated from what exists outside of Mastodon itself.
That said, as you have seen in the previous chapter, connections are easy to make and although the Fediverse is huge, an instance will never really be isolated and unknown if it is willing to interact with others.
When you see some content you want to include in your network (for example an account or a post from another federated platform that uses ActivityPub, the communication protocol shared by all the platforms of the Fediverse), cut and paste the URL or account address into the search box of your instance. This will create a connection, and you can boost the post or follow that account. That’s it!
This process can change slightly depending on whether you access Mastodon directly via the website of your instance or through an App. It can also be slightly different on other Fediverse platforms.
Some platforms have special buttons for helping you in this process. One of those is PeerTube.
If you find a PeerTube video that you want to share on Mastodon, you can click on the button “share”:
This will open a popup where you can easily copy the video’s URL by clicking on the “copy” button:
Go to your Instance and paste the URL in the search box. The video appears in Mastodon and here you can like, comment or boost it. You can also decide to follow the user that posted the video. Everything as it was a Mastodon user.
Otherwise, if you wanted only to follow that user, on PeerTube you can click on the button “Subscribe”:
This will open a popup that asks your Mastodon account:
After logging in your Instance you can click on the “follow” button:
That’s it! Now you can go to your Mastodon page or close the window and go back to PeerTube: