Week one of Discourse is a known path. You stand up official Docker or you skip the server and use official hosted, you survive the wizard, you create a short category list, you leave trust levels on, you write a welcome that tells people how to become TL1, and you make a deliberate choice about email. That path is the beginner’s first-week guide. This article assumes you already did it, or you skipped it and you are living with the consequences.
Month one is where new Discourse sites actually fail. Not because the installer is hard. Because email was skipped and nobody noticed until the second digest-less week. Because a TL0 user spent forty minutes on an intro post and could not publish the screenshots. Because category security was “secured” by adding every group on the site. Because someone turned the sandbox off to be welcoming and the board filled with signups that were not people. Because a rebuild at lunch took the site down for ten minutes and the two veterans you still had decided this product was a toy. Because the first thing every phpBB migrant asked was “where is the last-post column,” and nobody had an answer that was not a lecture.
This is a failure-mode catalogue. It is not a second wizard. Official sources: the production install guide (INSTALL-cloud.md), Meta’s trust-level reference, and the category-security threads that keep reprinting the same “not permitted to view” error. If a control is not on those pages, this article does not invent it. Exact visit / read / like counts for TL1–TL3 are admin-configurable and change; see Meta’s Understanding Trust Levels and the Trust Level Permissions Reference. This piece describes behavior, not last quarter’s numbers.
1. You skipped SMTP and thought you had email
The official installer lets you skip SMTP. That is a documented 2026 option, not a hack. Skip, and the site uses Discourse ID (id.discourse.com) plus Google / Facebook / Apple / GitHub. You get a working admin session on day one without fighting Gmail. Hosted Free works the same way: you can have a community without becoming a mail admin.
What you do not get without SMTP:
- Email digests
- Mailing-list mode
- Reply-by-email
- The “the site emailed me, therefore the site is alive” loop that traditional forum people treat as oxygen
The failure mode is silent. Staff log in every day, so the site feels busy. Members register through Google, post once, and never receive a digest that would have brought them back on Thursday. By day 21 you have registrations and no second sessions, and you blame Discourse for being “bad at engagement.” You do not have an engagement problem. You have a mail problem you chose on purpose and then forgot.
Fix. Add SMTP later via Admin → Email, or re-run setup. The install guide says so. Then send yourself a test. Then register a throwaway account that is not Discourse ID and confirm the message lands. SPF and DKIM still matter; Discourse will not invent them. Digests will not save a dead category list, but they will stop you from confusing “no mail” with “no community.”
Do not enable mailing-list mode for everyone on day four to compensate. That is how you train Gmail to bury you, and how you spend month two on deliverability instead of replies.
Hosted sites have the same fork. Official pricing is a different article; the operational fact is the same: if the plan or the self-host box has no working outbound mail, traditional email features are off. Web push is not a digest.
2. TL0’s one-image cap ambushes the intro post
Default Discourse sandboxes TL0 (New). That is the product working. Documented default limits from the trust-level materials:
| Limit | Default shape | Setting name to look up |
|---|---|---|
| Embedded media | 1 image | newuser max embedded media |
| Links | 2 | newuser max links (and related allowed-groups settings) |
| Mentions | 2 | newuser max mentions per post |
| Likes per day | 50 | max likes per day |
| Own-post edit | 24 hours | post edit time limit |
| Flags | cannot | flag post allowed groups |
| Mute / ignore | cannot | mute is a TL1-shaped ability in the reference |
| Chat | tighter rate (the reference cites a 20-messages / 30-seconds shape for TL0) | chat rate settings |
The composer does not warn a new user, mid-draft, that the fourth screenshot will block publish. They write a long introduction, attach four photos of the bench or the error dialog, hit reply, and get a limit. They leave. Staff, who are TL4 or admin, never see this because staff are not sandboxed.
This is the most common “Discourse is hostile” ticket in month one, and it is a documentation failure on your welcome topic, not a bug.
Fix.
- Leave the sandbox on.
- Write the welcome topic as a how to become TL1 page, not as a brand essay. “Read a few topics, hang around, the site will promote you; until then you get one image.” Point at Meta’s trust-level explainer if you want the official wording.
- Browse the site in a private window as a freshly registered user every week of month one. Post the intro you expect members to post.
- If your community must allow more images on day one (a photography board, a support board whose first post is a screenshot set), raise
newuser max embedded mediaa notch. Do not set it to 20. Do not promote everyone to TL1 on register.
Invited users default to TL1 in the documented model. If you are running an invite-only room, you already skipped most of this pain. If you are public, you have not.
3. You turned the sandbox off to be welcoming
Two ways new admins disable the machine:
- Bump the default trust level for new users so registrations start at TL1 (or worse).
- Push TL0→TL1 thresholds so high that nobody ever promotes, then manually promote friends and leave everyone else stuck — or the opposite, thresholds so low that TL0 lasts twelve minutes.
Meta’s documented warning on the default-new-user setting is the one you should tattoo on the staff room: be very careful changing that setting, especially if signups are public, as it makes it much easier for spammers to mess with the site.
The failure mode is not theoretical. A public Discourse with TL0 limits removed is a phpBB that confirms email and then lets a bot drop fifty links. You will spend the rest of month one in the review queue, and you will decide Discourse “needs more moderation” when you are the person who unscrewed the only default that was doing the job.
Fix. Put the defaults back. If a specific category needs a looser first post (support screenshots), change that problem — image cap, or a staff-seeded “post your logs here” topic — not the global sandbox. If you truly need manual promotions, say so in the welcome topic and staff the queue. Do not half-disable the ladder and then blame trust levels.
TL3 is a 100-day rolling window and can demote. That will not bite you in month one unless you manually granted TL3 to people who then vanished. Do not grant TL3 as a welcome gift. TL4 is staff / manual or SSO, not an activity grind. Meta is explicit. If you promised a founder “leader” because they posted twice, you now have a political problem, not a setting problem.
4. Category security: you added everyone, so nobody can post
Discourse groups are hierarchical. A TL4 user is also in TL3, TL2, TL1, and TL0. The automatic staff group already contains admins and moderators. You do not need to list every rung to “make sure staff can see it.”
The failure mode, reprinted on Meta whenever a new admin arrives from phpBB ACLs: you open a category’s security table and add admins + moderators + TL0 + TL1 + TL2 + TL3 + TL4, sometimes twice, sometimes with conflicting See / Reply / Create. Users then hit “You are not permitted to view the requested resource.” Staff hit it too. The category looks fine in the admin list. The site looks broken.
The hierarchy plus Staff already cover “everyone who should be here.” Redundant rows are not documentation. They are a conflict.
Fix.
- For a public room: grant the everyone or TL0 row the See / Reply / Create mix you actually want. Stop. Do not also add TL1–TL4.
- For a members-only room: one row for the group that means “logged-in people who should be here” (often
trust_level_0or a custom group). Stop. - For staff: one row for staff. Do not also add admins and moderators unless you have a reason staff does not cover.
- After every security edit, open a private window as a guest, as a fresh user, and as a moderator. Click New topic. Read the error, if any, before you add another row.
This is the Discourse equivalent of XenForo’s Never on Registered. The XenForo permissions guide is a different product; the operational habit is the same: test with a throwaway, not with your admin cookie.
Private staff categories should exist before you need them. Create the staff room in week one. Do not debug a public leak in week three because you were using a public category as a staff scratchpad.
5. You renamed trust-level groups and the names will not die
Admins like to rebrand. TL0 becomes “Wallflowers,” TL1 becomes “Neighbors,” then someone reverts to “New users” and the security table still says Wallflowers until tomorrow.
This is a daily-job problem, not a corruption problem. Directory structures, renamed default groups, and some user-directory syncs wait for scheduled background routines. TL0→TL1 checks run on the order of every 15 minutes. TL1→TL2 and TL2→TL3 promotions and demotions are daily. If you renamed groups at 16:00 and you are still staring at the old string at 16:10, you have not found a bug.
Fix. Either live with the default names for month one, or rename once, write the new names in the welcome topic, and wait for the daily job. Do not rename them three times in a week and then file a “permissions are broken” topic on Meta. They are not broken. They are stale.
6. Rebuild downtime at lunch
Self-hosted Discourse is Docker. Changing /var/discourse/containers/app.yml (SMTP, hostname, extra env, many plugins) requires:
cd /var/discourse && ./launcher rebuild app
Official materials put a rebuild at about 5–10 minutes. During that window the container is stopped. The site is down unless you have configured the offline page during rebuild optional feature. Hosted customers do not own this problem; self-hosted beginners meet it the first time they “just add a plugin.”
The failure mode is social, not technical. You rebuild at 12:40 because a veteran asked for a plugin. The two people who still post at lunch hit an error page. They go back to Discord. They tell the room the new forum is down again.
Fix.
- Rebuild on a published window, the way you would take XenForo’s Board active off. Tell staff.
- Do not add plugins in month one unless they are load-bearing (SSO for a company, official Chat if you actually want it). Week one of the beginner guide already said this. Month one is when people stop believing it.
- If you must rebuild often, configure the offline page. It is not a substitute for a window; it is a courtesy.
- Ports 80 and 443 still need to be free on the host. If you installed nginx “in front” on day six without reading the guide, the next rebuild is how you discover you now have two things claiming TLS.
Hosted Discourse removes this class of failure. That is a real reason to pay the live pricing grid, not a vibe. The TCO article is where the three-year arithmetic lives.
7. “Where is the last-post column?” and the infinite-scroll revolt
This is not a setting. It is a category mismatch you should have caught in the old-forum migration filters and the Discourse versus traditional essay.
Traditional people land on a board index. They scan last-poster, last-time, unread lights. Discourse lands on Latest. Topics continue as you scroll. There is no last-post column because recency is the page.
Month-one versions of the revolt:
- Veterans ask you to install a theme component that fakes a forum index. You do. New users now have two homepages. Neither is explained.
- Someone turns on a plugin that paginates topics “like a real forum.” You now own a hybrid nobody documents.
- Staff reply with a lecture about how Latest is better. The veteran stops posting. You have won the architecture argument and lost the person who answered questions.
Fix. Decide, out loud, which navigator you serve.
If you migrated a tree-shaped community and you are not willing to lose the last-post people, you may be on the wrong product. That is an allowed conclusion. XenForo exists. phpBB still exists. A theme component is a courtesy, not a conversion strategy.
If you are staying on Discourse, write a short “how to read this site” topic: Latest, New, Unread, category watches, why there is no index. Pin it. Answer the first twenty “where is the forum list” posts with a link, not a sermon. Do not fake a 40-forum index with empty categories. Empty categories are how Discourse looks abandoned; a phpBB index at least showed the last poster so you could see it was abandoned.
Infinite scroll is the same conversation. People who want page 14 of a 2009 thread are not wrong. Discourse is not trying to be that reader. If that reader is your audience, do not spend month one fighting them.
8. Review queue surprises, and flags you cannot explain
TL1+ can flag. Flags land in the review queue. Diverse TL3 flags on a TL0 post can auto-silence and hide before a moderator reads anything. Reviewable scoring exists. The formula is not documented in the materials we have — do not invent a threshold, and do not tell staff “it hides at score 12.” It does not.
The month-one failure modes:
- You have one active TL3. Nothing auto-hides. You think the queue is broken. It is waiting for more signal.
- You have a tight friend group who all hit TL3 because you invited them. They flag a new user’s awkward intro. The intro vanishes and the user is silenced. You spend a day apologizing.
- You never look at the queue. Hidden posts pile up. The site feels empty.
Fix. Open the queue every day of month one. Put two humans on it, not one. Tell TL3 people that a flag is a moderation action, not a dislike. Watched words (flag / block / replace / censor) are a moderator tool — useful for the three slurs you already know you will see, not a substitute for a queue habit. Detailed watched-word playbooks are not in the official new-admin materials; start with a short list and grow it from real incidents.
Do not promise members a “three-strike formula.” You do not have one that Discourse documents.
9. You rebuilt the old board index as categories
Five categories plus a private staff room will carry a new site for months. The beginner guide already gave you that table. Month one is when migrants ignore it.
The failure mode: forty phpBB forums become forty Discourse categories, half of them empty, each with a one-line description that still says “discuss things related to X here.” Latest is a junk drawer. New users pick the wrong room. Staff invent another category to fix the confusion.
Fix. It is not too late in month one. Merge. Tag. Delete (or make staff-only) the rooms that have three topics and a 2019 date. Required tags on Support beat Support → Product → Version → Region as four nested categories. If you imported with the stock XenForo (or similar) script, depth beyond two levels was already flattened to tags on the nearest subcategory — you may be fighting the importer and fighting the product. Stop fighting. Use the tags.
Structure as a return loop is a different article. Month one’s job is fewer rooms than you think, not a taxonomy dissertation.
10. Digests, watches, and the “site feels dead” ticket
Even with SMTP, month one can feel empty because:
- Nobody is watching the categories you care about. Default notification on Announcements should usually be watching. Default on General should not be watching, or every off-topic reply emails the whole site.
- Staff posted three welcome topics and then went silent. Latest with three staff posts is as dead as a phpBB index with three staff posts. The founding calendar is the human schedule; this article will not reprint it.
- You muted mailing-list mode globally after one complaint, and you also never explained in-app notifications. Members who came from phpBB expected email for every reply. They got neither email nor a tutorial.
Fix. One useful email (digest or transactional), watches explained once, a staff reply budget you can keep. Test notification levels as a fresh user. Do not invent a drip sequence.
A first-month checklist you can paste into the staff category
Work this list on day 7, day 14, and day 28. A throwaway account is required. Your admin cookie lies.
- Fresh user can register. If you skipped SMTP, they can still get in via Discourse ID or social. If you added SMTP, the confirm mail lands.
- Fresh TL0 user hits the image / link / mention caps you think you have. The welcome topic explains the caps and how TL1 happens.
- Default new-user trust level is still the sandbox. You did not turn it off to be nice.
- Public categories: a guest can read what you want Google to read. Private categories: a guest cannot.
- Category security tables do not list Admin + Mod + TL0 + TL1 + TL2 + TL3 + TL4 on the same room.
- Staff category exists and is staff-only. You tested it as a moderator, not as the founder.
- You have not renamed trust-level groups more than once. If you did, you waited for the daily job.
- Self-hosted: last rebuild was in a published window. Offline page configured if you rebuild more than rarely.
- Review queue has a named human every day. Watched words have a short real list, not a novel.
- Category count is still small. Empty imported rooms are merged, tagged, or hidden.
- Someone who asked “where is the last-post column” got a written answer, not a lecture. If most of the room asked, you revisited the destination choice.
- SMTP, if present, has a passing test mail. Digests are on only if you want them and they actually send.
- A staff reply landed on every first post this week. If it did not, stop adding plugins and start answering.
What month one is not
It is not a plugin festival. It is not a theme-component festival. It is not the week you migrate the second phpBB you forgot you had. It is not the week you invent TL3 thresholds.
It is also not the member-facing 30-day onboarding plan. That plan is what you do for a person who already joined. This article is what you stop doing to the site so those people have a site left to join.
If month one is on fire, the honest rollback is usually a setting, not a platform change. Put the sandbox back. Delete the redundant security rows. Add SMTP. Answer the queue. If the fire is “our people will not live without a board index,” that is a destination problem, and the migration filters are the piece you should have written before the wizard.
Takeaways
- Month-one Discourse failures are email, sandbox surprises, security redundancy, rebuild manners, and category mismatch — not a missing style.
- Skipped SMTP is valid. Pretending you still have digests is not.
- TL0’s one-image cap will ambush every intro post you have not tested as a fresh user. Explain it or raise it a notch. Do not disable the ladder.
- Hierarchical groups plus Staff already cover “everyone.” Adding every trust level to a category is how you buy “not permitted to view.”
- Renamed TL groups look stale until daily jobs run. Wait.
./launcher rebuild appis downtime. Schedule it. Hosted exists so you can refuse this class of problem.- The last-post-column revolt is a product-fit signal. Theme-component around it only if you are sure you should be on Discourse at all.
- Reviewable scoring will auto-hide in ways the public docs do not formula-ize. Staff the queue. Do not invent a number.
If you cannot pass the checklist with a throwaway account, you do not have a Discourse community yet. You have an admin session. Fix the session before you invite the next fifty people.

