When embarking on any data migration project, whether it is a Drupal 7 upgrade or a shift from one content management system (CMS) to another, it is essential to start with a strategy.
Migration projects can often run over budget and time due to a lack of strategic planning. Setting a plan that includes overall goals, guidelines, oversight, and space for testing will ensure your data can make a smooth transition whether you are upgrading to the latest version or starting a website redesign. This guide will share steps and best practices for a successful data migration.
Step 1. Audit
A site audit is a complete and detailed investigation of your website and the content it contains. The audit will help you understand and account for all the parts of your website from 10-year-old blogs to the recently created calls-to-action on your home page to old campaign landing pages that no longer have a purpose.
What is audited?
A typical audit includes a list of all URLs, modules, content types, taxonomies, and links.
How do you perform an audit?
An audit can be completed manually for smaller websites, but an audit can be a grueling manual task for larger web presences. Many websites have hundreds or even thousands of pages. To complete an audit on a larger website, there are many tools to help you get started such as Ahrefs, My Site Auditor, and Screaming Frog.
What should the findings include?
Audit information should include:
- List of all content
- Page structure
- Links and errors
- SEO structure
- Website maintenance items such as load speeds
Step 2. Plan
Planning is crucial to a successful and budget-friendly migration. Understanding how your data is currently configured in your website (fields, naming conventions, and file types used) and map that to your new site’s structure.
Once you have your website mapped out, be sure to develop a test strategy that will take place during multiple stages of the migration process. Finding errors in your process early will save your team time, money, and frustration.
If you have useless data (old content, outdated taxonomy, or broken links), it is highly recommended that you evaluate the implications of leaving that data behind. Avoid migrating any broken or out-of-date content. This will make the migration process shorter and lead to a more efficient new website. It will also save your organization resources during the migration process.
Once you have a map and list of content that will be transferred, it is time to make a plan that includes a timeline, testing checkpoints, achievement points, and goals for the migration.
Step 3. Stages
Rome wasn’t built in a day and chances are your website migration will not be completed in a day either. If you have a lot of data, it is wise to break the migration process out into a series of stages. This will help your team stay organized and will also allow for natural stop points where you can test and ensure data is migrated according to plan.
Breaking out the migration process will help your migration project meet timeline goals and will allow leaders to know if the project is running behind quickly to allow for necessary revisions to the plan or timeline.
Step 4. Migrate and Test
Once you have migrated a section of data to your new website (preferably a staging environment), it is time to test the data to ensure everything was migrated successfully. This is your chance to identify any issues before going live or before migrating the rest of your data. Again, there are many tools, such as RightData and QuerySurge, that can assist you in this step. However, there is no substitute for manually using the website and spotting any issues before your visitors do.
If possible, perform the migration more than once to ensure that data is captured. If you cannot migrate over and over due to data dependencies or the fear that deletion would occur with a rollback or re-import, then update in place.
If you are migrating data into Drupal, a module, such as Migrate, can be leveraged to keep you sane during the migration. Modules like this help with mapping and add the ability to revert a migration. It also enables you to migrate data into Drupal from almost any source.
Step 5. Optimize
During large-scale data migrations, it is always possible that performance can be impacted. Often the migration process includes writing code to scrape data and connect it to another source. Mixing code can have unexpected effects that cut into the efficiency of your website.
A small coding mistake can increase processing time, increase CPU usage, disrupt HTML components, and worse. This step is a chance for your developers to review all code on the development server and ensure that everything is optimized. This will limit the impact on user experience once your site goes live.
Step 6. Go Live and Test Again
Once you have migrated, tested, optimized, and tested again, it is time to go live. Theoretically, all the bugs should have been identified in your testing environment, but there is a possibility that something gets overlooked. Once you are live, your team should run another test on your live site to ensure there are no lingering issues.
Data migration is always tricky, but by following these six best practices, your project should stay close to on plan, on budget, and on time. These steps will ensure your visitors are provided a positive user experience on your site, regardless of the migration size and challenges.
Do you have any questions about data migration best practices? Contact us today!