In this talk, I will concentrate on a particular migration type, switching content management systems — as this specific type has its own challenges. I will show you what you need to know before moving to another CMS, what issues you will face, and the exact steps to overcome these issues.
A Guide to Properly Migrating a CMS: The Rainbow Edition
1. @techseowomen marketingsyrup.com
• I started in SEO about 10 years ago (when directory submission was still a thing)
• I’ve worked on agency side and in-house
• I went freelance last August
• Founder of MarketingSyrup
CMS Migration Guide:
The RAINBOW Edition
eCommerce & Technical SEO
Consultant
5. @azarchick | @techseowomenKristina Azarenko marketingsyrup.com
Technology used
(e.g. CMS,
frameworks)
Many details to check
before, during and
after the migration
Cross-team
communication
and coordination
1. 2. 3.
6. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
Types of migrations include:
• Moving from HTTP to HTTPS
• Moving from a subdomain to subfolder or vice versa
• Moving from one domain to another
• Moving from one content management system to a different system
7. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
Moving from one content management
system to a different CMS
Today I’ll talk about:
9. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
• More flexibility to account for the business growth
• To be less dependable on the 3rd party CMS
management services
Possible Reasons
to Switch a CMS
13. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
Inability to Keep the Old URLs
Structure
• Example: in Magento, there’s no /products/ path in the
product URL by default. So if your current product URLs
don’t include it, you will need to use some customization or
extension to achieve that.
14. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
Different Templates or Rules for
Generating Meta Tags and H1 Tags
• Example: HubSpot doesn’t allow having different H1
and title tags on a page (though they seem to be in the
process of changing it).
15. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
Different Approach to the Service
Files (robots.txt, XML sitemap)
• Example: Shopify does not allow editing the
robots.txt and XML sitemap. So if you are migrating
to it, you should account for that.
16. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
Structured Data
• Example: If you are migrating from WordPress where
you use plugins to add structured data, find similar
plugins that will work for your target CMS.
18. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
Analytics & Other Tracking Codes
• Pro tip: Tracking codes are often overlooked.
Before the migration starts, you should make a
list of all the tracking codes and customizations
to transfer them to the new CMS.
19. @azarchick | @techseowomenKristina Azarenko marketingsyrup.com
Bridging the Gap:
RAINBOW Steps to Make
a CMS Migration
as Seamless as Possible
29. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
R. Run a Crawl: Why
• Understand the scope
• Find any technical issues which should not be
transferred to the new CMS
• Save all the raw data for future references
30. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
R. Run a Crawl: What
• Crawl data
• Google Search Console pages
• Google Analytics pages
• Your XML sitemap(s)
31. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
The outcome of the R step:
• You have a comprehensive list of all website
URLs.
• You have a list of the technical SEO issues you
want to fix during the migration to another
CMS.
• A backup of the current website.
33. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
A. Analyze CMS Features: Why
• To find the gaps: translate the
features of your current
CMS into the features of
the new CMS.
• To take control over the important
features
34. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
A. Analyze CMS Features: What
• URL Structure
• Meta Information
• Website Architecture
• Canonical Tags
• Meta-robots Directives
• Robots.txt
• XML Sitemap
• Structured data
• Hreflang
• Any important custom features
36. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
The outcome of the A step:
• A list of the most important SEO features
and ideally an indication of whether each
feature is available in the new CMS. The
more you know at this point, the better.
38. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
I. Indicate the URLs to Redirect: Why
• We want to preserve all the
signals the old URLs have
acquired
• To account for all the changes in
the URLs and map them together
40. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
The outcome of the I step:
• A map of all the URLs with an
indication of the action.
• A redirect map for developers.
41. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
The N Step:
Note Down User Stories
and Acceptance Criteria
42. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
N. Note Down User Stories and Acceptance
Criteria: Why
• Communicate your requirements and
recommendations properly
• Overcommunicate your requirements
and recommendations
43. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
N. Note Down User Stories and Acceptance
Criteria: What
As a {type of user} I want {outcome} so
that {the reason}
44. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
N. Note Down User Stories and Acceptance
Criteria: What
For example:
As an SEO, I want product URLs to be the same even
if users go to the product page from different categories
so that we don't have duplicate product pages.
45. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
The outcome of the N step:
• You have user stories and acceptance
criteria for each user story ready to be
uploaded to the task management
system (e.g. JIRA)
47. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
B. Become an Investigator: What
• To test UAT or staging environment
against your defined user stories and
acceptance criteria
• To catch all the SEO issues before the
website goes live on the new CMS
48. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
The outcome of the B step:
• There will most likely be a few
rounds of testing as after each issue
is fixed, you will need to re-test it.
Once it is completed, the test
website should be ready to go live.
50. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
O. Once It is Done: Why
• To quickly spot ANY issues
• To timely resolve them before
they cause any visibility and
traffic decrease
51. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
O. Once It is Done: What
• The redirects
https://www.screamingfrog.co.uk/audit-redirects/
52. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
O. Once It is Done: What
• Robots.txt
• Meta robots
• Tracking codes
• Make an annotation in Google Analytics
53. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
O. Once It is Done: What
https://www.gsqi.com/
marketing-blog/immediate-seo-
checks-cms-migration/
54. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
The outcome of the O step:
• You are sure that all the
information was transferred
correctly, and the website on the
new CMS is ‘SEO healthy’
56. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
W. When It is Over, It Is Not Over: Why
• To spot any traffic decrease
• It just takes time to re-
evaluate all the signals
58. Kristina Azarenko @azarchick | @techseowomen marketingsyrup.com
The outcome of the W step:
• Peace of mind.
• Post-migration fixes are done if
any issues are discovered.