Lists are one of Bluesky's most powerful features for organizing your experience. Whether you want to curate content from specific accounts or manage moderation at scale, lists give you the tools. Here's everything you need to know about creating and using Bluesky Lists.

What Are Bluesky Lists?

Lists are collections of Bluesky accounts that you create, subscribe to, or share. They serve two main purposes:

  • Curation - Organize accounts to follow their posts as a feed
  • Moderation - Mute or block groups of accounts efficiently

Lists are public by default, meaning others can subscribe to lists you create. This makes community moderation possible - one person can maintain a block list that others benefit from.

Types of Lists

Curation Lists (curatelist)

Curation lists help you organize accounts by topic or interest. When you subscribe to a curation list, you can view posts from everyone on that list as a dedicated feed.

Use cases for curation lists:

  • Topic feeds - Group journalists, scientists, artists, or experts in any field
  • Local communities - Accounts from your city or region
  • Event coverage - People posting about a conference, game, or show
  • News sources - Official accounts from publications you trust
  • Friends vs Work - Separate personal and professional contacts

Moderation Lists (modlist)

Moderation lists help you manage unwanted accounts at scale. You can apply a moderation list to mute or block everyone on it.

Use cases for moderation lists:

  • Shared block lists - Community-maintained lists of known bad actors
  • Topic muting - Accounts that post about subjects you want to avoid
  • Bot blocking - Lists of spam or automated accounts
  • Harassment prevention - Block accounts targeting specific communities

Creating a List

In the Bluesky App

  1. Go to your Profile
  2. Tap the Lists tab
  3. Tap New List
  4. Choose Curation List or Moderation List
  5. Enter a name (required) and description (optional)
  6. Optionally add an avatar image
  7. Tap Save

Adding Users to a List

There are two ways to add users:

From the list:

  1. Open the list
  2. Tap Add Users
  3. Search for users by handle or display name
  4. Tap the + button to add them

From a user's profile:

  1. Go to the user's profile
  2. Tap the ... menu
  3. Select Add to Lists
  4. Choose which list(s) to add them to

Using Curation Lists

Viewing a List as a Feed

Once you've created a curation list with members:

  1. Open the list
  2. Tap View Feed
  3. See posts from all list members in chronological order

Pinning a List Feed

Make a list feed easily accessible:

  1. Open the list
  2. Tap Pin to Home
  3. The list feed now appears as a tab on your home screen

Subscribing to Others' Lists

You can use curation lists created by others:

  1. Find a list (via share link or profile)
  2. Tap Subscribe
  3. The list appears in your Lists tab
  4. View it as a feed or pin to home

Using Moderation Lists

Applying a Moderation List

When you create or subscribe to a moderation list, you choose how to apply it:

  • Mute - Hide posts from list members in your feeds, but they can still interact with you
  • Block - Prevent all interaction; list members can't see your posts or interact with you

Subscribing to Shared Block Lists

Community members often share moderation lists. To use one:

  1. Find the list (usually shared as a link)
  2. Tap Subscribe
  3. Choose Mute or Block
  4. The moderation applies immediately to all current members
  5. New members added by the list owner are automatically included

This is powerful for community safety - one trusted moderator can maintain a list that protects many users.

Managing Lists

Editing a List

  1. Open the list
  2. Tap Edit List
  3. Update name, description, or avatar
  4. Save changes

Removing Users

  1. Open the list
  2. Find the user to remove
  3. Tap the X or Remove button

Deleting a List

  1. Open the list
  2. Tap ... menu
  3. Select Delete List
  4. Confirm deletion

Note: If others have subscribed to your list, they will lose access when you delete it.

Lists for Developers

Building an app that uses lists? Here's how lists work in the ATProtocol API.

List Record Structure

Lists are stored as app.bsky.graph.list records:

{
    "$type": "app.bsky.graph.list",
    "purpose": "app.bsky.graph.defs#curatelist",
    "name": "My Tech News Sources",
    "description": "Tech journalists and publications I follow",
    "avatar": {
        "$type": "blob",
        "ref": { "$link": "bafkrei..." },
        "mimeType": "image/jpeg",
        "size": 45678
    },
    "createdAt": "2025-12-18T12:00:00Z"
}

List Purposes

  • app.bsky.graph.defs#curatelist - Curation list
  • app.bsky.graph.defs#modlist - Moderation list

List Item Records

Members are added via app.bsky.graph.listitem records:

{
    "$type": "app.bsky.graph.listitem",
    "subject": "did:plc:xyz...",  // DID of user to add
    "list": "at://did:plc:abc.../app.bsky.graph.list/3abc...",
    "createdAt": "2025-12-18T12:00:00Z"
}

Creating a List via API

import { BskyAgent } from '@atproto/api';

const agent = new BskyAgent({ service: 'https://bsky.social' });
await agent.login({ identifier: 'handle', password: 'password' });

// Create a curation list
const listRecord = await agent.com.atproto.repo.createRecord({
    repo: agent.session.did,
    collection: 'app.bsky.graph.list',
    record: {
        $type: 'app.bsky.graph.list',
        purpose: 'app.bsky.graph.defs#curatelist',
        name: 'Tech News',
        description: 'My favorite tech journalists',
        createdAt: new Date().toISOString()
    }
});

console.log('Created list:', listRecord.uri);

Adding a User to a List

// Add a user to the list
await agent.com.atproto.repo.createRecord({
    repo: agent.session.did,
    collection: 'app.bsky.graph.listitem',
    record: {
        $type: 'app.bsky.graph.listitem',
        subject: 'did:plc:user-to-add...',
        list: listRecord.uri,
        createdAt: new Date().toISOString()
    }
});

Fetching List Members

// Get all members of a list
const response = await agent.app.bsky.graph.getList({
    list: 'at://did:plc:xxx/app.bsky.graph.list/abc',
    limit: 100
});

for (const item of response.data.items) {
    console.log(`Member: ${item.subject.handle}`);
}

Subscribing to a Moderation List

// Subscribe to mute everyone on a list
await agent.com.atproto.repo.createRecord({
    repo: agent.session.did,
    collection: 'app.bsky.graph.listblock',  // or listmute
    record: {
        $type: 'app.bsky.graph.listblock',
        subject: 'at://did:plc:xxx/app.bsky.graph.list/abc',
        createdAt: new Date().toISOString()
    }
});

Best Practices

For Curation Lists

  • Be specific - "iOS Developers" is more useful than "Tech People"
  • Keep descriptions clear - Help subscribers understand what to expect
  • Maintain regularly - Remove inactive accounts, add new voices
  • Consider privacy - Some users prefer not to be on public lists

For Moderation Lists

  • Document criteria - Explain why accounts are added
  • Be transparent - Let people know if they're on your list
  • Review periodically - People change; reconsider old additions
  • Don't weaponize - Lists are for protection, not harassment

List Discovery

Finding useful lists:

  • Check profiles - Users often share their lists publicly
  • Search Bluesky - Look for posts sharing list recommendations
  • Community resources - Many communities maintain shared lists
  • Starter packs - Some starter packs include curated lists

Frequently Asked Questions

What are Bluesky Lists?

Lists are collections of user accounts for curation (organizing content) or moderation (muting/blocking groups).

How do I create a list on Bluesky?

Go to Profile → Lists → New List. Choose curation or moderation, name it, and add users.

What's the difference between curation and moderation lists?

Curation lists organize accounts for viewing as feeds. Moderation lists apply mute or block actions to groups.

Can I subscribe to someone else's list?

Yes. You can subscribe to public lists to use them as feeds (curation) or apply their moderation settings.

Are lists public?

Yes, lists are public by default. Anyone can see your lists and who's on them.

Start Organizing

Lists make Bluesky more powerful and personalized. Create a curation list for your favorite topic, or subscribe to a community moderation list to improve your experience. The more you use lists, the better your Bluesky feed becomes.