reddit-playbooks

r/selfhosted

ACTIVEplaybookView on Reddit ↗

A place to share, discuss, discover, assist with, gain assistance for, and critique self-hosted alternatives to our favorite web apps, web services, and online tools.

Subscribers
731K
Posts/day
51.8
Age
11.7y
Top week
3,769
Top month
9,333
Top year
9,546

Reddit Community Analysis: r/selfhosted

1. Data Sources & Methodology

  • 317 unique posts after deduplication across 4 time periods (all-time, year, month, week), 4 pages each (16 raw JSON files)
  • Date collected: April 10, 2026
  • Subreddit subscribers: 738,738
  • Score range: 3 to 9,564
  • Median score: 854
  • Mean score: 1,307
  • Top 10 threshold: 5,833
  • Top 25 threshold: 3,183
  • Top 50 threshold: 2,353
  • Top 100 threshold: 1,630
PeriodPostsScore RangeMedianNotes
All-time1001,630–9,5642,353Historical canon. Memes, dashboards, early Immich progress updates, and the Huntarr scandal dominate.
Year1001,175–9,5641,724Heavy overlap with all-time. Vibe-code backlash, Plex enshittification, BookLore/Huntarr scandals.
Month100171–9,544411Recent product launches, Jan–Apr 2026 meta-posts, Seerr release.
Week1003–2,95129Includes long tail of help posts. Shows baseline performance for typical new posts.

Period overlap: 48 posts are all-time exclusive (historical canon no longer trending), 41 posts appear in "all + year" (evergreen canon), only 4 posts appear in all four periods (true evergreen hits: "I'm a server", "Me as a self hosting newbie", "we don't do works without your own server here", "Three weeks ago I was still subbed to Apple Music..."), and 84 posts appear only in "week" (the current churn of typical posts).

This is a content strategy guide, not a sociological study. The dataset skews toward top performers.

Cross-subreddit calibration: r/selfhosted peaks at ~9,564, putting it in the upper tier alongside r/ClaudeAI (~8,084) and above r/macapps (~2,029), r/LocalLLaMA (~6,875), and r/SaaS. With 738K subscribers (roughly 10% more than r/LocalLLaMA, 3x r/macapps), it is one of the larger hobbyist communities covered. The median of 854 is meaningful: a score of 1,000 is respectable, 2,000 is a hit, 5,000+ is viral. Compared to r/LocalLLaMA where memes dominate the very top, r/selfhosted's top tier is split between memes, drama/PSA exposés, and a small number of polished product launches.


2. Subreddit Character

r/selfhosted is an anti-SaaS ideological collective where the defining act is refusing to rent software you could own. It's not a product launch platform like r/macapps, not a support forum like r/learnpython, and not a news desk like r/LocalLLaMA. It's a community of people who have decided, as a matter of principle, that their data belongs on hardware they control, and they spend their weekends building the software stack to make that possible. The *arr stack, Jellyfin, Immich, Nextcloud, Vaultwarden, Home Assistant, Pi-hole, and Proxmox are the canonical tools; anyone posting a "new alternative" is evaluated against them.

Product launches are tolerated but under heavy suspicion. The community currently operates in an explicit AI-backlash phase triggered by the late-2025/early-2026 "vibe-code flood." The Huntarr scandal of November 2025 ("Huntarr - Your passwords and your entire arr stack's API keys are exposed to anyone on your network" — 9,564, the #1 post of all time) became the canonical cautionary tale: a vibe-coded replacement for the *arr stack shipped with 21 unpatched critical vulnerabilities, the maintainer banned critics, and the repo was ultimately taken down. The BookLore saga ("PSA: Think hard before you deploy BookLore" — 1,870) repeated the pattern three weeks later. As a direct response, moderators created "Vibe Code Friday" — a rule explicitly restricting AI-assisted projects younger than one month with a single collaborator to Friday-only posting, and the community now routinely demands AI-usage disclosures in both code and post content.

Humor works and is rewarded disproportionately. The top 4 posts by score include three memes ("Nothing to do", "This how I feel, but only thing I do is copying docker-compose.yml", "I felt this in my soul") and a security PSA. Unlike r/macapps (zero humor at the top), r/selfhosted has meme-native culture built around shared in-jokes: wife-approval factor, the *arr stack rabbit hole, docker-compose fatigue, storage hoarding shame, the "it just works until it doesn't" cycle.

Technical level is intermediate-to-high. The median poster understands Docker Compose, reverse proxies, DNS, and basic Linux sysadmin. Newcomers are welcomed but expected to show effort (Rule 1 explicitly demands posters "explain what you've tried"). The community skews toward hobbyists running Proxmox clusters on mini-PCs rather than enterprise ops staff.

Core cultural values, ranked:

  1. Anti-SaaS / anti-subscription fundamentalism — "we don't do works without your own server here" (2,612), "What is it with these companies rolling into r/selfhosted with their free products and then all the good features are locked behind a paywall?" (2,246), "No longer free to stream personal content on Plex" (2,033, 1,460 comments). Any freemium or subscription model is interrogated.
  2. Data sovereignty & privacy — "Plex crossed a line with 'Your week in review' emails" (2,194), "Plex is predatory" (1,183), the Vultr TOS warning (1,774), the MinIO feature-stripping exposé (1,929). Corporate betrayals are the community's most reliable high-engagement content.
  3. Open-source maximalism — AGPL → BSL relicensing is treated as treason (Postiz post 183, BookLore saga). Truly FOSS alternatives are celebrated; closed-core "open source" gets called out.
  4. Anti-AI-slop / pro-craftsmanship — The community does not hate AI as a tool; it hates AI-generated posts that pretend to be craft. Em-dashes, "absolutely" openings, and commit messages like "Update" "update" "change" are cited as tells. See "Fully remove every, 'I created a', 'Selfhosted app!' claude slop" (3,151), "im tired of this sub" (1,905, friction ratio 0.88), "I feel like the self-hosted and FOSS space is being flooded with vibe-coded AI slop" (2,202).
  5. Wife-approval / partner cohabitation — A surprisingly frequent trope. "PiHole versus my Wife" (1,833), "I made my girlfriend's mum cry" (2,660), "Girlfriend's battery box" (2,311), "wife-approved" is almost a formal criterion. Self-hosting is framed as a practice that must coexist with a non-technical household.
  6. Hardware salvage / frugal computing — "Saved this S10 from the trash. Now it runs a 24/7 Minecraft server" (8,832), "Self-hosting my blog on a 10 year old raspberry pi" (2,098), "Turned my broken-screen Steam Deck into a Debian NAS" (327). Using cheap or recovered hardware is a prestige signal.

Enforcement mechanisms:

  • Rule 1 (Low-Effort / Off-Topic): Sticky reply demanding more info on help posts.
  • Rule 2 (Self-Promotion): Max 1-in-10 posts can be self-promo; must be production-ready with docs. No VPS or web-hosting ads.
  • Rule 4 (Blog links): A raw link is not enough — you must explain the blog's value.
  • Rule 5 (Wednesday Dashboards): Dashboards and "tools for self-hosters" (even if not self-hosted themselves) are only allowed on Wednesdays and must use the Wednesday flair.
  • Rule 6 (New Project Megathread): Projects younger than 3 months old can ONLY be posted in the current New Project Megathread. This is the hardest-enforced rule for product launches and the single biggest trap for new developers.
  • Vibe Code Friday (November 2025 addition, trial): AI-assisted projects <1 month old, with only one real collaborator, showing signs of AI generation must wait for Friday. Flairs "Vibe Coded (Fridays!)" and "Built With AI (Fridays!)" exist.
  • Community self-policing: uBlock filter lists are shared to hide AI-flaired posts. Users publicly track and name serial self-promoters (see "WARNING: SMTPget = Indian SCAM" — 1,456, which led to a site-wide Reddit ban).

How this sub differs from similar subs: On r/LocalLLaMA, you share a model, a quant, or a benchmark. On r/macapps, you present a polished product with Problem-Comparison-Pricing. On r/sideproject, you celebrate shipping. On r/selfhosted, you prove you are NOT a grifter, NOT vibe-coded, NOT secretly selling a subscription, and NOT younger than 3 months. The frame is negative: you must clear a trust bar before the community will even look at your work.


3. The All-Time Leaderboard

Dataset median: 854. Top-25 threshold: 3,183. Top-10 threshold: 5,833.

RankScoreFlairRatioCommentsFormatTitle
19,564Software Development0.971,289TEXTHuntarr - Your passwords and your entire arr stack's API keys are exposed...
29,544Meta Post0.98426IMAGENothing to do
39,224Meta Post0.96401IMAGEThis how I feel, but only thing I do is copying docker-compose.yml and up -d
49,137(none)0.99119IMAGEI felt this in my soul.
58,832Guide0.98285IMAGESaved this S10 from the trash. Now it runs a 24/7 Minecraft server.
68,466Need Help0.97872IMAGEAny teamspeak alternatives open source for self hosting?
76,310(none)0.96589IMAGEWhat do you think about my new Home Server?
85,993(none)0.97291IMAGEThis runs my website
95,935(none)0.98249GALLERYWtf man. Youtube is specifically sniping the Foss and free alternative content
105,833(none)0.9982IMAGEi guess this belongs to this group (credit: joe@mastodon)
115,285(none)0.98126IMAGEWell, you know, i have my own ...
125,130Chat System0.971,765TEXTLet's get a self-hosted Discord "replacement" thread going for 2026
135,111(none)0.9985GALLERYThis is why I love the self hosted community
145,055Meta Post0.97590TEXTLarge US company came after me for releasing a free OSS self-hostable alternative
155,009Guide0.97255IMAGEI'm a server
164,950Meta Post0.98162TEXTUpdate: Large US company came after me... Resolved in our favor
174,349(none)0.96331IMAGEDon't let your dreams be dreams
184,248(none)0.99113IMAGEHappy World Backup Day!
193,676Personal Dashboard0.99364IMAGESelf-hosting all these services on two Raspberry Pi 4s!
203,627Internet of Things0.98184GALLERYI built a fully local, open-source thermal printer appliance...
213,548(none)0.98125IMAGEIdle cpus are the work of the devil
223,265Meta Post0.98110IMAGEthat HDD churn
233,237Personal Dashboard0.98370IMAGEMy dashboard, now with descriptions
243,185Meta Post0.861,045IMAGEApparently we can't call out apps as AI slop anymore...
253,183(none)0.99164TEXTPiggybacking off Apple's FindMy for self-hosted GPS tracking

Notable ironic flair usage: Post #24 carries a friction ratio (0.86) despite high engagement — this is a Meta Post complaining about mod decisions, and the lower ratio reflects a fraction of the community siding with moderators. Rank #15 ("I'm a server") is flaired "Guide" despite being pure meme. Rank #5 is flaired "Guide" but is an aspirational build photo with minimal instruction.

Top 10 composition: 1 TEXT drama post (Huntarr), 8 IMAGE memes/build pics, 1 GALLERY. The top of this community is meme-first. Once you get below rank 10, text-based drama/PSA posts take over (ranks 12, 14, 16, 25).


4. Content Type Dominance at Scale

FlairTop 25Top 50AllAvg ScoreAvg RatioBest Post
(none / no flair)1118412,8950.96I felt this in my soul (9,137)
Meta Post67301,7700.91Nothing to do (9,544)
Guide22102,2800.96Saved this S10 from the trash (8,832)
Software Development1182,1200.96Huntarr security exposé (9,564)
Chat System1131,7710.92Self-hosted Discord replacement thread (5,130)
Need Help12553890.88teamspeak alternatives (8,466, outlier)
Personal Dashboard25111,7600.96Raspberry Pi 4s services (3,676)
Internet of Things1131,8960.98Thermal printer appliance (3,627)
Media Serving01231,0710.91We can all relate (2,488)
New Project Friday01224830.89750-page self-hosting guide (2,516)
Self Help01111,2610.92Big progress for first homeserver (2,530)
Webserver0191,0090.87Cloudflare is MITM (2,795)
Product Announcement0097510.89Reverse-engineered camera tool (2,148)
Wednesday0161,2710.94Genesis of cybersecurity meme (2,514)
Release (No AI)0062080.89Komodo v2 (401)
Official0151,4850.95Protest-dark announcement (3,029)
Release (AI)0033260.90Keeper.sh v2 (642)
Built With AI (Fridays!)0121,9820.97Digital safe (2,552)

Most surprising finding: The "(none)" / no-flair category is the highest-scoring bucket on the board — 41 posts at an average of 2,895. Top performers like memes and viral drama often skip flair entirely. Simultaneously, "Need Help" is the most common flair (55 posts) but averages only 389 score and has the lowest ratio (0.88) of the high-volume flairs. This mirrors r/LocalLLaMA but is even more extreme. "Need Help" is where typical posts live; the top of the board is rarely flaired.

The second surprise: "Release (No AI)" averages 208 and "Release (AI)" averages 326. Explicitly tagging your project as a release — the thing you'd most want to do when launching — is one of the worst-performing flairs on the board. Both are worse than the unflaired baseline. The reason: these flairs likely signal "new project" to the moderators, who enforce the 3-month rule strictly.

"New Project Friday" (22 posts, avg 483) is where you MUST post if your project is young. Its top performer (the 750-page free guide, 2,516) is the archetype: a resource, not an app, explicitly prefixed "NO AI SLOP."


5. Content Archetypes That Work

Archetype 1: The Security Exposé / Community PSA (score ceiling: 9,564)

Pattern: A technically credible user discovers something wrong with a popular self-hosted tool, a cloud provider, or a project maintainer, and publishes a thoroughly-sourced writeup calling it out. The post is exhaustive, includes proof (CI reproductions, CVE numbers, screenshots), names the perpetrator, and warns the community.

Examples:

  • "Huntarr - Your passwords and your entire arr stack's API keys are exposed" (9,564, 1,289 comments) — the #1 post ever
  • "PSA: Think hard before you deploy BookLore" (1,870, 812 comments)
  • "Avoid MinIO: developers introduce trojan horse update stripping community edition" (1,929)
  • "Warning: Vultr is now claiming full perpetual commercial rights over all hosted content" (1,774, 440 comments)
  • "WARNING: SMTPget = Indian SCAM" (1,456) — led to a site-wide Reddit ban for the scammer
  • "Cloudflare is the most successful Man-in-the-Middle in history" (2,795)
  • "Fell victim to CVE-2025-66478" (1,724) — a victim story is also acceptable

Why it works: The community's entire identity is predicated on NOT trusting third parties. Every exposé reinforces the core ideology and provides immediate practical value. These posts also offer the community a way to feel virtuous by upvoting them.

Why it matters for distribution: If you are NOT the person shipping the suspect project, this is the single highest-ceiling archetype. It also has a dark-mirror application: if your competitor ships something insecure, a technically rigorous exposé will do enormous damage to them and build your own credibility. But it must be proof-first, not polemic-first.

Archetype 2: The Relatable Homelab Meme (ceiling: 9,544)

Pattern: A single image capturing a universal self-hoster experience — docker-compose monotony, hardware hoarding, the rabbit hole, the wife-tolerating-your-hobby trope, or anxiety over downtime. Usually no selftext, minimal caption, one-line title.

Examples:

  • "Nothing to do" (9,544) — #2 all-time
  • "This how I feel, but only thing I do is copying docker-compose.yml and up -d" (9,224)
  • "I felt this in my soul" (9,137)
  • "I'm a server" (5,009)
  • "we don't do 'works without your own server' here" (2,612)
  • "PiHole versus my Wife" (1,833)
  • "The Gut Shot" (1,489)

Why it works: Memes are voted in a single glance. The community is large enough (738K) that evergreen memes compound upvotes across all time periods. Memes also bypass the Rule 6 new-project restriction entirely.

Why it matters for distribution: You cannot "launch" with a meme, but you can BUILD presence with them. A meme post that lands puts your username in people's memory. The #1 problem of distributing through r/selfhosted is that repeat self-promotion is penalized heavily; a meme is a "credit in the goodwill bank" you can spend later.

Archetype 3: The Build Porn / Setup Reveal (ceiling: 6,310)

Pattern: A photo or gallery of the poster's home server rack, dashboard, or migration from cloud services. Often paired with a list of services, hardware specs, and the explicit narrative "I finally did it, I left [big tech] behind."

Examples:

  • "What do you think about my new Home Server?" (6,310)
  • "This runs my website" (5,993) — one photo, one caption
  • "Self-hosting all these services on two Raspberry Pi 4s!" (3,676)
  • "Three weeks ago I was still subbed to Apple Music, Netflix, HBO..." (2,505)
  • "Goodbye Google — I self-host everything now on 4 tiny PCs in a 3D printed rack" (2,011)
  • "What 15,000 lines of YAML/CSS can do on Home Assistant" (2,644)
  • "Bye bye Google Drive" (2,283)

Why it works: These posts celebrate the community's core achievement (replacing a big tech dependency with your own hardware) and invite discussion of the poster's stack. They are also implicit recruiting content — every new arrival reads these and thinks "I want to be that person."

Why it matters for distribution: If your tool helped someone migrate away from a paid service, suggest they post a build-reveal rather than a product launch. The product gets mentioned in the service list, which is organic and doesn't trigger self-promo rules.

Archetype 4: The Corporate Enshittification Story (ceiling: 5,935)

Pattern: A cloud or SaaS company changes its terms, removes a feature, adds ads, or raises prices. The community mobilizes outrage and treats the poster as a whistleblower.

Examples:

  • "Wtf man. Youtube is specifically sniping the Foss and free alternative content" (5,935)
  • "Plex crossed a line with 'Your week in review' emails" (2,194, 708 comments)
  • "No longer free to stream personal content on Plex" (2,033, 1,460 comments)
  • "Plex want to SELL my personal data now?" (1,348, 531 comments)
  • "Plex is predatory" (1,183, 1,412 comments, friction ratio 0.67 — controversial)
  • "This will be interesting to self-host" (GoPro discontinuing, 2,228)
  • "New EU surveillance law would ban VPNs" (1,623)

Why it works: These posts confirm the community's priors and offer actionable targets for migration. Plex specifically is the community's perennial villain; any Plex negative news is virtually guaranteed high engagement.

Why it matters for distribution: This is a distribution inflection point. When a major SaaS tool does something unpopular, the community actively starts searching for alternatives. A well-timed, humble "here's the open-source alternative I've been building" comment in such a thread can generate hundreds of clicks. The golden rule: react to enshittification news, don't create it.

Archetype 5: The Hardware Salvage Story (ceiling: 8,832)

Pattern: An old/broken/cheap device is repurposed into a functional server with a concrete use case. The delta between "trash" and "24/7 service" is the story.

Examples:

  • "Saved this S10 from the trash. Now it runs a 24/7 Minecraft server" (8,832) — #5 all-time
  • "I turned my old Galaxy S10 into a self-hosted server running Ubuntu 24.04 LTS" (1,964)
  • "Self-hosting my blog on a 10 year old raspberry pi" (2,098)
  • "Turned my broken-screen Steam Deck into a 10-15W Debian NAS" (327)
  • "I hosted a Minecraft server on my Fire 7 Tablet" (1,194)
  • "Girlfriend's battery box" (2,311) — same energy, household recycling

Why it works: Frugal ingenuity is a core community virtue. Beating electronics waste AND subscription services in the same post double-dips on virtue.

Why it matters for distribution: If your project supports weird/old hardware, lead with that, not with the software features. "Works on a 2018 ThinkCentre Tiny" lands harder than "Multi-platform compatible."

Archetype 6: The Thoughtful Resource / Guide Drop (ceiling: 5,055)

Pattern: A long-form text post that is either (a) a genuinely useful free resource (guide, script, configuration) or (b) a request to build a shared community resource together (megathread).

Examples:

  • "Let's get a self-hosted Discord 'replacement' thread going for 2026" (5,130, 1,765 comments)
  • "Free 750-page guide to self-hosting production apps - NO AI SLOP" (2,516)
  • "Yes, you can run DeepSeek-R1 locally on your device (20GB RAM min.)" (2,139)
  • "There's no place like 127.0.0.1, my complete setup" (1,242)
  • "My Favorite Self-Hosted Apps Launched in 2025" (1,218)
  • "List of self hosted book services" (303, but timely and helpful)

Why it works: These posts give value without asking for anything. They almost always perform well on C/U ratio because they invite people to contribute their own picks.

Why it matters for distribution: If you've been self-hosting for years, a genuinely good curated list or deep technical guide is a trust-building post that makes later product launches vastly more credible.

Archetype 7: The Self-Deprecating Solo Dev Launch (ceiling: 3,627)

Pattern: A solo developer launches a polished, clearly-not-AI-slop project with humble framing, concrete problem statement, real hardware constraints, and explicit privacy/no-cloud claims. Must be visual (gallery or image) and must feel artisanal.

Examples:

  • "I built a fully local, open-source thermal printer appliance - no cloud, no subscriptions, no accounts" (3,627) — walnut/brass enclosure, 6 years as furniture maker
  • "I built a 'digital safe with multiple keys' after a few too many bike concussions" (2,552) — ReMemory, Shamir secret sharing framed as a personal problem
  • "I built a janky Cloudflare Bitwarden server for myself, forgot about it, and woke up to 400+ forks" (1,957) — self-deprecating, scope-honest
  • "These cameras were supposed to be e-waste. No RTSP, no docs, no protocol anyone's heard of. I reverse-engineered 100,000 URL patterns" (2,148)
  • "I got into an argument on Discord about how inefficient CBR/CBZ is, so I wrote a new file format" (2,271)
  • "I built Tracearr - account sharing detection and monitoring for Plex, Jellyfin, and Emby" (2,353)

Why it works: These posts all lead with the HUMAN problem, not the feature list. They admit scope limitations ("janky", "still rough", "early"). They explicitly disclaim cloud dependencies and subscriptions. They tell a story that requires a person, not an AI, to have written it.

Why it matters for distribution: This is the single archetype for launching products on r/selfhosted. If your project cannot be framed this way, it will fail. Key components: personal pain point origin, handcrafted aesthetic signals (CLI demo video, physical hardware, cabinet work, whatever), explicit "no cloud / no subscriptions / no accounts" line, and humility about what doesn't work yet. AVOID bullet-list feature dumps, marketing speak, em-dashes, or anything that reads like a landing page.


6. Format Analysis

FormatTop 25Top 50Top 100All 317% of Top 25
IMAGE17345210068%
TEXT5103016520%
GALLERY34113312%
VIDEO01340%
LINK014150%
GIF00000%

Visual content dominance: 20 of the top 25 posts (80%) are visual (IMAGE/GALLERY/VIDEO). Only 5 are TEXT, and four of those are high-drama PSA/meta posts (Huntarr security expose, Discord replacement thread, Large US Company drama ×2, FindMy GPS tracking). The fifth is the Piggybacking-FindMy post, which is a rare pure technical writeup that made it into the top 25.

In the full dataset, TEXT is the most common format (165 / 317 = 52%) but averages much lower — this is where help posts and typical discussions live. IMAGE posts are 32% of the dataset but 68% of the top 25. Visual content is 2.1x overrepresented at the top.

Video is essentially absent. Only 4 video posts across 317. The two visible in the dataset are 2022/2023 Immich/Serge demos — an earlier era. Today, GALLERY has replaced VIDEO as the preferred "show rich content" format.

What Format to Use For What

  • Tool / app launches → GALLERY (3-6 images: UI screenshots, demo, architecture diagram, before/after). See Tracearr, thermal printer, Tracearr. Never VIDEO (community skips them).
  • Homelab build / setup reveal → IMAGE (single clean photo) or GALLERY (3-4 angles + dashboard screenshot).
  • Security PSA / drama → TEXT. These are the only TEXT posts that top the charts, and they must be exhaustively sourced with links and CVE numbers.
  • Guide / resource drop → TEXT (long-form) if it's the guide itself, or IMAGE if it's a "hey I made a thing and here's the link" post for a PDF/repo.
  • Meme / humor → IMAGE only. Single panel, obvious in-joke, one-line title.
  • Community discussion / megathread → TEXT with a pointed prompt ("What are we actually using?").
  • Enshittification news → LINK (article) or IMAGE (screenshot of the offending email).
  • Product comparison / pricing changes → IMAGE of the pricing page/email with one-line caption.

There is no "What Makes a Good Demo Video" section because videos don't work here. If you have a product demo video, extract the best 2 frames as a gallery and paste the video link at the bottom of a TEXT or GALLERY post.

Gallery sizing: Top-performing galleries have 4-10 images. The thermal printer post and Tracearr both follow this pattern: 1 hero shot, 2-3 UI/feature screenshots, 1-2 hardware or context photos.


7. Flair/Category Strategy

Raw Performance Ranking (by avg score, min 3 posts)

  1. (none / no flair): 2,895 avg — memes, homelab reveals, drama
  2. Guide: 2,280 avg — but only 2 in top 25; bimodal (memes labeled "Guide" vs real guides)
  3. Software Development: 2,120 avg — Huntarr and BookLore expose both live here
  4. Built With AI (Fridays!): 1,982 avg — small sample, skewed by 1 viral post
  5. Internet of Things: 1,896 avg — thermal printer hero
  6. Meta Post: 1,770 avg — drama and meta-commentary home
  7. Chat System: 1,771 avg — small sample, dominated by Discord thread
  8. Personal Dashboard: 1,760 avg — consistently solid
  9. Self Help: 1,261 avg
  10. Wednesday: 1,271 avg — ONLY for dashboard/self-hoster tools posted on Wed
  11. Media Serving: 1,071 avg
  12. Webserver: 1,009 avg
  13. Docker Management: 996 avg
  14. Product Announcement: 751 avg
  15. Need Help: 389 avg
  16. New Project Friday: 483 avg
  17. Release (AI): 326 avg
  18. Release (No AI): 208 avg

Distribution Utility Ranking (practical ranking for launching a project)

This is the ranking you should use when deciding which flair to attach to a launch post. Raw performance is misleading because the best-performing flair (none) isn't available for a product launch without getting moderated.

  1. New Project Friday — If your project is <3 months old, this is THE ONLY legal flair. Cap is ~2,500 but the rule is hard enforced.
  2. Software Development — If your project is >3 months old AND you are sharing a security finding or deep technical writeup. High ceiling (9,564).
  3. (The relevant category flair) — If your project is >3 months old, use the most specific category flair: Personal Dashboard, Cloud Storage, Media Serving, Password Managers, Internet of Things, Chat System, Photo Tools, etc. Signals that you've read the sub.
  4. Guide — If you're packaging your launch as "here's how I built X and what I learned," the Guide flair gets better engagement than Release.
  5. Wednesday — Only for dashboards/tools-for-self-hosters. Must be posted on a Wednesday.
  6. Need Help — Surprisingly powerful for distribution utility (see below).
  7. Built With AI (Fridays!) / Vibe Coded (Fridays!) — Only if AI-assisted and <1 month old. Required by mod policy, heavily penalized by users.
  8. Release (No AI) / Release (AI) — AVOID. Despite looking like the "right" flair, both perform worse than the unflaired baseline. These flairs also mark you as a launch for mod review.
  9. Product Announcement — AVOID. 751 avg, signals marketing intent.

The "Need Help" Distribution Hack

"Need Help" is the most common flair (55 posts, 17% of dataset) and averages only 389 in score. BUT it hit one of the top 10 all-time: "Any teamspeak alternatives open source for self hosting?" (8,466, 872 comments). The pattern is simple: ask a question the community has been hungry to answer, and the thread becomes a de-facto resource. If your product is one of several viable options in a category, being the helpful commenter in someone else's Need Help thread is worth more than a launch post. Alternatively, you can post the Need Help thread yourself ("What are people actually using instead of X?") and mention your project in the comments of your own thread.

Pricing Model Hierarchy (community-friendliness, most to least welcome)

  1. Fully FOSS, local-only, no telemetry — the gold standard. "100% self-hosted. No cloud, no telemetry, nothing phones home" (Tracearr, 2,353). Must be explicitly stated.
  2. FOSS with optional paid hosted version — acceptable if feature parity is maintained. Authentik post (1,813) explicitly praised for "free enterprise features."
  3. FOSS with lifetime / one-time paid add-on (non-subscription) — tolerated. No community resentment unless the paywall blocks core features.
  4. Open-core with a premium tier — friction zone. "What is it with these companies rolling into r/selfhosted with their 'free products' and then all the good features are locked behind a paywall?" (2,246). Must be transparent from the first sentence of the post.
  5. FOSS → BSL / relicense to non-OSS — treated as betrayal. See Postiz transition (183), BookLore plans (1,870). If you are considering this, expect backlash.
  6. Subscription-only — will be actively attacked. "Avoid MinIO" (1,929), Plex's entire history.
  7. Closed-source marketed to self-hosters — will be removed, downvoted, or called out.

Title-Prefix Tags

Unlike r/macapps ([FREE], [OS], [Giveaway]), r/selfhosted doesn't rely on bracketed tags. A few conventions exist:

  • "PSA:" prefix — strongly associated with community warnings and exposés. Use sparingly; must be backed by evidence.
  • "WARNING:" prefix — similar, used for scams and security.
  • "[Update]" or "Update:" — for follow-ups. The "Large US company came after me" update (4,950) paired with the original (5,055) is canonical.
  • "[Rant]" — rarely used but explicit ("[Rant] So sick of every other post being blatantly written by AI", 1,282).

8. Title Engineering

Deconstructing the Top 10

  1. "Huntarr - Your passwords and your entire arr stack's API keys are exposed to anyone on your network, or worse, the internet." (9,564) — Technique: named villain + specific threat + your-data-at-risk framing. Uses comma-second-clause escalation ("or worse, the internet").
  2. "Nothing to do" (9,544) — Technique: universal-feeling two-word caption + meme image.
  3. "This how I feel, but only thing I do is copying docker-compose.yml and up -d" (9,224) — Technique: grammatically-casual confession + insider tool reference.
  4. "I felt this in my soul." (9,137) — Technique: pure emotional reaction, lets image carry.
  5. "Saved this S10 from the trash. Now it runs a 24/7 Minecraft server." (8,832) — Technique: two-sentence before/after narrative, specific hardware, specific use case.
  6. "Any teamspeak alternatives open source for self hosting?" (8,466) — Technique: nostalgic product mention + open-source qualifier, invites list-sharing.
  7. "What do you think about my new Home Server?" (6,310) — Technique: second-person invitation to judge.
  8. "This runs my website" (5,993) — Technique: understated three-word reveal, sets up visual surprise.
  9. "Wtf man. Youtube is specifically sniping the Foss and free alternative content" (5,935) — Technique: casual outrage + corporate-villain framing.
  10. "i guess this belongs to this group 😂" (5,833) — Technique: self-deprecating low-stakes framing + emoji.

Title Formulas That Recur

  1. "I built X because Y [personal problem]" — The solo dev launch. "I built a 'digital safe with multiple keys' after a few too many bike concussions" (2,552). "I built a self-hosted alternative to Google's Video Intelligence API after spending about $450 analyzing my personal videos" (1,514). "I built Tracearr..." (2,353). Rule: the cause must be a specific personal incident, not a generic pain.

  2. "Corporate villain X just did Y — look what they sent me" — The enshittification post. "Plex crossed a line with 'Your week in review' emails today." (2,194). "Avoid MinIO: developers introduce trojan horse update" (1,929). Rule: must include the specific action (not the company's general direction).

  3. "Goodbye [big tech service] — I replaced it with Z" — The migration celebration. "Bye bye Google Drive" (2,283). "Goodbye Google — I self-host everything now on 4 tiny PCs in a 3D printed rack" (2,011). "Three weeks ago I was still subbed to Apple Music, Netflix, HBO..." (2,505).

  4. "PSA: [Product] has [problem], [what to do]" — The community warning. "PSA: Think hard before you deploy BookLore" (1,870). "PSA: Update to Jellyfin 10.11.7 immediately (Critical Security Fixes)" (786). "PSA: Trivy container scanner compromised" (376).

  5. "Any self-hosted alternative to X?" — The list-spawning question. "Any teamspeak alternatives open source for self hosting?" (8,466). "Who's going to self host Spotify?" (1,631). "Is there a self hosted version of chess.com?" (172).

  6. "I turned my old [cheap thing] into [useful self-hosted service]" — The salvage narrative. "I turned my old Galaxy S10 into a self-hosted server running Ubuntu 24.04 LTS" (1,964). "Self-hosting my blog on a 10 year old raspberry pi" (2,098). "Saved this S10 from the trash" (8,832).

Title Anti-Patterns (community-specific)

  1. Bullet-list feature dumps in the title — "X: Y, Z, W, V, U, T, S, R, Q, and more!" reads as marketing and is downvoted.
  2. Em-dash in the title — explicitly identified in filter lists as an AI-generation tell. Skip em-dashes in both titles and post bodies if you want to avoid being blocked by a fraction of the community.
  3. "Introducing X" as opening word — corporate launch phrasing. "Introducing Hypermind: a fully decentralized, P2P, high-availability solution to a problem that doesn't exist" (2,312) only worked because the title is ironic and openly self-mocking. Straight-faced "Introducing" lands poorly.
  4. "AI" or "GPT" in the first half of the title (for non-local-LLM posts) — friction tier immediately. Exception: local AI running on your own hardware ("Yes, you can run DeepSeek-R1 locally", 2,139).
  5. No title context, just a product name — "Seerr is finally out!" (1,532) worked because Seerr is the known successor to Overseerr; posts with unknown product names and no context get ignored.
  6. Star counts, download numbers, growth metrics — zero posts in the top 100 lead with these. "Got 100 stars on GitHub!" is a non-starter.
  7. Subscription mentions in the title — instant tone death.

9. Engagement Patterns

Comments-to-Upvote Ratios by Format

FormatAvg C/USampleInterpretation
TEXT1.007165Extreme discussion — every upvote averages one comment. These are drama threads, megathreads, and Need Help posts.
LINK0.28615Moderate discussion — external news triggers comment reactions.
GALLERY0.20833Moderate discussion — people react to setup reveals and product launches.
VIDEO0.1584Low discussion — videos are watched, not discussed.
IMAGE0.151100Low discussion — memes pass by with upvotes, limited reply-worthy content.

r/selfhosted's TEXT ratio of 1.007 is extraordinary — for context, in most communities TEXT sits around 0.3-0.5. The reason is that the highest-engagement TEXT posts here are drama and megathreads that produce massive comment threads: "Let's get a self-hosted Discord replacement thread going for 2026" (5,130 score / 1,765 comments = 0.34, but counter-balanced by many long-tail Need Help posts with 3 upvotes and 30 comments).

Visibility vs. Discussion Recommendation

  • If your goal is VISIBILITY (maximum unique eyeballs): post an IMAGE or GALLERY. A single well-landed meme or build reveal can hit 5,000+ upvotes with <200 comments, meaning your username and any attached project link is seen by many more people than a TEXT post of the same score.
  • If your goal is DISCUSSION / RELATIONSHIPS / FEEDBACK: post TEXT. A well-framed TEXT question or megathread that hits 1,000 upvotes will generate 500+ comments, which is where actual relationships, feedback, and first users come from.
  • If your goal is CONVERSION / sign-ups for a product: post GALLERY. It combines reasonable visibility with enough depth to communicate what the product does. Solo-dev launches overwhelmingly favor GALLERY.

Highest-Discussion Topics (regardless of score)

  1. Plex drama — "No longer free to stream personal content on Plex" (2,033 / 1,460 comments), "Plex crossed a line" (2,194 / 708), "Plex is predatory" (1,183 / 1,412), "Plex want to SELL my personal data" (1,348 / 531). Plex alone generates more comments than any other topic.
  2. Self-hosted Discord replacement — "Let's get a self-hosted Discord replacement thread going" (5,130 / 1,765 comments). The single largest discussion thread in the dataset.
  3. Vibe-code backlash — "Huntarr" (1,289), "Apparently we can't call out apps as AI slop anymore" (1,045), "im tired of this sub" (475), "why the hell do you all just give away this awesome shit for free?" (542).
  4. Security scandals — BookLore PSA (812), Huntarr (1,289), MinIO (373), Vultr (440).
  5. Help-thread list requests — TeamSpeak alternatives (872), Password manager debate (334), "What's something you have recently removed from your server?" (408).

Friction Tier Content (0.85-0.90)

Controversial posts often generate more comments than their score suggests:

  • "Plex is predatory" (1,183 / 0.67 ratio / 1,412 comments) — the most controversial high-engagement post. Community split because some defend Plex.
  • "Apparently we can't call out apps as AI slop anymore" (3,185 / 0.86 / 1,045) — mod criticism is divisive.
  • "Fully remove every I created a Selfhosted app claude slop" (3,151 / 0.91 / 627) — anti-AI extremism splits the room.
  • "im tired of this sub" (1,905 / 0.88 / 475) — meta-complaints always friction-tier.

10. What Gets Downvoted

Ratio Tiers

  • Above 0.94 — Universally well-received (174 / 317 = 55% of dataset)
  • 0.85 to 0.94 — Net positive but with friction (91 / 317 = 29%)
  • Below 0.85 — Controversial or community-hostile (52 / 317 = 16%)

Note: the sub skews friction-heavy compared to r/LocalLLaMA or r/macapps (where ~70% are safe-tier). r/selfhosted is a more contentious community where the median post has visible opposition.

Notable Controversial Posts (ratio <0.85)

ScoreRatioFlairTitle
1,4300.82Vibe Coded (Fridays!)BrainRotGuard - I vibed-engineered a self-hosted YouTube approval system
1,1830.67(none)Plex is predatory
8520.83Email ManagementThis is the reason you shouldn't host your own email...
4450.78Media ServingIs it just me or is the *arr stack over-complicated
4280.72Docker ManagementAfter my last post blew up, I audited my Docker security. It was worse...
3340.80Product AnnouncementIntroducing Unsloth Studio: an open-source web UI for local LLMs
2970.81New Project FridayWhat's your plan for your self-hosted data if you die?
2560.81Media ServingStop overthinking it - a mini PC with SATA bays is all you need for Plex
2360.78New Project FridayOikos — a self-hosted family planner
2060.84Release (No AI)I wanted a backup solution with restic's reliability and a polished UI
1800.77New Project FridayHoundarr: A polite, automated search scheduler for your *arr stack
1570.77Remote AccessPSA to Cloudflare Tunnel (cloudflared) users
1240.65Meta PostWhat self-hosted tools have you been building with AI just for you?
730.76Meta Post[Suggestion] CANDOR.md: an open convention to declare AI usage

Anti-Patterns (Named)

  1. The "Introducing X" Product Announcement — The literal word "Introducing" combined with a Product Announcement flair or feature-list post signals corporate launch energy. "Introducing Unsloth Studio" (334, 0.80) is an example: the product was legitimately FOSS but the framing tanked it. Fix: lead with a personal problem instead.

  2. The Vibe-Code Tell — If ANY of these signals are present, the post will be downvoted or filter-blocked: em-dashes in the post body, "absolutely" openings, three-bullet-point feature lists with emoji prefixes (✅ ✨ 🚀), AI-generated hero images, commit history of "Update" "update" "fix" "Update" by one author. "BrainRotGuard" (1,430, 0.82) performed above average but the friction ratio is entirely from the "I vibed-engineered" admission. Community filter lists actively block posts containing em-dashes.

  3. The AI Transparency Trap — Paradoxically, explicitly tagging your project "Built With AI" or "Vibe Coded" signals to the community to scrutinize it harder. The "CANDOR.md: an open convention to declare AI usage" (73, 0.76) suggestion itself was downvoted — the community's answer to AI transparency isn't metadata, it's "don't ship it in the first place if you don't understand it."

  4. The Contrarian Hot Take — "Stop overthinking it - a mini PC with SATA bays is all you need for Plex" (256, 0.81) — the community dislikes being told it's doing things wrong, even when the advice is correct. Fix: reframe as personal experience ("Here's what I learned running Plex on a mini PC for 2 years") rather than a prescription.

  5. The Self-Hosted Essential Service Done Badly — Backup solutions, email, password managers, and similar "mission critical" categories are held to a higher standard. "I wanted a backup solution with restic's reliability..." (206, 0.84) got friction because the community trusts restic and is skeptical of any new backup tool. Fix: frame as a UI wrapper over trusted tooling, not as a replacement.

  6. The Over-Broad Life Management App — "Oikos — a self-hosted family planner" (236, 0.78), "a CRM for the personal life" (290, 0.90) — projects that try to manage your entire personal life are viewed as scope-creep targets. Fix: pick one concrete vertical and nail it.

  7. The Cloudflare Dependency Disclosure — Cloudflare is a complicated villain here; using Cloudflare Tunnels is widespread but openly depending on them friction-rates. "PSA to Cloudflare Tunnel users" (157, 0.77) and the general "Cloudflare is the most successful Man-in-the-Middle in history" thesis (2,795) reveal that the community is conflicted — it uses Cloudflare but feels dirty about it.

Community Enforcement Mechanisms

  • uBlock Origin filter lists are publicly shared and actively maintained. They filter by flair ("Vibe Coded (Fridays!)", "Built With AI (Fridays!)") and by content (em-dashes, specific phrases like "I created a"). A subset of the community never sees your post if it matches.
  • The New Project Megathread is a hard wall for any project <3 months old.
  • Mod distinguished posts ("MOD ANNOUNCEMENT: Introducing Vibe Code Friday", 2,093) reset community norms — these hit the top of the week they're posted and are referenced for months after.
  • The "wall of shame" effect: controversial maintainers (Huntarr, BookLore) are referenced by name in every subsequent vibe-code discussion as cautionary tales. Being named here is a near-permanent reputation hit.

11. The Distribution Playbook

Phase 1: Pre-launch (2-3 months minimum)

Goal: Become a known, trusted community member BEFORE you post your project.

  1. Verify your project is >3 months old, measured from first public commit or post. If it's younger, stop and wait. There is no shortcut. Rule 6 is hard-enforced and getting caught means a removal and potentially a ban.
  2. Read the top 100 posts in this document's leaderboard. Understand what the community celebrates and what it attacks. If your project is an alternative to Plex, an AI helper, or a backup tool, understand those specific historical context threads.
  3. Comment in Need Help threads with actual helpful answers. Ten good comments in other people's threads before your launch are worth more than the launch post itself.
  4. Post a meme or a build reveal first. A relatable homelab meme ("Nothing to do"-level) or an honest "here's my stack after 6 months" post builds username recognition. This is credit you spend later.
  5. Host something yourself. Seriously. If your project is a self-hosted tool, the maintainer should be visibly self-hosting other tools. Comments about your Jellyfin library or Immich photos build credibility.
  6. Write an honest AGPL / MIT license and commit to it. Do not ship as "open source" if you plan to relicense later. The community tracks this.

Phase 2: Launch Day

Format: GALLERY (4-8 images) or TEXT if it's a writeup/guide. Never VIDEO.

Title formula: "I built [X] because [specific personal problem]" — with concrete numbers and a hardware or constraint detail.

Good examples:

  • "I built a fully local, open-source thermal printer appliance - no cloud, no subscriptions, no accounts"
  • "I built a 'digital safe with multiple keys' after a few too many bike concussions"
  • "I built a self-hosted alternative to Google's Video Intelligence API after spending about $450 analyzing my personal videos"

Post body structure (copy this):

Hi r/selfhosted,

[One sentence about the personal problem that made you build this.]

[One paragraph about why existing solutions don't fit - be specific about the tools
you evaluated. DO NOT trash competitors, just explain the gap.]

What [your project] does:
- [Self-hosted detail]
- [Runs on X with Y resources]
- [Bullet 3]
- [Bullet 4]

[One paragraph on explicit self-hosted characteristics: no cloud, no accounts, 
runs offline, license, where data lives, what phones home (ideally nothing).]

[One paragraph on honest scope: what's rough, what's not implemented, what you're
not trying to be.]

GitHub: [link]
Docs: [link]

If you try it, I'd love feedback on X and Y specifically.

Flair: Use the most specific category flair. If your project is exactly in the "Personal Dashboard" / "Cloud Storage" / "Media Serving" / "Internet of Things" / "Chat System" / "Photo Tools" / "Docker Management" category, pick it. Only use New Project Friday if you're under 3 months (and only on Fridays). AVOID "Release (No AI)", "Release (AI)", "Product Announcement".

Timing: Mid-morning US Eastern (12:00-15:00 UTC) is when the sub is most active. Never launch on a Friday unless you're explicitly using the Friday AI flair.

Ban list — do not include:

  • The word "Introducing" as the first word
  • Em-dashes (use regular hyphens)
  • Emoji-prefixed feature bullets (✅ 🚀 ✨)
  • "enterprise" / "robust" / "cutting-edge" / "revolutionary"
  • "We" / "our team" if you are a solo dev
  • Star counts, fork counts, user counts
  • Landing page URLs over GitHub URLs

Phase 3: First 24-48 Hours

  1. Be online and responding in the first 2 hours. r/selfhosted is not a "post and walk away" community. Answer every technical question in detail.
  2. Embrace criticism publicly. If someone points out a security issue, thank them, file an issue, and reply with a linked fix commit within the day if possible. The single worst thing you can do is get defensive.
  3. Do not delete negative comments, even hostile ones. Deletion is tracked and screenshotted. The BookLore and Huntarr maintainers both made this mistake.
  4. If someone accuses you of vibe-coding, answer factually: show commit history, architecture choices, and explain why something is the way it is. Do not deny using AI if you used AI — be precise about HOW you used it ("I wrote the core logic, AI helped with boilerplate JSX").
  5. If your post flops in the first 4 hours (<50 upvotes, poor ratio): do NOT repost. Instead, engage with critics in comments to salvage relationships and come back with a different angle in a few weeks.

Comment Reply Templates (r/selfhosted-specific)

"Is this vibe-coded?"

Good question. [Specific honest answer: "No, I wrote all of the backend logic myself - AI helped with the React boilerplate and some tests, I'd estimate AI-authored around X% of the codebase and all of it reviewed by me before commit." OR "Parts of it are - specifically the docs and the test suite. The core [X] engine is hand-written because security matters here and I wouldn't trust a model for it."] Here's the commit history link: [...] so you can judge for yourself.

"Why not just use [existing tool]?"

[Existing tool] is great and I used it for [specific time period] before building this. The specific thing that didn't work for my use case was [concrete technical detail - not a marketing difference]. If that's not a problem for you, [existing tool] is probably still the right answer.

"What's your pricing model?"

100% FOSS under [license]. There's no paid tier, no cloud version, no "enterprise" features behind a paywall. [If accepting donations:] I have a Ko-fi link on the repo for anyone who wants to support it, but it's not required for anything. [If no monetization:] No monetization, this is a hobby project.

"Does it phone home?"

No. There's no telemetry. You can verify with [specific method: "docker run with --network=host and watch with tcpdump" or "look at lib/network.ts"]. If you find anything that does, it's a bug and I want to know.

"Does it work with Docker Compose / Unraid / Proxmox / TrueNAS?"

[Concrete yes/no/partially with docker-compose.yml snippet if yes. If no yet, "not yet but planned for X."]

"Will you eventually switch to BSL / relicense?"

No. I picked [license] deliberately and I will not change it on existing code. If the project ever needs commercial support funding, I'll consider a dual-license model for NEW components only, with the OSS version remaining fully functional.

Phase 4: Ongoing Presence

  1. Update posts > Launch posts. "I built X - March 2026 update" posts consistently perform well when the changes are meaningful (see Immich progress updates, altran1502 has 3 posts in the top 100). The cadence should be quarterly, not weekly.
  2. Contribute to others' projects. PRs on popular tools build standing faster than your own announcements. Being listed as a contributor to Immich, Jellyfin, Home Assistant, Authentik, etc. is extremely high-status in this community.
  3. Answer Need Help threads in your niche. Every thread in your category that you helpfully answer (without pushing your project) is a deposit into the trust bank.
  4. Participate in megathreads. The Discord replacement thread (5,130 / 1,765 comments) and similar megathreads are where projects get discovered organically.
  5. Write guides, not launches. After your initial launch, your next self-promotional post should be a GUIDE, not a feature announcement. See "Free 750-page guide to self-hosting production apps - NO AI SLOP" (2,516) as the pattern.

Score-Tier Calibration

Be realistic about what your post can achieve:

Project typeRealistic ceilingWhat would push it higher
Solo dev launch, polished, FOSS, unique niche1,500-3,500Strong visual hook + personal story
Solo dev launch, FOSS, crowded category (todo apps, notes, dashboards)200-800Specific differentiator
Progress update from a known-good project1,500-2,000Major feature or UI redesign
Security exposé with CI proof2,000-9,500The bigger and more popular the target, the higher
Homelab build reveal1,000-6,500Clean photos, unusual hardware, dramatic before/after
Meme500-9,500In-joke depth and timing
AI-assisted tool (any)200-2,500Hard ceiling — the BrainRotGuard (1,430) is near the top
New tool launched outside New Project Friday while <3 months old(REMOVED)N/A

Post-Publication Measurement

At the 1-hour mark:

  • 100 upvotes, >0.95 ratio → on track for a hit

  • 30-100 upvotes, >0.90 ratio → on track for a solid post
  • <30 upvotes OR <0.85 ratio → in friction zone

At the 4-hour mark:

  • 500 upvotes → likely to hit 1,500+ final

  • 100-500 → will likely cap at 500-1,500
  • <100 → will likely finish under 400. This is a baseline post.

Ratio interpretations:

  • 0.97+: Universally liked. You did everything right.
  • 0.94-0.96: Slight friction but mostly positive. Normal for launches.
  • 0.88-0.93: Some group of the community is actively downvoting. Read the comments carefully and respond to the top criticism.
  • Below 0.85: Controversial. The community is split. You need to either engage hard with the objection or accept the polarization.

If your post stalls under 50 upvotes after 4 hours: do NOT delete it. Add an edit at the top addressing the most-common comment critique, and leave it up. The post becomes a reference point and the comments become valuable feedback for iteration.


12. Applying This to Any Project

Pre-Launch Checklist

  1. Is the project >3 months old (first public commit/post)? If no, wait or use New Project Friday.
  2. Is it genuinely self-hostable with no mandatory cloud dependencies?
  3. Is the license explicitly OSS (AGPL, MIT, GPL, Apache) with no plans to relicense?
  4. Does the project have production-ready docs (README, install instructions, docker-compose example)?
  5. Have you read the top 25 posts in this community?
  6. Have you commented helpfully in at least 10 Need Help threads in your category?
  7. Are you personally self-hosting other tools and visible in the community?
  8. Does your post title lead with a personal problem, not a feature?
  9. Does your post body explicitly state no cloud / no telemetry / no accounts (if true)?
  10. Does your post include honest scope disclaimers ("rough around edges", "not implemented yet")?
  11. Have you removed all em-dashes from both title and body?
  12. Is your flair a category flair, not "Release" or "Product Announcement"?

Scenario-Based Launch Guides

Scenario A: Your project is fully free/open-source with no paid tier

Optimal launch formula: Build reveal + problem story + GALLERY + specific category flair.

Frame it as "a personal project I built for myself that I'm sharing." Lead with the technical constraint you solved (hardware, privacy, cost). Show hero image + 3-4 UI screenshots + 1 architecture/docker-compose snippet. Explicitly state "MIT licensed, no cloud, no accounts, no telemetry."

Key risk: The community will audit your code. Before posting, run it through bandit / eslint / a basic security scan and commit fixes. Have a clean commit history.

Scenario B: Your product uses one-time / lifetime pricing

Optimal launch formula: Focus the post on the FREE self-hosted version. The paid tier is a footnote, not the headline.

Frame as "the self-hosted version is completely free and always will be. There's also a hosted version for people who don't want to run it themselves at $X one-time." One-time / lifetime pricing is tolerated but mentioning it in the title tanks the post.

Key risk: Any implication that key features are locked behind the paid tier will be called out. "Features parity between free and paid" must be literally true.

Scenario C: Your product uses subscription pricing

Honest assessment: Do not launch here. r/selfhosted will actively attack subscription-based products in its own subreddit. See the MinIO (1,929), Defguard callout (2,246), and Plex saga for the template.

If you must have subscription pricing and still want to engage this community:

  1. Release a fully functional free self-hosted version with no feature caps.
  2. Make the paid tier exclusively about support, SLAs, or managed hosting — NEVER features.
  3. State this explicitly in the post.
  4. Expect downvotes anyway. Your best case is a 500-1,000 score.

Key risk: Being named in a future "what is it with these companies rolling into r/selfhosted" post.

Scenario D: Your product was built with AI assistance

Optimal launch formula: Wait until the project is >1 month old. Use the Vibe Code Friday or Built With AI (Fridays!) flair. Post only on a Friday. Lead the post body with a precise AI-usage disclosure: "AI was used for X% of the boilerplate but the core [security/database/parsing] logic is hand-written." Include a commit history link.

Take the Huntarr lesson seriously: any authentication-related, cryptographic, or security-sensitive logic must be hand-written and audited. Vibe-coded security is what launched the community's current AI backlash.

Key risk: Being the next Huntarr. The community actively looks for security flaws in AI-assisted posts. Before posting, run standard security scans (bandit, pip-audit, npm audit) and publish clean results.

Scenario E: Your project is a "power tool" for existing self-hosted infrastructure (dashboard, monitoring, backup, etc.)

Optimal launch formula: If it's a dashboard or "tool for self-hosters," post on Wednesday with the Wednesday flair (mandatory under Rule 5). Frame as "I use Homarr/Glance/Dashy and wanted X, so I built this on top of them." Emphasize integration with existing tools, not replacement.

Key risk: Reinventing existing tools poorly. Be specific about what gap you fill that Homarr/Glance/Dashy/Backrest/Restic don't.

Cross-Posting Guidance (reference to other analyses)

If you have an existing post for a similar community, reframe for r/selfhosted as follows:

  • From r/ClaudeAI: On r/ClaudeAI, you frame as "I built this with Claude." On r/selfhosted, you MUST minimize the AI angle or move it entirely into the Friday post flow. Frame instead as "I self-host everything and was tired of [cloud thing]."
  • From r/macapps: On r/macapps, you present Problem-Comparison-Pricing. On r/selfhosted, drop the pricing section (or minimize it to "MIT licensed, free forever") and add a Self-Hosting section: docker-compose snippet, hardware requirements, data sovereignty, telemetry status.
  • From r/LocalLLaMA: On r/LocalLLaMA, you emphasize model choice, quantization, and VRAM. On r/selfhosted, emphasize Docker deployment, resource footprint (RAM/disk), and integration with existing self-hosted tools (Nextcloud, Immich, Home Assistant).
  • From r/sideproject or r/buildinpublic: Drop entrepreneurial framing entirely. No user counts, no growth metrics, no "validating the idea." Self-hosters react with hostility to startup language.
  • From r/webdev: Emphasize deployment and ops, not the tech stack. Nobody on r/selfhosted cares that you used Next.js; they care whether they can run it with docker compose up.

Final Meta-Principle

r/selfhosted is a trust-first community, not a product-first community. The single question every reader is asking is "can I trust this person with my data, on my hardware, in my home?" Everything in this playbook — the personal-problem framing, the self-deprecation, the transparency about AI usage, the no-cloud promises, the commit history openness — is in service of answering that question. If your project is actually trustworthy, the distribution path is straightforward. If it's not, no amount of post optimization will fake it.