Since Fall of 2016, I have helped dozens of communities migrate to Discourse from inferior forums (clearly, I believe that all other forums are inferior!).
Can you migrate my forum?
If you can get a dump of your forum’s database and an archive of the uploaded files, the answer is almost certainly “yes.” There is list of importers that are available here on Github. If you do not see yours listed there, a new one will have to be written. I typically charge $1000-2500 to write a new importer.
If an importer already exists for your legacy forum, I typically charge $500-2000 to import to Discourse for a small to moderate-sized forum. Some variables include how much data you have, how many times I need to run the importer to resolve problems that emerge, and how critical down time is.
You can also search meta for “yourForum #howto”. Here is some of what you will find:
- vBulletin4 (and 3) vBulletin5 has a different importer
- Google Groups
That sounds expensive! Can I do it myself or get it for free?
Sure! Search on meta for “#howto forumName.” There you can find instructions for doing it yourself. If you are not a do-it-yourselfer, pay for a year of Business hosting from Discourse.org ($3600 at time of this writing) and they will do it for you in addition to hosting your site for a year! If you are moving from a common platform and have no complications or special needs either of those could be good options for you.
Another solution is to use crowdfunding to have your community pay for the move. It worked for BlenderArtists.
What do you need in order to make an estimate?
Here are things I need to know to get started:
- Have you read this document so you understand what to expect?
- What forum and version are you moving from?
- How many users and posts are there?
- Has your forum always used the same software, or has it been imported from some other forum to your current one?
- Does your forum have any customizations or special features that you need to have on Discourse?
- Does your forum have more than two levels of categories?
- What is your approximate budget and time frame?
How does it work?
Once we have ironed out the details for your import and you have approved the estimate, typically, it goes like this:
- I get database and attachments
- I run an initial import for approval, sometimes on a subset of data
- You check how things work and point out anything that’s not what you expect
- Repeat previous 2 steps until it looks good
- I get a new database and do the penultimate import
- You approve it
- We schedule a time for the switch
- You notify your users, freeze your forum, and get me the data
- I do the final import
- I give you the backup or restore it to your Discourse instance
For a large forum, a full import can take over a week. The importer skips data that it has already imported, so re-running it with the updated database takes much less time, so your old forum needs to be frozen for less than a day, and with careful planning, less than an hour.
Can my old URLs be 301 redirected?
Yes. I typically charge $150 to configure the script and test for each different type of redirect (e.g., topics, posts, users, categories). If the script does not include support for the desired redirect adding support for it is typically $150-300.
Are Avatars included?
Typically they are. You can look through the source code for your forum, and even if you are not a programmer, you can search for the word “avatar.” If “avatar” does not appear in the source code, you can bet that avatars will not appear in your new forum. Adding avatar support to an importer is typically $150-300.
Are attachments included?
Most import script include attachments. Sometimes a forum will include attachments that are not recognized by the importer. For example, some forums can attach files to a post without mentioning them in the body of the message, the import script identifies attachments by replacing references to them in the message body; when this happens, those un-linked attachments are omitted.
This is an unhappy scenario. I cannot guess before running the script if your data are incompatible, and an additional function is required to identify the un-linked images in the database and modify the corresponding posts to include a reference to each un-linked image. This is typically an unexpected $500 up-charge.
Can Forum Categories be re-organized on import?
Discourse supports only two-levels of categories: category, and sub-category. If your forum has more than two levels of categories, then the script usually moves all of the sub-sub-categories up to the top level. If that is the case for your forum, you have a few options.
The cheapest solution is for you to move things around yourself, either before you give me the database, or after you have the data in Discourse. If you have many categories and topics to move around, however, such a reorganization is a daunting task. If you prefer, I can write code to re-map the categories, and optionally add tags, during the import. For example, you might have a subcategory named “Our Great Application” with sub-subcategories “bugs,” “releases,” and “howtos.” I could re-map the topics in the sub-subcategories to the “…Application” category and, to keep you from losing track of which topics were bugs, add a tag to those topics. (See “It’s Time We Talked about Tags” for discussion.)
Re-mapping categories is typically a $500-1000 charge, and adding tags is typically $500.
What about User Groups and Permissions?
These are sometimes supported, but usually not very well. If groups and permissions are important, we will need to discuss how to proceed. Depending on the complexity, this would be in the range of $500-$1500.
Can you import my custom user fields?
If your forum has custom user fields that Discourse does not have, they can be added. Most importers do not include this feature. Adding it would be an additional $300-500.
Can you merge data from another forum into an existing Discourse?
Usually. It’s probably $500-1500 depending on just how intricate the merge is.
How Do I Restore a Backup?
I usually upload and restore backups to get your system up as quickly as possible. If you prefer to restore the backup yourself, copy it to
and restore it from the admin panel. Before you can restore it you have to enable the “enable restore” system setting. If you like the command line, see this topic.