Codingfish Skip to content

Discourse vs phpBB

The comparison people reach for when a board feels dated. The features barely separate them. The operating cost does, and it runs the other way from what the interfaces suggest.

Discourse against phpBB

The fields both entries record, with the rows they disagree on marked.

CriterionDiscoursephpBB
Runtime Ruby on Rails PHP
Licence GPL-2.0 GPL-2.0
Hosting Self-hosted or vendor-hosted Self-hosted
Thread model Reading position Linear
Extensions Plugins and themes (Ruby) Extensions (PHP)
Activity Active2026-09-03 Active2026-07-27

Licence and runtime are recorded from each project's own documentation; activity is the last commit to its public repository. Neither column is a score — see which rows actually decide a comparison.

These two are usually compared as old against new, and that framing decides the answer before the question is asked. It is also wrong in a specific way: phpBB is not a legacy system somebody forgot to retire. It is under active development, it runs the same boards it ran fifteen years ago, and that continuity is the product.

What actually separates them is what each one asks of whoever keeps it running, and the direction of that difference surprises people.

Grid placing the catalogue by runtime against licence position, with discourse and phpbb highlighted among the alternatives.
Where the pair sits against everything else on the same shortlist — the context a two-column table cannot carry.

What you are agreeing to operate

phpBB runs on PHP and MySQL. That is the whole dependency list, and it is the reason the platform outlived almost everything it competed with. It installs on shared hosting costing a few pounds a month, it upgrades by replacing files, and the pool of people who can fix it at eleven at night is roughly everyone who has ever maintained a website.

Discourse expects PostgreSQL, Redis and a container host. None of that is exotic and all of it is more than one moving part. The official installation path is a Docker deployment on a server you control, and the upgrade path assumes you are comfortable there. That is a fair trade for what it gives back — but it is a trade, and it is paid every month by a person, not once by a budget.

The honest test is not which stack is better. It is whether the person who would perform the upgrade can name the database version currently in production. If they cannot, phpBB will still be patched in three years and the Discourse instance will not.

Where Discourse earns the extra machinery

Two things, and both matter more on a busy board than a quiet one.

The first is the reading model. Discourse replaced pagination with a reading position, so a two-hundred-reply topic behaves like a document you return to rather than a stack of pages you navigate. On a community generating real volume this is a genuine improvement, and it is the reason people who move rarely want to move back.

The second is moderation. Trust levels — privileges that unlock as somebody participates — are in the core, not bolted on, and they are the mechanism that lets a community absorb newcomers without a moderator approving every action. phpBB handles the same ground with permission groups, which work but require somebody to configure them thoughtfully once and revisit them occasionally. On a board with a hundred posts a day, the difference is hours per week.

Where phpBB is simply the better answer

On a quiet board, Discourse's machinery works against it. The interface is built to convey activity — unread counts, reading positions, live updates — and when there is little activity it conveys that instead. A board with four posts a week looks abandoned in Discourse and looks like a small board in phpBB, which is accurate and unembarrassing.

The second case is a community that already exists somewhere else. phpBB's interface needs no explanation to anyone who has used a forum before, and for a membership that is not technically inclined, familiarity is worth more than any feature on the comparison table.

The third is the handover. A phpBB board on shared hosting can be given to a volunteer. A container deployment usually cannot, and a community whose one technical member leaves has a scheduled end date whether or not anybody has noticed.

Extensions, and how each one ages

Both are extensible and the mechanisms fail differently. phpBB extensions are PHP packages installed into the board; the ecosystem is large, old, and uneven, and the usual failure is an extension that was written for the previous major version and quietly stops being maintained. Discourse plugins are Ruby and run inside the application; the project moves quickly, which means plugins get fixed and plugins get broken, often by the same release.

The check that predicts your future is the same for both: find the repository of the extension you would actually need, and compare its last commit with the platform's last release. That one comparison tells you more than any feature list on either project's site.

Search, which decides whether the archive was worth keeping

A community's value is the answers buried in it, and whether anyone can retrieve them is almost entirely a search question. This is the capability that varies most between these two and gets mentioned least.

phpBB hands search to the database. That is adequate up to a few tens of thousands of posts and then degrades into something members stop using — at which point they go to a search engine instead, which works only if the board is public and indexable. A board behind a login with weak internal search has effectively lost its own history while still storing it.

Discourse invests here because its whole model assumes long topics that get revisited, and the difference is noticeable on any board large enough to have a history worth searching. If the community is small, this argument carries no weight at all — the database is fine for a thousand posts, and it will be fine for the next thousand.

What each actually costs in money

Neither charges a licence, which makes the cost table look identical and tells you nothing.

phpBB runs on shared hosting: a few pounds a month, and the same plan that serves the main site. Discourse's own guidance points at a virtual server with a couple of gigabytes of memory because PostgreSQL and Redis both want their own room, so the realistic figure is an order of magnitude higher before anybody's time is counted.

Add the vendor-hosted option to the comparison honestly, though, and the picture changes again. Discourse sells hosting for its own software; on a busy community the monthly fee frequently costs less than the hours it replaces, and it removes the failure mode where the one person who understood the deployment moves on.

The support you get when something breaks

Both projects run their own community on their own software, which is the most useful thing you can look at before choosing either. Post a question in each and see who answers and how quickly — that five-minute check predicts your next three years better than any specification.

The character of the two differs. phpBB's community is long-established and the answers to most questions already exist, sometimes written a decade ago against a version you are not running. Discourse moves faster, so answers are current and also age faster, and the maintainers are visibly present in a way that is rarer on a project of phpBB's age.

Migration, in the direction people actually go

Discourse ships a maintained phpBB importer — it is one of sixty-three importer scripts in its repository, and phpBB is among the best-covered sources. Moving that way is a well-trodden path with known losses: posts and topics carry, users carry without passwords, and attachments depend on how they were stored.

The reverse direction is not equivalent. That asymmetry is not a criticism of either project — importers get written towards the platform that wants the users — but it is worth noticing before the choice is expensive. What imports from what is read from the repositories here.

Whichever way you go, the addresses are the part that gets thrown away by accident. A board answering questions for a decade has links pointing at specific topic addresses from every place those answers were ever useful, and an importer that renumbers topics discards all of it unless somebody keeps the mapping.

Two smaller differences worth knowing

Mobile. Discourse was built for a phone from the beginning and behaves like an application there. phpBB's default templates are responsive but were retrofitted, and the reply flow in particular shows it — quoting with a touch keyboard open is workable rather than pleasant. On a community whose members read on a phone between other things, that difference costs replies that nobody reports, because an unwritten post leaves no trace.

Email. Discourse treats mail as a first-class route in and out: members can reply to a notification and have it land in the topic. phpBB notifies and expects you to come back to the board. For a membership that lives in an inbox, that single behaviour changes participation more than any interface decision on this page.

Deciding

Take Discourse if the community is active enough that the reading model and the moderation tooling pay for the operational load, and if there is somebody whose job includes keeping a container host patched. Those two conditions go together more often than not.

Take phpBB if the board is quiet, if the membership values familiarity, or if the person maintaining it is a volunteer whose interest may fade. That is not settling for less. It is matching the software to the maintenance you can actually supply, which is the constraint every abandoned board failed.

And if the honest answer to "who patches this?" is nobody, the vendor-hosted option for either platform is not a compromise — it is the same software with somebody else holding the pager.

Questions people actually ask

Which of the two is cheaper to keep running?

phpBB, and not by a small margin. It is PHP on MySQL, which runs on the cheapest hosting there is and can be patched by almost anyone. Discourse expects PostgreSQL, Redis and a container host, and gives back a genuinely better reading experience — a fair trade only if somebody is comfortable with that stack at eleven at night.

Is phpBB outdated?

It is old, which is not the same thing. It still ships releases, it still receives security fixes, and the linear thread model it uses is what eight of the eleven forum platforms in this catalogue use. What it does not do is look modern out of the box, and that is a theming decision rather than a structural one.

Can content move between them?

In that direction, yes: Discourse maintains an importer for phpBB, and it is one of the better-exercised scripts in that repository. Moving the other way is the harder journey, which is worth knowing before the decision rather than after.

What actually decides this pair?

What the board costs to keep alive. The feature lists diverge less than the operations do, and the operations diverge on the runtime. If the answer to 'who patches this' is 'nobody in particular', that settles it.