glossary

Not Safe For Work: What NSFW Means and What the Flag Actually Hides

Taras Shynkarenko
Taras Shynkarenko
•Updated: •8 min read
Not Safe For Work: What NSFW Means and What the Flag Actually HidesNot Safe For Work: What NSFW Means and What the Flag Actually Hides

TL;DR

8 min read

NSFW stands for Not Safe For Work, and Reddit's help center defines it as a warning that content may be inappropriate for workplaces or public spaces. Reddit applies it in three separate places: on a single post, on a whole subreddit through the over_18 field in POST /api/site_admin, and on a whole profile through the Mark as mature (18+) toggle. Viewing NSFW content and including it in search are two different account preferences, over_18 and search_include_over_18, so turning one on does not turn on the other. Reddit labels the same preference four different ways across reddit.com, Old Reddit, iOS and Android.

The acronym NSFW stands for Not Safe For Work, and on Reddit it is a formal flag with an API field behind it, not just a courtesy note in a title. Reddit's help center defines it as "a warning to indicate that the content may be inappropriate or explicit for certain environments, such as workplaces or public spaces," and adds that the point is to let readers "make an informed decision before accessing it."

That definition is the easy part. What confuses people is that Reddit applies the flag in three separate places, exposes it under a different name in the API, and splits "show me this content" and "put this content in my search results" into two unrelated switches.

What does NSFW stand for?

NSFW stands for Not Safe For Work. Reddit lists it first in its glossary of site expressions, ahead of AMA, TIL and TL;DR, with the note that NSFW content "can include explicit images, adult discussions, or any other material that may not be suitable for all redditors."

The same glossary defines a sibling term that people meet less often: NSFL, which Reddit glosses as "Not safe for life (explicit and offensive; often gore)." NSFL is community shorthand with no product feature behind it. NSFW has a feature behind it at every level of the site.

How does the NSFW flag work on a single post?

On a single post, NSFW is a toggle the author sets at submission time or a moderator sets afterwards. Reddit's moderator documentation is blunt about the obligation: "All Not Safe For Work (NSFW) content on Reddit is required to be marked as such." Moderators are told to watch the mod queue for posts where the author forgot, because an unmarked post puts the community in breach of the Reddit Rules.

Mechanically there are three ways in:

  • The author ticks the option in the submit form, which maps to the nsfw parameter on POST /api/submit.
  • A moderator clicks the mod shield icon under the post and selects Mark as NSFW on reddit.com, or Add NSFW tag on iOS and Android.
  • An admin marks a whole profile, which cascades to every post on it.

Notice what is missing. There is no comment-level NSFW flag. Reddit's own API docs describe POST /api/marknsfw as "Mark a link NSFW" and POST /api/unmarknsfw as "Remove the NSFW marking from a link." A link, in Reddit's data model, is a post. A graphic comment inside a safe-for-work thread has no flag to carry, which is one reason moderators lean on AutoModerator rules and outright removal instead.

What does the subreddit level setting do?

A whole subreddit can be marked mature, and that is a different control with a different field. In the API it is over_18, listed as a boolean on POST /api/site_admin, the endpoint Reddit documents as "Create or configure a subreddit."

The practical effect is a gate rather than a blur. A logged-out visitor hits an age interstitial. A logged-in user who has not enabled mature content does not see the community's posts in feeds, and the community is filtered out of several search and autocomplete endpoints entirely.

A person adjusts a blurred image on a phone screen, illustrating how a content warning hides material without removing it.

What does the NSFW tag actually hide?

Less than people assume. Reddit's moderator help says the tag "blurs images and text for redditors with safe browsing enabled in their user settings so these readers may choose whether to view the content or not."

Three things follow from that sentence. The content is not removed. The title stays readable in most surfaces. And the blur only applies to readers who have the relevant preference on, which means the same post looks different to two people scrolling the same feed. Reddit describes the blur as an option you can enable separately from viewing mature content at all: "You can also enable blurring of these images so they're only visible on click in your feed."

A person types a query into a search bar on a laptop, tied to how separate settings control what shows up in search results.

This is the part that catches researchers, and it is worth being exact about. Viewing mature content and searching mature content are two different preferences.

On Old Reddit, Reddit's help article lists them as two separate checkboxes under content options: "I am over eighteen years old and willing to view adult content (required to view some subreddits)" and "include not safe for work (NSFW) search results in searches." Turning on the first does nothing for the second.

RedReplier
RedReplier

Get Started

Reddit, X, Bluesky & HN

Real-time intent alerts

Unlimited AI replies

Ranked by buyer intent

The API mirrors that split. PATCH /api/v1/me/prefs accepts over_18 and search_include_over_18 as independent booleans, alongside a third, label_nsfw. On the read side, several endpoints take an include_over_18 parameter, and the documentation for /api/search_reddit_names states the rule plainly: "If include_over_18 is false, subreddits with over-18 content restrictions will be filtered from the results."

If you are running keyword research or advanced Reddit search against a topic that lives in mature communities, a default-configured account will quietly return a smaller universe than the one that exists.

Two Switches, Two Effects
over_18 on
  • Mature content shows up in your feeds and communities
  • Has no effect on search results
search_include_over_18 on
  • NSFW results can appear in search
  • Does not by itself turn on viewing mature content
Reddit treats viewing mature content and finding it through search as two independent preferences.

Which fields carry NSFW in the Reddit API?

Field or endpointWhat it controlsWhat the docs say
nsfw on POST /api/submitA post, at creation"boolean value"
POST /api/marknsfwAn existing post"Mark a link NSFW"
POST /api/unmarknsfwAn existing post"Remove the NSFW marking from a link"
over_18 on POST /api/site_adminA whole subredditListed under "Create or configure a subreddit"
over_18 on PATCH /api/v1/me/prefsWhether you see mature content"boolean value"
search_include_over_18 on PATCH /api/v1/me/prefsWhether search returns it"boolean value"
include_over_18 on /api/search_reddit_namesOne search requestFilters over-18 subreddits when false

Both /api/marknsfw and /api/unmarknsfw sit under the modposts OAuth scope, so a read-only app cannot change a flag it can read.

Why does a whole profile get marked NSFW?

Reddit publishes two triggers: "If you participated in a NSFW community" and "If your profile image or other content in your profile has been identified as mature or sexually explicit."

The consequence is broader than a blur. Reddit states that "all of the posts on your profile are marked as NSFW," visitors must confirm they are over 18, and "you'll also be ineligible to run ads on Reddit." The reversal is a toggle called Mark as mature (18+) in profile settings, and Reddit acknowledges it does not always stick: if the switch will not save, the account needs an admin to change it.

What do other platforms call the same thing?

No two of the five networks use the same word, and one of them has no flag at all.

PlatformWhat it calls the labelWho applies it
RedditNSFW, or mature (18+)Author, moderator, or admin at profile level
XAdult Content, shown behind a content warningThe account holder in media settings, or X
BlueskySelf-labels porn, sexual, nudity, graphic-mediaThe poster, or a subscribed labeler service
Facebook"a label so that people are aware the content may be sensitive"Meta review teams, under the Community Standards
Hacker NewsNothingNo such flag exists

X's adult content policy, dated May 2024, says you may share adult material "provided it's properly labeled and not prominently displayed," asks regular posters to adjust media settings so everything they post sits behind a warning, and warns that "if you continue to fail marking your posts, we will adjust your account settings for you."

Bluesky is the most granular of the five. The AT Protocol defines a small set of global label values that ordinary users are allowed to apply to their own posts, and the docs spell out the behaviour of each: porn "puts a warning on images and can only be clicked through if the user is 18+ and has enabled adult content," sexual "behaves like porn but is meant to handle less intense sexual content," graphic-media covers violence and gore, and nudity "puts a warning on images but isn't 18+ and defaults to ignore."

Hacker News is the outlier. Neither the site guidelines nor the FAQ mentions sensitive, adult or NSFW content anywhere. HN has flagging, [dead], [flagged] and a showdead profile setting, and that is the whole toolkit. Content that would carry a label elsewhere is simply off topic there, which is a moderation decision rather than a label.

Why the label matters if you monitor these platforms

Two reasons. First, a default-configured account reads a partial network, because the search preference is off until you turn it on. Second, the flag is a signal rather than a verdict: a thread marked NSFW in a hobbyist community can be an ordinary product discussion with one image in it, so filtering the label out wholesale discards real conversations too.

Communities also route around labels when a label costs them reach, which is the same instinct behind algospeak. Correct tagging is treated as basic courtesy, as our guide to reddiquette sets out.

Frequently asked questions

Does NSFW always mean pornography?

No. Reddit's definition covers "explicit images, adult discussions, or any other material that may not be suitable for all redditors." Gore, medical images, profanity-heavy threads and workplace-awkward humour all get tagged, and none of those are pornography.

Can I mark a comment NSFW on Reddit?

No. Reddit's API exposes POST /api/marknsfw as an action on a link, which is its term for a post. There is no equivalent endpoint or interface control for a comment.

Will turning on mature content put NSFW results in my searches?

No. Those are two separate preferences. Reddit's Old Reddit content options list "I am over eighteen years old and willing to view adult content" and "include not safe for work (NSFW) search results in searches" as independent checkboxes, and the API exposes them as the separate booleans over_18 and search_include_over_18.

Who can remove an NSFW tag from a post?

Moderators of the community and Reddit admins. Both /api/marknsfw and /api/unmarknsfw require the modposts OAuth scope, so an ordinary reader cannot clear the flag on someone else's post.

RedReplier
RedReplier

Get Started

Reddit, X, Bluesky & HN

Real-time intent alerts

Unlimited AI replies

Ranked by buyer intent

What happens if a post should have been marked and was not?

Reddit tells moderators that all NSFW content "is required to be marked as such" and that community members often report the omission. The fix is a moderator marking it from the mod queue, since leaving it unmarked puts the post in breach of the Reddit Rules.

Does NSFW affect whether a post can be advertised?

At the profile level, yes. Reddit states that when a profile is marked NSFW, "you'll also be ineligible to run ads on Reddit." X takes a parallel line for placement, barring adult content from profile pictures, headers, List banners and Community cover photos.

What's the difference between NSFW and NSFL on Reddit?

NSFW marks content that needs a warning before viewing, and Reddit backs it with a flag on posts, subreddits and profiles. NSFL stands for Not Safe For Life, Reddit's own glossary entry for explicit or gore content, with no matching field anywhere in the API. NSFW is the formal Reddit flag, while NSFL stays community shorthand with no setting behind it.

Can you view NSFW content on Reddit without an account?

Not on a subreddit marked over_18. A logged-out visitor who lands on that community hits an age interstitial before any posts load. Logging in and turning on the mature content preference is what removes that gate at the subreddit level.

Does the NSFW tag look the same to every Reddit user?

It depends on the reader. The blur behind an NSFW tag only applies to people who have the safe browsing preference turned on, so the same post can appear blurred to one person and fully visible to another scrolling the same feed. Reddit's moderator help describes that blur as covering images and text, not the picture alone, though the title stays readable in most surfaces.

What does Bluesky call NSFW content?

Bluesky splits it into four self-labels instead of one flag: porn, sexual, nudity and graphic-media. Porn requires the viewer to be 18+ with adult content enabled before it can be clicked through, sexual works the same way for less intense content, and nudity shows a warning without that age gate. Graphic-media covers violence and gore, and either the poster or a subscribed labeler service can apply any of these labels.

See us more often in Google

One click marks RedReplier as a preferred source, so our articles sit higher in your Top Stories, AI Mode, and AI Overviews.

Before you go...

RedReplier

RedReplier

Catch every buyer asking for what you sell

RedReplier watches Reddit, X, Bluesky and Hacker News in real time, ranks every thread by buyer intent, and drafts your reply, so you get there first.

Reddit, X, Bluesky & HN

Real-time intent alerts

Unlimited AI replies

Ranked by buyer intent

Related Articles