Migrating to Discourse

Migrating your community from one platform to another may seem like a daunting prospect, but it doesn’t have to be. We’ve been migrating communities to Discourse since 2014 and we’ve got it down to an art.

Why should I consider a migration?

Moving your community from one platform to another can be a jarring experience for your members, even when everything goes according to plan. Things look different, and it can take some time to get used to change. Assuring everyone that their old account and all their old content will still be there goes a long way toward smoothing that transition. 😊

What data can we migrate?

That depends on what platform you are migrating from and what data you have access to, but if you have it we can almost certainly migrate it. Most commonly

… and so on.

What’s involved in a migration?

You will need to provide us with two data dumps (ideally the entire database) from your existing platform – one at the beginning of the process and then again at the end. How you get that depends on what that platform is.


Sometimes we may need to go back and forth a few times to get everything perfect. This is normal, and it’s important to take the time necessary to do it carefully because once your Discourse forum is live, it’s harder to fix issues!

(If it isn’t possible to get a proper export of the data, we may be able to perform a migration via the API or a crawl, but this is less reliable and more time intensive.)

Which platforms can you migrate from?

Pretty much any platform that will provide you with an export of the database, but some are easier than others.

A standard migration is from any common platform (e.g. vBulletin or Vanilla) that we have previously migrated from.

A custom migration is from a less common or completely bespoke platform. This may be one that you have written or commissioned yourself, or it may be one of the less common legacy platforms. In this case we need to write a custom script from scratch. It’s totally doable, but it is more work and therefore more expensive. More on pricing and plans soon.

How much does it cost?

On our Business hosting we cover three days of standard migration work with one year of hosting payment upfront. (If you qualify for a non-profit or education discount, the discounted pricing won’t take effect until after that first year is up.)

On our Enterprise hosting three days of custom migration work is covered, with three months of hosting paid upfront (or a commitment to a minimum of one year).

Three days is generally enough to migrate most communities. Extra time is only needed for extremely complex migrations or for communities with millions of users or topics/threads.

If more than three days is required, extra time is charged at our hourly rate of $250. If we can see the database ahead of time, we can estimate how much extra time might be required. If you accept our estimate, we will only charge for actual time worked.

How long does the entire process take?

The actual migration itself only takes a couple of days or so, but the entire process depends on how long the testing/QA stage takes. Ultimately that comes down to how quickly you can get back to us with feedback. For most migrations we recommend that you factor in a couple of weeks from start to finish.

Can you outline the steps from start to finish?
  1. You upload your exported community data to our secure server.
  2. We let you know if the exported data looks OK and provide you with an estimate for extra time over the three days (if needed).
  3. You sign up on your chosen hosting plan, prepay the required amount, and sign our migration terms.
  4. We run the initial migration onto a new Discourse site.
  5. You spend some time looking at the migrated site and provide us with feedback – we provide a handy checklist to help with this process.
  6. We tweak the script and rerun the migration with your added feedback.
  7. Repeat the above 2 steps until you are confident that the data looks good. (Note that this QA process does not count towards your three days of migration.)
  8. Once you are happy with how your Discourse forum is looking we agree on a cutover date and time.
  9. At that time, you put your existing site into read-only mode, grab a new datadump which we use to do an incremental migration (to catch any new content since the first migration).
  10. Do a quick check and then switch DNS to point your URL to your shiny new Discourse community!
Will you sign an NDA before we share our data?

Absolutely. If you choose a standard migration on a Business plan we will send you a copy of our migration terms to sign first. If you choose an Enterprise plan we will ask you to sign our hosting terms first.

We also have a mutual NDA that we are happy to sign if that is a requirement. If there is other paperwork that you require us to sign (like your own NDA) we’ll run it by our lawyer first, but this doesn’t generally pose a problem.

How do we send you the data?

We can provide you with instructions to easily upload it to our secure dedicated site. Once we have received the file, we’ll let you know.

What resources are required of us?

There is no requirement for a technical resource on your side (outside of providing us with a copy of the database). The QA process is extremely important, however. You will need someone (or ideally, a few people) available to check the migrated data against a checklist that we will provide you. This step is crucial. If you don’t check your data carefully for existing spam it will be imported into your new community, potentially opening the door for further bad actors down the line. You’ll also want to ensure that there are no missing images, broken links etc.

Will our users have to create a new account on Discourse?

No. We can migrate across their user details and create an account for them as part of the migration. For security purposes we don’t migrate passwords, so users will be prompted to reset their password the first time they visit the new forum. (Note that if you are using SSO with another platform we can replicate that on Discourse, meaning your members won’t need to reset their password and it should continue to work seamlessly.)

What if we can only get one data dump?

Some vendors will only provide one data dump free of charge. If you don’t have the budget to pay for the second one, get in touch and we’ll talk through your options. At Discourse we believe that you own your data and you can pull a full datadump as frequently as you like (within reason!) at no cost.

If you still have questions once you’ve finished reading, feel free to send an email to us at sales@discourse.org and we’ll talk you through it.