Comparison of Internet forum software
This article outlines the general features commonly found in various Internet forum software packages. It highlights major features that the manager of a forum might want and should expect to be commonly available in different forum software. These comparisons do not include remotely hosted services which use their own proprietary software, rather than offering a package for download which webmasters can host by themselves.
General information
Basic general information about the forums: creator/company, license/price etc.Creator | Latest release date | Current stable version | Programming language | License | |
bbPress | WordPress Foundation | 2020-04-29 | 5.4.1 | PHP | GPL |
Beehive Forum | Project Beehive Forum Developers | 2016-11-05 | 1.5.2 | PHP | GPL |
Discourse | Civilized Discourse Construction Kit, Inc. | 2020-06-01 | 2.4.5 | Ruby, JavaScript | GPL |
Discuz! | Comsenz Inc. | 2018-01-01 | X3.4 | PHP | Discuz! EULA |
FluxBB | FluxBB.org Developers | 2018-12-31 | 1.5.11 | PHP | GPL |
FUDforum | Advanced Internet Designs Inc. | 2018-04-09 | 3.0.9 | PHP | GPL |
Ikonboard | Matt Mecham Joshua Johnson | 2012-10-19 | 3.1.5A | Perl | Proprietary |
Invision Power Board | Invision Power Services Inc. | 2020-02-04 | 4.4.10 | PHP | Proprietary |
MyBB | MyBB Group | 2019-12-30 | 1.8.22 | PHP | LGPL, moving to BSD in 2.0 |
Phorum | Brian Moon | 2017-08-23 | 5.2.23 | PHP | Phorum License 2 |
phpBB | phpBB Ltd. | 2020-01-06 | 3.3.0 | PHP | GPL |
PunBB | PunBB | 2015-10-14 | 1.4.4 | PHP | GPL |
Simple Machines Forum | Simple Machines | 2019-12-30 | 2.0.17 | PHP | BSD License |
Syndie | Anonymous | 2014-08-14 | 1.107b | Java | Open source, multiple licenses |
Thredded | Joel Oliveira, Gleb Mazovetskiy, et al. | 2019-08-17 | 0.16.13 | Ruby | MIT |
Vanilla Forums | Vanilla Forums | 2019-07-09 | 3.1 | PHP | Proprietary/GPL |
vBulletin | vBulletin Solutions Inc. | 2020-01-08 | 5.5.6 | PHP | Proprietary |
XenForo | XenForo Limited, Kier Darby, Mike Sullivan. | 2020-01-27 | 2.1.7 | PHP | Proprietary |
Creator | Latest release date | Current stable version | Programming language | License |
Features
Flat | Threaded | User selectable themes | Unread message tracking | WYSIWYG Editor | Export, portability | Email / NNTP interface | Languages | SSO | |
bbPress | |||||||||
Beehive Forum | |||||||||
Discourse | |||||||||
Discuz! | - | ||||||||
FluxBB | |||||||||
FUDforum | - | ||||||||
Invision Power Board | |||||||||
MyBB | |||||||||
Phorum | |||||||||
phpBB | |||||||||
PunBB | |||||||||
Simple Machines Forum | |||||||||
Thredded | |||||||||
Vanilla Forums | |||||||||
vBulletin | |||||||||
XenForo |
Flat vs. threaded
- A flat forum is one where each message is added onto the end of the discussion, with no set relation to any prior messages. But, there is normally a feature to 'quote' another user's post, to allow referencing back to other posts.
- A threaded forum is one where users can specify their message is a reply to an existing message. Threaded forums can display relationships between message topics and associated replies, such as by indenting replies and placing them below the post they reference. Threaded forums are most commonly used for discussions where individual messages tend to be short, such as on social news sites, or in commenting systems like Disqus.
User-selectable themes
The comparison table shows whether a forum software allows forum administrators to customise the "template" of the forum without altering the released code. Support is considered partial where it is only possible to add CSS rules in this way.
Unread message tracking
Unread message tracking refers to the way that is used by forum software to track and display messages that have not yet been read by the current user. This can be one of the following:- Session — when a user's session starts, this method relies on the user's "last visit time" to display all messages created since that date as unread. Everything that was posted before "last visit time" is considered "read" regardless of whether the user has actually seen it or not. Until the user's session expires, this method properly tracks read/unread messages, starting with messages that were selected as "unread" when the user's session started. This method is broadly used, due to the simplicity and speed benefits of only storing and checking against a single database value.
- Full — forum software which records in the persistent database what messages have been read or unread by each user, regardless of user session expiration. Some forum software also allows the user to 'mark as unread', so that they can come back to a message later.
Export, portability
Software portability is a key assessment criterion for the choice and procurement of software.
[Email]/[NNTP] interface
Whether the software can be used with standard Email or NNTP clients. Adoption of standard protocols is key for interoperability.Languages
Whether the internationalization and localization of the software are sufficient to both allow and actually provide grammatically correct support for the native language of the target users.For the purposes of this table, we consider languages used by a number of installations/users equal to at least 1% of the top million web properties using that software, without major reported bugs in support.
Single sign-on
is often required to enhance web accessibility of the application. This can be accomplished with standards like OAuth and OpenID.Other features
Duplicate thread prevention
Automatic recommendation systems based on content and users can help forum users find existing discussions similar to those they are browsing or on the topic they are searching, or else reach the correct users with their posts, avoiding to "spam" the forum with duplicate or off-topic posts.Many users do not bother to search a forum and directly create new threads to seek an answer to a question. On some forums, when the user types a new thread subject, the forum software brings up similar threads automatically on the side. This helps keep the number of redundant threads to a lower level as users who neglect to search for a topic and are posting a thread may find the answer to their question as they are creating the new thread.
[Forum spam] defenses
Most forums are at risk of continuous attack by forum spammers, largely promoting websites with no relevance to the forum's niche. Systems vary in how they are geared to defense, and checking the offering is an important consideration before selection. A forum cannot succeed unless there is an effective system of defense, and an efficient set of tools for spam removal.CAPTCHAs are a common feature used among most internet forum software and are often used to prevent automated registrations.
Banning or deleting membership should come as standard, with the ability to blacklist the username, email address or IP address for variable time spans.
Reference to an anti-forum spam database can be built into the forum software, or offered as add-ons for specific databases.
User-friendly URLs
Human-friendly forum URLs do not have a query string and instead contain only the path of the topic. A user-unfriendly URL may contain cryptic parameters, numeric IDs, or file type extensions that do not matter to the user and could change if the forum is reimplemented using a different programming language. User-friendly URLs are easy to remember and to type, and may enhance search engine optimization.- user-unfriendly URL example:
http://example.com/forum/index.php?t=rview&th=120029 - user-friendly URL example:
http://example.com/usability-issues/user-friendly-urls
The only non-controversial counter-argument to using user-friendly URLs is that they would be leaked in the HTTP referer header field when a user clicks on an external link from a post, which is undesirable for private forums, since a URL derived from the topic title could convey sensitive information. This issue can be resolved by rewriting external links to point to a redirection page that performs referer hiding.
Data storage
Information about what data storage system can be used.MySQL | PostgreSQL | MSSQL | Oracle | SQLite | Firebird | Flat file | |
bbPress | |||||||
Beehive Forum | |||||||
Discourse | |||||||
Discuz! | |||||||
FluxBB | |||||||
FUDforum | |||||||
Iko | |||||||
Ikonboard | |||||||
Invision Power Board | |||||||
kusaba | |||||||
MyBB | |||||||
Phorum | |||||||
phpBB | |||||||
PunBB | |||||||
Simple Machines Forum | |||||||
Syndie | |||||||
Thredded | |||||||
Vanilla Forums | |||||||
vBulletin | |||||||
XenForo |