Your own relay is coming. Reserve yours, no payment

Nostr vs Bluesky vs Mastodon

All three let you post without one company owning the whole network. The difference is who holds your identity: on Nostr it's a key you keep, on Bluesky a DID your provider can help you move, on Mastodon an account on one server. That decides how you move, and who can remove you.

By · Last updated

At a glance

Nostr Bluesky (AT Protocol) Mastodon (ActivityPub)
Your identity is A key pair you hold. No server issues or can revoke it. A DID (did:plc or did:web), with a domain name as your handle. did:plc lives in a directory run by Bluesky. An account on one server: @you@server.social.
Your posts live on Any relays you publish to, usually several at once. Your PDS (personal data server). Most people's is run by Bluesky. Your server, copied to servers whose users follow you.
Moving to another provider Nothing to move: add or swap relays; your key and followers stay. Account migration to another PDS: your DID, posts and followers move. A Move to another server: followers move, posts don't.
Who can remove you Each relay and app, for itself only. Nobody can remove the key. Your PDS host; Bluesky's moderation and labelers for its app. Your server's admins; other servers can block your server.
Running your own A relay is a small program on a small server. A PDS is supported; a relay or AppView takes much more. A full server: Mastodon with a database, Redis and storage.
Spec NIPs, short community documents on GitHub. The AT Protocol, published by Bluesky. ActivityPub, a W3C Recommendation since 2018.

Nostr: the key is the account

On Nostr, your account is a key pair you generate yourself, and every post is an event you sign. Relays store events; apps read them from whichever relays you use. A relay can drop you, but it can't take your identity, and no other relay has to agree. Names like you@example.com (NIP-05) are optional and point at your key.

The cost is that the key is all there is: no password reset, no provider to recover it. Use a signer, and read how to keep keys safe.

Bluesky: portable accounts, mostly on one company's servers

The AT Protocol separates the parts. Your identity is a DID, a stable identifier, and your handle is a domain name that resolves to it. Your posts sit in a repository on a PDS. Relays collect every PDS's updates into one "firehose", and AppViews (like the Bluesky app) build feeds from it.

You can move your account to another PDS without your old one's help, and you can host your own PDS. In practice, Bluesky's company runs a large share of the network (many PDSs, the main AppView and a relay), and the common did:plc identities live in a directory it operates. Moderation is layered: labelers attach labels, and apps decide what to do with them.

Mastodon: an account on a server

Mastodon is software for independent servers that talk ActivityPub. You sign up on one, like picking an email provider, and your handle includes its domain. Servers deliver posts to each other's users. Admins decide the rules on their server, and can block whole other servers.

If you move, Mastodon's Move tells your followers' servers to follow your new account, but your posts stay behind: Mastodon's own docs say they won't be moved. If your server shuts down, the account goes with it.

And Matrix?

"Nostr vs Matrix" is a common search, but Matrix is a different kind of thing: an open standard for chat. Accounts live on homeservers, conversations happen in rooms, and homeservers federate. Nostr can do chat too (NIP-17 private messages, NIP-29 groups), but its centre is public posting with portable keys.

Which should you use?

If you want an identity no provider can take away and don't mind looking after a key, Nostr. If you want a familiar app with portable accounts and a company doing the hard parts, Bluesky. If you want a community with its own rules and admins you can talk to, Mastodon. Bridges such as Mostr (Nostr ↔ ActivityPub) connect some of them, so it isn't all or nothing.