Administrator at a slate desk planning a new forum site with a printed checklist and a laptop showing an empty community homepage

People type how to make a forum website and then buy the wrong thing. They install a Google Form and call it a community. They create a Discord “Forum” channel and wonder why nothing is searchable in six months. They download a nulled zip and spend the first week on malware. This page is the other path: a forum site you own — a public URL, accounts, topics that stay, and a first week that does not look like a ghost town.

It is a launch runbook, not a shopping list of every engine. The forum vs Discord piece decides the medium. The first 30 days calendar starts after the URL works. Cost comparison and XenForo vs Discourse stay the long compare. Here you choose, host, install, and open the doors.

What you are actually building

A forum website is three objects that have to stay up together:

Object If it is missing
Software You have a domain and a blank index.html
A server that can run that software You have a zip and a 500
A reason for the second member to post You have software and a museum

How to start a forum is the same job with a shorter name. How to set up a forum is the middle third (host + installer). How to create a forum for free is a budget constraint, not a different product — treat it in the free path, not as a third kind of community.

Three things this article is not:

  1. A Google Form. Forms collect answers. They do not grow threads, reputations, or search.
  2. A Discord Forum channel. That is a Discord feature. Useful next to a site; it is not a site. Official XenForo docs treat Discord as an external chat you can webhook into, not as the forum.
  3. A pirated license. There is no supported upgrade path from a stolen zip. Skip it.

If you already have members on another engine and you are moving them, stop. That is an import mapping job, not a greenfield launch.

Decide the job before you buy anything

Official manuals will not write your purpose statement. Community practice will punish you if you skip structure.

Write four lines on paper. If you cannot, you are not ready to pay for a VPS.

  1. Who is this for in one sentence. “Owners of FiveM servers who need a whitelist and a rules archive.” Not “everyone who likes games.”
  2. What must still be readable in a year. Rules, how-to posts, showcases, support tickets. If the answer is “tonight’s raid voice,” you want Discord, not a forum.
  3. How private is it. Public read, register-to-post, invite only, or a staff intranet. This decides permissions on day one.
  4. Who is on duty when you sleep. One founder is not a moderation team. Name a second person or admit you will be slow.

Then draw the node tree on paper, not in the installer. XenForo community practice is blunt: a deep sub-forum tree looks busy and reads empty. Broad parent forums plus thread prefixes beat twenty vacant children. Discourse’s own docs say the same in different words: a flat set of categories plus tags; an “immense, overly nested” board is a common structural error. The forum structure article is the longer version. For launch you need five rooms, not fifty.

XenForo-specific, from the same practice set, decide this before you click install:

  • Registered stays the primary user group for everyone. Staff roles are secondary groups layered on top. Making “Administrators” someone’s primary group is a first-week tax you will pay on every add-on.
  • Do not use the permission state Never as a normal “no.” It is a hard override. It breaks promotions and is miserable to debug. The permissions for new admins guide is the deep dive.
  • The root Admin account is a system identity. Post official notices from it. Casual replies from an unbadged personal profile. Members do not argue with the account that can ban them.

If those four lines plus a five-node sketch take more than an hour, you are overthinking. If they take less than five minutes, you are underthinking.

Pick software that matches the job

You are choosing an architecture, not a coat of paint. Four honest buckets:

Bucket You run You pay You should pick it when
XenForo (self-hosted or XenForo Cloud) PHP + MySQL on your stack, or their cloud License (self-host) or subscription (Cloud) You want a classic threaded forum, deep permissions, styles, and you will actually administer a server — or you will pay Cloud not to
Invision Community PHP app, self-host or their cloud License / hosted plan You already live in IPS apps, or you need their suite more than XF’s
Discourse Official hosting, or Docker on a VPS you SSH into Hosted plan, or a VPS + SMTP You want topics + tags + trust levels, you accept Latest as the front door, and you can live with Docker
Open source (Flarum, phpBB, NodeBB, MyBB…) Whatever that project documents Hosting only Budget is zero and you accept the ops and UX of that project

This is not the 2026 software roundup. A one-screen filter:

  • Need a classic forum tree, styles, add-ons, and you will pay. XenForo or IPS. IPS or XenForo is the existing compare. Do not start both.
  • Need Discourse’s trust levels and you have root SSH (or you will buy discourse.org hosting). Discourse. Read the beginner Discourse and Discourse hosting requirements after you finish this page.
  • Need free and you refuse a license. phpBB, Flarum, NodeBB, MyBB. Flarum is one honest option. “Free XenForo” in search is usually either Cloud trial talk or a stolen zip. Official XenForo is commercial.
  • Need only voice and tonight. You do not need this article. Open Discord and stop.

Official XenForo documentation is explicit about scope: the downloadable product is self-hosted community software you put on your web server. XenForo Cloud exists as a separate hosted path. The manuals do not claim the zip is a turnkey SaaS, and they do not claim XenForo replaces Discord. Chat is an external system; webhooks can notify Slack or Discord. If your product is realtime chat, buy chat.

Official Discourse documentation is equally explicit the other way: self-host is Docker on 64-bit Linux (Ubuntu LTS recommended), not a cPanel zip. If you do not have root SSH, you buy their hosting or you pick PHP software.

Match hosting to the engine (or the install dies)

How to set up a forum fails here more often than in the installer.

If you chose XenForo (self-hosted)

Official 2.3 requirements (developer docs / system requirements):

Piece Minimum the docs name What you should actually buy in 2026
PHP 7.2 8.3 or 8.4 (docs recommend 8.4)
Extensions MySQLi, GD with JPEG, PCRE, cURL, SPL, SimpleXML, DOM, JSON, iconv, ctype Same list, plus ask the host for mbstring and a working mail/SMTP story
Database MySQL 5.7 MySQL 8.0, MariaDB, or Percona; InnoDB
Web server Apache or nginx in normal deployments Either; HTTPS in front
Proof Official requirements zip Run it before you pay: https://xenforo.com/purchase/requirements-zip

XenForo community practice adds why cheap shared hosting melts: every group or node permission change rebuilds a cache that scales with (user groups × nodes). On a medium board that is minutes of work. On a tired shared box it is timeouts. Default XenForo also hits the data registry on page views. You do not need Redis on day one of a ten-person board. You do need a host that will not kill long PHP requests and that lets you send mail.

Buy, in order of sanity:

  1. XenForo Cloud if you do not want a server. That is the official “we run it” product.
  2. A small VPS (2 GB RAM is a comfortable floor for “I will grow”) with Ubuntu, nginx or Apache, PHP 8.3+, MariaDB, and a real SMTP provider (Amazon SES, Mailgun, Postmark — pick one and set SPF/DKIM; the XF notebooks do not document SPF, but undelivered mail kills registration).
  3. Quality shared hosting only if they pass the official requirements zip, give you PHP 8.3, and you accept you will move later.

Do not buy a $3/month shared plan because a YouTube thumbnail said “unlimited.”

If you chose Discourse (self-hosted)

Official production minimums from Discourse’s install docs:

  • 1 CPU core (2+ recommended), 64-bit
  • 1 GB RAM physical (installer halts under 1 GB; 2 GB recommended). 1 GB boxes need swap. Official advice for DigitalOcean-class hosts is often “just take 2 GB”
  • 10 GB SSD (20 GB+ recommended)
  • 64-bit Linux, Ubuntu LTS
  • Docker, root SSH
  • Ports 80 and 443 free so Let’s Encrypt can issue

SMTP is optional at bootstrap now: skip it and Discourse ID (id.discourse.com) can handle login via Google / GitHub / etc. Digests, mailing-list mode, and reply-by-email still need a real SMTP provider. If you skip mail, you skipped those features. Say that out loud.

Discourse will not run on classic cPanel shared hosting. The docs are not shy about it.

If you chose IPS or an OSS PHP forum

Treat it like XenForo: PHP version the vendor names, a writable data-style directory, InnoDB, HTTPS, mail. Read that vendor’s requirements page. Do not assume XenForo’s PHP 7.2 floor applies.

A full XenForo installer cookbook is its own article. Here is the official shape so you do not invent a control panel that does not exist.

XenForo, official path

  1. Buy a license. Log into the Customer area.
  2. Download XenForo next to that license. For a new site choose the Full package, accept the license, download.
  3. Unzip. You want the contents of the upload directory, not the zip root. Put those files in the web root (public_html, www, or an nginx root).
  4. The package includes src/config.php.default. Live credentials live in src/config.php (host, port, username, password, dbname). Official CLI install expects you to create that file when you install from the command line.
  5. The web server user must write data/ and internal_data/ (and children). Official docs still mention chmod 777 as the blunt instrument; on a VPS, prefer the PHP user owning those trees.
  6. Preferred install: from the XenForo root, php cmd.php xf:install. It asks for admin username, password, and board title, then loads schema and master data. Browser installer exists; CLI is what the developer docs recommend to avoid user-mismatch on file permissions.
  7. Official add-ons — Media Gallery, Resource Manager, Enhanced Search, Importers — are separate downloads from the same Customer area. They are not in the core zip. Do not expect Elasticsearch on a fresh core install.

Upgrades: you may jump versions; you cannot downgrade. Back up files and database first. One-click upgrade in the ACP is on by default (enableOneClickUpgrade). After any upgrade, check Appearance → Outdated templates. Custom styles do not merge themselves. PAGE_CONTAINER changes will break a neglected theme.

XenForo 2.3 mail is Symfony Mailer, not SwiftMailer. Old add-ons that still call Swift_ classes will fatal. On a local copy of production data, official advice is $config['enableMail'] = false; so you do not spam real members.

Enhanced Search is optional on day one. Official note: MySQL full-text gets expensive as you grow; XFES wants Elasticsearch or OpenSearch 7.2+. Install ES when search is actually slow, not because a blog said “enterprise.”

Discourse, official path

Official bootstrap (self-host) is one script on a clean Ubuntu LTS box, run as root, then an interactive wizard: admin email, hostname (or a *.discourse.diy subdomain), optional SMTP. The image compile takes several minutes. Let’s Encrypt is automatic when 443 works. First browser visit: register with exactly the admin email you typed in the wizard. Then the in-app wizard (theme, logo, first categories).

Hardening the docs actually name after first boot: unattended upgrades, Fail2Ban. Category security: assign one broad group (for example trust_level_1 or staff). Stacking admins + moderators + every trust_level_* on the same category is a documented way to produce “You are not permitted to view the requested resource.”

First week after the installer (so it is not a museum)

The 30-day launch calendar owns culture. This is the software week.

Days 1–2 — identity and mail

  • Logo, title, homepage. An empty default style with “New community” as the H1 is how people bounce.
  • Send a test registration to an address you control. If the mail never arrives, fix SMTP before you invite anyone. XenForo community sources in our notebooks do not spell SPF; undelivered confirmations still kill you.
  • Favicon, HTTPS redirect, and a backup you have restored once. The engine-agnostic backup page is the inventory. Official XF: you cannot roll an upgrade backward, so the backup is the undo.

Days 2–3 — structure and permissions

XenForo

  • Five-ish forums, prefixes where you were tempted to add a child.
  • Registered = primary. Moderators and Administrators = secondary. No Never in the default Registered set unless you truly mean “nobody, ever, including staff promotions.”
  • Turn on registration controls you will actually staff: Q&A that requires topic knowledge, and a hold on links from brand-new accounts. Community practice: unestablished accounts should not get a website field to plaster. Official core has Q&A and approval queues; third-party anti-spam exists — install from the ACP, never by deleting files over FTP first (orphaned listeners can lock you out of ACP).
  • Create your personal unbadged account. Log out of Admin for casual posts.

Discourse

  • Few categories, tags for the rest.
  • Do not re-create a phpBB tree. Users coming from page-numbered forums will complain about infinite scroll; that friction is documented. Warn them in the welcome topic instead of bolting on a pagination plugin on day two.
  • Trust levels will sandbox TL0. Let that work before you invent a points shop.

Days 4–5 — seed the room

Write the posts you wish a stranger would find at 11pm:

  • How this place works (one screen)
  • How to get help
  • One genuinely useful thread in each forum

If you cannot write those, you do not have a community yet. You have software.

Days 6–7 — invite ten humans, not a press release

Ten people who already talk to you. Watch where they get stuck. Fix that node or that email. Then open registration. A homepage full of empty sub-forums is a documented way to look dead. A homepage with three live threads is a place.

Do not spend week one on a credits shop, a gallery, Enhanced Search, or a custom style framework. Official XF add-ons are extra zips for a reason. Discourse does not even ship a themes marketplace in the docs. Skin later.

What “for free” actually means

Search demand for how to create a forum for free is real. The honest menu:

Free as in What you get What you owe
Hosting trial / Discourse hosted free tier A URL this week Limits, branding, a migration later
OSS + a cheap VPS phpBB / Flarum / NodeBB / MyBB You are the sysadmin
XenForo or IPS license = $0 Nothing legitimate Stolen builds are not a plan
Discord only Chat. Sometimes a Forum channel Not a website you rank or archive

If the budget is truly zero, pick one OSS engine, a $5–12 VPS, and the same first-week discipline. Do not stack three free hosts and a nulled XF. The Flarum piece is the lightweight OSS read. phpBB is the conservative one. Discourse self-host is free software on a VPS you pay for.

When you can spend, a XenForo license plus a boring VPS is cheaper than a year of recovering a hacked board.

A one-page launch checklist

Print this. Tick it. Then invite people.

  • Purpose in one sentence; five forums on paper; second human named
  • Engine chosen (XF / IPS / Discourse / one OSS) — not “all of them”
  • Host matches engine (XF requirements zip or Discourse Docker + 2 GB or vendor page)
  • Legal download (Customer area Full zip, or official Discourse installer, or project release)
  • data / internal_data writable (XF) or Docker compile finished (Discourse)
  • Admin login works; test user receives mail
  • HTTPS; backup taken and restored once
  • XF: Registered primary, staff secondary, no casual Never
  • Discourse: few categories; do not stack every trust group on one category
  • Three seed threads; personal (non-root) account for chatting
  • Ten real invites before a public launch post

FAQ

Is “start a forum” different from “make a forum website”?
No. Same intent. This URL is the one. Use “start” in conversation; put the site on a real domain.

Can I set up a forum on Discord instead?
You can run a community on Discord. You cannot make a forum website on Discord. Hybrid is the other article.

Do I need Elasticsearch / Enhanced Search on day one?
Official XF: only if MySQL full-text will hurt. New boards do not. Discourse search is built in; do not add XFES to Discourse.

Can I install XenForo on the same $6 shared box as my WordPress brochure?
Only if that box passes the official requirements zip and you accept noisy neighbours. A small VPS or Cloud is the default recommendation in 2026.

What PHP does XenForo 2.3 want?
Docs: 7.2 minimum, 8.4 recommended. Buy 8.3+ .

I have no root SSH. Can I self-host Discourse?
Official docs: no. Buy hosted Discourse or pick PHP software.

Should I import from phpBB / vBulletin on night one?
No. Launch empty or seed. Imports are a mapping runbook. Official XF Importers are a separate add-on.

Takeaways

Making a forum website is a sequence: job on paper, engine that fits, host that can run it, legal install, a week of structure and mail, then ten humans. Skip a step and you get a Discord you called a site, or a licensed board nobody can confirm email on.

XenForo is self-hosted PHP (or official Cloud), commercial, not a chat app. Discourse is Docker or official hosting, flat categories, trust levels, not a phpBB tree. IPS is the other paid suite if you already live there. Free means OSS plus a VPS, or a hosted free tier — not a nulled zip.

When the URL loads and mail works, put this tab away and open the first 30 days. Software is the floor. The second member is the product.