The Social Web Explained: How ActivityPub Powers the Fediverse

The Fediverse offers an alternative to big social platforms. Learn how ActivityPub powers it and why it matters now more than ever.

The Social Web Explained: How ActivityPub Powers the Fediverse
Photo by Elena Rossini / Unsplash

Most people today experience the social Internet through centralized social platforms. Facebook, Instagram, and TikTok are good examples. These services decide how information flows, who sees what, and what users can do with their own content. All data is stored on their servers, and the rules of engagement are set behind closed doors, often with little transparency.

But social networks do not need to belong to a single company. The decentralized social web, often referred to as the Fediverse, is built on open standards that let users sign up with a provider, yet access content across the entire system. In this model, users choose where their data is stored, and no single company controls the entire network. The concept is not new, but it has gained traction as concerns grow around data ownership, moderation practices, and platform lock-in.

Centralized vs Decentralized Social Networks

This article explores the foundations of the social web, how ActivityPub enables decentralized networking, and what the future may hold for users seeking more autonomy online.

What is the Social Web?

Different generations have gravitated towards different social networks. Boomers on Facebook, Gen Z on Instagram, and Gen Alpha on TikTok. This generational divide often means juggling multiple accounts to stay connected with friends and family. A decentralized social network removes these barriers, allowing seamless interaction across platforms. Instead of using several apps to see everyone's social feed, users can browse anyone's content in their favourite social application. This collection of interconnected platforms is often referred to as the Fediverse, short for "federated universe." It is powered through platforms such as Mastodon, PeerTube, and Pixelfed, all communicating through a shared protocol.

The author's BBS, member of various messaging network such as X-Net, VillageNet, GameNet and WWIVNet

The concept of a decentralized social web isn’t new. Long before today’s social media giants, people connected through bulletin board systems (BBS), each interconnect through decentralized networks like FidoNet or WWIVNet. These early systems allowed users to share information and communicate across the world, from the comfort of their local BBS. This model promoted freedom and user control, setting a precedent for the decentralized platforms we see emerging today.

Centralized Reality

Centralized platforms maintain strict control over user data and the flow of information. Content shared by users is stored on the platform's infrastructure, subject to moderation and recommendation algorithms. These algorithms determine what is shown, what is promoted, and what quietly disappears from view. In most cases, users have little insight or influence over these decisions.

Facebook Ads can be targeted to specific audience based on your personal interests.

User data is also heavily leveraged. It can be sold to advertisers, used to personalize feeds, or fed into machine learning systems to improve engagement metrics. This creates a feedback loop where platforms benefit from increased attention, while users lose visibility into how their content is handled.

For many, the experience is convenient. However, that convenience comes at a cost. The platform owns the account, the audience, and the data. If access is lost, there is often no way to retrieve that social graph or transfer it elsewhere. And because each platform is isolated, staying connected across generations or interest groups often requires maintaining multiple accounts at the same time.

Introducing Activity Pub

ActivityPub is a protocol designed to support decentralized social networking. It allows independent servers to communicate using a shared standard. This enables users on different platforms built on ActivityPub, such as Mastodon, Pixelfed, or PeerTube, to follow each other, share updates, and respond to content across networks.

That said, it is important to distinguish between platforms, such as Mastodon or Pixelfed, and the individual servers or instances that run them, such as mastodon.social or.pixelfed.social . Each instance operates independently but uses the same software and protocol to connect with the wider network.

At the core of the protocol are two main concepts: Actors and Activities.

An Actor is any entity that can perform actions or be interacted with. This includes users, groups, bots, or even blogs. Each Actor has a unique identifier, usually expressed as a URL, and a public inbox where messages can be received.

For example, a Mastodon user might have an actor URL like: https://mastodon.social/users/technodabbler

This URL can be broken into three parts:

  • https://mastodon.social — the domain of the server hosting the actor
  • /users/ — the type of actor, in this case a user profile
  • technodabbler — the unique identifier for the actor on that server

When another server wants to interact with this actor, it fetches the URL and receives a structured description of the actor’s profile and capabilities. This includes where to send messages, who the actor follows, and what activities they have published.

Activities represent the actions taken by Actors. These are expressed in a structured format, most often using JSON-LD. Common activities include Create, Follow, Like, and Announce. For example, when a user shares a new post, a Create activity is generated and sent to that user’s followers.

{
  "@context": "https://www.w3.org/ns/activitystreams",
  "id": "https://example.com/users/technodabbler/statuses/12345/activity",
  "type": "Create",
  "actor": "https://example.com/users/technodabbler",
  "published": "2025-05-30T14:00:00Z",
  "to": ["https://www.w3.org/ns/activitystreams#Public"],
  "object": {
    "id": "https://example.com/users/technodabbler/statuses/12345",
    "type": "Note",
    "attributedTo": "https://example.com/users/technodabbler",
    "content": "Hello world, this is my first post!",
    "published": "2025-05-30T14:00:00Z",
    "to": ["https://www.w3.org/ns/activitystreams#Public"]
  }
}

Sample Create Message

Messages are delivered using standard HTTPS requests. When a server sends an activity to another, it posts the message to the recipient’s inbox. The receiving server verifies the signature, checks the content, and, if valid, adds it to the appropriate timeline or feed.

Content Propagates

ActivityPub uses a combination of push and pull to distribute content across the network.

When a user creates new content, a Create message is sent to the inboxes of all their followers. This is the push mechanism. It ensures that new posts appear promptly in followers’ timelines. Other activity types, such as Announce (similar to a repost or boost) and Like, are also pushed. These activities are sent to relevant inboxes so that remote servers can update timelines, counters, and notifications accordingly.

Push vs Pull communication

In parallel, ActivityPub supports a pull model. Any server can fetch an actor’s content from their public outbox. This allows new followers to retrieve past content and helps ensure consistency even if push delivery fails. Pulling also enables public browsing of profiles and timelines without requiring a formal follow.

The combination of push and pull offers both immediacy and resilience. Content reaches followers quickly, but it also remains accessible and discoverable beyond the moment it was created.

Content Discovery

In a decentralized network, content discovery works differently. There is no global feed, no unified trending page, and no central algorithm determining what users see. Instead, discovery begins with the server a user chooses to join.

Each server, or node, maintains its own local timeline. This feed includes content created by users on the same server. When users follow accounts on other servers, remote content is introduced into the local feed. However, content does not automatically propagate across the entire Fediverse network. It stays within the set of servers actively connected through user interactions.

Some servers are general-purpose communities open to a wide variety of interests. Others are built around specific topics, values, or demographics. For example:

Mastodon
The original server operated by the Mastodon gGmbH non-profit

mastodon.social is a large and broadly scoped instance running the Mastodon platform

Fosstodon
Fosstodon is an invite only Mastodon instance that is open to those who are interested in technology; particularly free & open source software. If you wish to join, contact us for an invite.

fosstodon.org is a Mastodon instance focused on free and open-source software

TechHub
A hub primarily for passionate technologists, but everyone is welcome

techhub.social is a Mastodon instance for science and technology enthusiasts

Writing Exchange
A small, intentional community for poets, authors, and every kind of writer.

writing.exchange is a Mastodon instance dedicated to writers and literary discussion

Choosing a server can be an important step in shaping the user experience. It defines the tone of the local timeline and determines which remote content is likely to appear. However, finding the right server can also be a barrier. New users are often presented with a long list of instances, with little guidance on which might suit their needs. Without a clear path, some abandon the process entirely.

Another factor is the simplicity of content recommendation. Most Fediverse platforms use minimal logic to sort posts. Unlike centralized services that process billions of data points to optimize engagement, decentralized platforms work with smaller data sets. As a result, content is usually displayed chronologically or based on direct interaction, such as replies or boosts.

Single Accounts

In ActivityPub, user accounts are tied to individual servers. When a user creates an account, it exists only on that server. For example, an account on the mastodon.social instance cannot be accessed from fosstodon.org, even though both run the Mastodon platform. There is no way to merge or synchronize follow lists across servers. Each server acts as a separate identity host, with its own user data, preferences, and connections.

Despite this, users are not limited to local content. The whole point of ActivityPub is federation: allowing any account to follow and interact with users on other servers. Following someone on a remote server pulls their posts into the local timeline, where they appear alongside content from the user’s home community. As a result, a single account can provide access to a wide range of communities and interests across the network.

To follow someone on another server, their full handle is required. These handles take the form @username@servername and function much like email addresses. If the server already knows about the user, typically because another local user has interacted with them, the account may appear in search. Otherwise, users need to rely on external directories or browse remote servers manually.

The home feed of a new Mastodon account is empty until you follow other accounts.

Although the system is flexible and open, it introduces a significant barrier to entry. Discovery in the Fediverse requires effort. There is no algorithm to automatically surface content or build a customized feed. In contrast, centralized platforms optimize content delivery within minutes of signing up, using massive datasets to guide what users see. On ActivityPub, the responsibility shifts to the user to build their network and shape their feed over time.

Now and the Future

The Fediverse experienced a significant surge in popularity following the purchase of Twitter in 2022. Concerns about platform stability, moderation, and ownership drove many users to explore alternatives. mastodon.social, already well-established, saw its user base grow rapidly as people looked for more transparent and open communication tools. Other ActivityPub-compatible platforms also saw increased adoption, including Pixelfed, PeerTube, and Lemmy.

Interest in the Fediverse has since slowed. While the initial wave brought attention to decentralized social networks, retention has proven more difficult. Many users returned to centralized platforms, drawn by ease of use, algorithmic discovery, and established social graphs. Others remained, helping to grow and shape a community more focused on control, privacy, and interoperability.

Despite this, support for ActivityPub continues to grow. Threads, Tumblr, Ghost, and WordPress have all announced or begun integrating the protocol. These additions bring new types of content into the network, including news, newsletters, long-form writing, and blogging. Each new integration expands the network’s utility and reach.

Not all decentralized networks rely on ActivityPub. BlueSky, for example, uses the AT Protocol, which takes a different approach to identity and federation. However, compatibility bridges such as Bridgy Fed are beginning to connect the two systems. Over time, these tools may help reduce fragmentation and allow users to interact across platforms more seamlessly.

The future of the Fediverse depends on several factors. Adoption from larger platforms can help populate the network and attract new users. The reality is that you wont benefit from decentralized social web until all your friends, family and favourite content providers on the Fediverse. Tools for onboarding, discovery, and account migration still need improvement. Support for mobile clients and better curation options may help align the experience with user expectations.

Whether the Fediverse becomes a mainstream alternative or remains a niche community will depend on how these gaps are addressed. For those seeking openness and long-term control of their online identity, the Fediverse remains one of the most promising models available today.

💡
Have you joined the Fediverse or experimented with decentralized platforms? Share your experience in the comments below. If you found this article helpful, you might also enjoy exploring other emerging technologies such as Coding with ChatGPT or our Introduction to Cryptocurrencies. And if you want more articles like this delivered to your inbox, be sure to subscribe to our mailing list.