Schedule Content Warnings on Mastodon and Bluesky

A content warning is how you post spoilers, politics, or NSFW art without ambushing people who didn’t ask to see it. The catch is that Mastodon and Bluesky handle warnings in completely different ways, and a post that’s safely tucked away on one network can show up uncovered on the other.

On Mastodon, a content warning hides the whole post, text and media, behind a short warning you write yourself. On Bluesky, a content warning is a label from a fixed list, and it only covers images, video, or a link card, never the text. To schedule posts with content warnings on both, Fedica lets you set a Mastodon warning and a Bluesky label separately on the same post, so each network gets the warning it understands.

Content Warnings on Mastodon

A content warning on Mastodon is a short line of text shown in place of a post, with the post itself collapsed until the reader clicks to open it. People usually call it a CW. In Mastodon’s API it’s the spoiler_text field, and some apps still label the button “spoiler.”

Mastodon’s documentation is direct about what it does: “When a content warning is included, the status content will be collapsed by default, and only the Content Warning will be shown.” Adding a CW also marks any attached images or video as sensitive, so they’re blurred too.

A Mastodon CW works on any post, including text-only ones. That’s why it gets used for far more than NSFW content. fedi.tips, the community guide most Mastodon users end up reading, describes “a very strong Fediverse tradition” of using CWs for politics and religion, alongside the obvious cases like gore and nudity. Spoilers, health updates, and heavy news get the same treatment.

Whether a CW is required depends on your server. Some Mastodon servers have firm rules about what must go behind a warning, and others leave it to your judgment, so check your server’s rules before you schedule anything sensitive.

A good CW tells people what’s behind it without giving it away:

  • Spoilers: Severance S2 works. “Spoilers” alone makes everyone guess.
  • US politics or Medical, needles lets people decide in a second whether now is a good time.

Readers who’d rather skip the warnings can switch on “Always expand posts marked with content warnings” in their Mastodon preferences, which is part of why fedi.tips calls CWs “an accessibility feature for many people.”

Content Warning Labels on Bluesky

Bluesky doesn’t have a free-text content warning. Instead, you add a label to your post from a fixed list, and each reader’s own moderation settings decide what happens next: show the post, show it behind a warning, or hide it.

Bluesky’s app groups the labels like this, with its own descriptions:

  • Suggestive: “Pictures meant for adults.”
  • Nudity: “Artistic or non-erotic nudity.”
  • Adult: “Sexual activity or erotic nudity.”
  • Graphic Media: “Media that may be disturbing or inappropriate for some audiences.”

You can pick one of the first three (choosing another replaces it), plus Graphic Media on top.

Bluesky labels only cover media. Bluesky’s app only shows the Labels button when a post has images, video, a GIF, or a link card, and the label dialog itself asks you to add labels “applicable for the media you are posting.” We checked this in Bluesky’s open-source app code in October 2026. A text-only Bluesky post can’t carry a content warning at all.

If you’re looking for the other side of this, how to see or hide adult content as a reader, Fedica has a separate guide to Bluesky adult content settings.

Mastodon vs Bluesky Content Warnings

Here’s how the two compare when you’re deciding what to post where:

Mastodon content warningBluesky label
What it hidesThe text and any mediaImages, GIFs, video, or a link card
Text-only postsYesNo label option
Who writes the warningYou, in your own wordsYou pick from a fixed list
OptionsAny text (“Spoilers: Severance S2”)Suggestive, Nudity, or Adult, plus Graphic Media
Who decides what readers seeReaders see the warning and click to open, unless they auto-expand warningsEach reader’s Show, Warn, or Hide setting for that label
Typical usesSpoilers, politics, health, news, NSFWSexual content, nudity, violence, gore

The practical upshot: a spoiler or a political rant can sit behind a warning on Mastodon, but on Bluesky the text of that same post is always visible. When the text itself needs a warning, give Bluesky its own wording.

How to Schedule a Post with a Content Warning in Fedica

Fedica sets content warnings on Mastodon, Pixelfed, and Bluesky posts when you schedule them, and has since it added content warnings for Bluesky and Mastodon in May 2024. Here’s how:

  1. Open the composer from Create Post under Publish and select your Mastodon, Bluesky, or Pixelfed accounts.
  2. Write the post. For Bluesky, attach the image or video you want labeled, since labels need media.
  3. Switch to Custom Posts so each network gets its own settings.
  4. For Mastodon, turn on Content warning and type your warning. Pixelfed has the same Content warning switch.
  5. For Bluesky, turn on Content warning and pick Suggestive, Nudity, Adult, or Graphic Media.
  6. Schedule it with Add to Pipeline or Specific Date.
Fedica Custom Posts for Mastodon with the content warning turned on and the warning text

Fedica's Bluesky content warning picker with the Suggestive, Nudity, Adult, and Graphic Media labels

Fedica’s label names match Bluesky’s app, so what you pick is exactly what Bluesky shows. For more on Bluesky-only labeling, see Fedica’s guide to scheduling Bluesky posts with labels. The rest of each network’s scheduling features are on Fedica’s Mastodon Scheduler and Bluesky Scheduler pages.

Content Warnings on Scheduled Threads

When you schedule a thread with a content warning in Fedica, the warning applies to every post in the thread.

  • On Mastodon, every post in the thread goes out behind the same warning, text-only posts included. Nobody scrolling the thread gets surprised halfway down.
  • On Bluesky, the label goes on all the media in the thread, so every image or video is covered. Text posts in a Bluesky thread stay visible, as they would on any Bluesky post.

That makes threads a good fit for long spoiler discussions or sensitive topics on Mastodon. Fedica’s guide on how to schedule Mastodon threads covers numbering and spacing the posts out.

Sending One Post to Mastodon and Bluesky

When you send one post to several networks at once with Quick Post, content warnings don’t carry over between them. A Mastodon content warning doesn’t become a Bluesky label, and a Bluesky label doesn’t become a Mastodon warning. Each one is set in that network’s Custom Posts.

So for a post going to both, set each one in Custom Posts:

  • Mastodon: turn on Content warning and type the warning.
  • Bluesky: attach media, turn on Content warning, and pick a label.

Pixelfed has its own Content warning setting in Custom Posts too, if it’s in the mix.

Since a Bluesky label can’t hide text, it’s worth reading the post as a Bluesky reader will see it, warning-free text and all, before it goes out. If that’s a problem, Custom Posts also lets you write different text for Bluesky.

The same scheduled post published on Mastodon behind a content warning and on Bluesky with a labeled image

Frequently Asked Questions

What does CW mean on Mastodon?

CW stands for content warning: a short line of text that hides a Mastodon post behind it until the reader clicks to open it.

Can you add a content warning to a text post on Bluesky?

No. Bluesky labels only apply to posts with images, video, or a link card, and the app doesn’t offer a label on text-only posts.

Do I have to use content warnings on Mastodon?

It depends on your server. Some Mastodon servers require CWs for certain content, like nudity, and others leave it up to you, so check your server’s rules.

Does a Mastodon content warning carry over to Bluesky when I crosspost?

No. In Fedica, each network’s warning is set separately in Custom Posts, so a Mastodon content warning and a Bluesky label are two separate settings on the same post.