full site migration

Migrate Your Site Like a Pro: A Comprehensive Guide

Why a Full Site Migration Matters for Your Business

A full site migration is the process of moving your entire website—including all its files, databases, and settings—to a new environment. This is a significant undertaking that could involve changing your domain name, switching to a new hosting provider, overhauling your URL structure, or upgrading the underlying platform (like your Content Management System). While it is a highly technical process, it’s often a necessary and strategic step for businesses looking to evolve and grow. A successful migration can unlock better performance, improved security, a successful rebrand, or the stability of a more reliable host.

Common reasons for a full site migration include:

  • Moving to a Faster Host: Slow load times are a primary driver for migration. A faster host can significantly improve user experience, reduce bounce rates, and positively impact SEO rankings. This involves moving from an underpowered shared server to a more robust solution like a VPS, dedicated server, or managed WordPress host.
  • Switching to HTTPS: Security is non-negotiable. Migrating from HTTP to HTTPS encrypts data between your site and its visitors, which builds trust, protects sensitive information, and is a confirmed Google ranking factor.
  • Rebranding with a New Domain: A business rebrand often requires a new domain name. A site migration is the technical process that makes this change possible, ensuring all traffic and SEO authority from the old domain are transferred to the new one.
  • Upgrading Your CMS or Platform: Moving from an outdated or unsupported CMS to a modern platform like WordPress, or upgrading to a new major version, requires a full migration to ensure compatibility and access to new features.

Think of it like moving a physical business to a new, better location—everything from the inventory to the signage must be carefully packed, moved, and set up again to avoid disruption. For a website, the stakes are even higher. A poorly executed migration can lead to catastrophic outcomes, including damaged search rankings, lost customer trust, and a direct negative impact on revenue. The risks are real: research shows over a third of sites see significant traffic drops after migration, and some never fully recover their previous search visibility.

However, these risks are manageable. With meticulous planning and expert execution, a migration can be a smooth transition that leads to tangible improvements in performance, security, and search engine rankings. The key is following a proven, systematic process that minimizes risk while maximizing benefits like faster load times, a stronger security posture, and more scalable hosting infrastructure.

Key steps in a full site migration include:

  1. Planning: Define clear goals, create a detailed timeline, and choose a new host or platform.
  2. Backup: Create a complete, off-site backup of all website files and database content.
  3. Transfer: Move the backed-up files and database to the new environment.
  4. Configure: Update critical settings, DNS records, and database connections.
  5. Redirect: Implement permanent 301 redirects to preserve SEO rankings and user experience.
  6. Test: Rigorously check all functionality, look for broken links, and analyze performance.
  7. Monitor: Track traffic, keyword rankings, and server errors closely post-launch.

I’m Kevin Gallagher, and over the past fifteen years, I’ve managed hundreds of full site migrations for businesses of all sizes. Through wpOncall, my team and I have developed a systematic approach that protects your SEO, preserves your data, and ensures your site comes back online stronger than before.

Find more about full site migration:

Planning Your Migration: The Pre-Launch Blueprint

checklist on a clipboard - full site migration

The most critical phase of any full site migration is meticulous planning. A rushed or incomplete plan is the number one cause of migration failure. This strategic blueprint is essential to minimize risks, align teams, and ensure a successful outcome. We start by defining clear, measurable objectives. Are we aiming to improve Core Web Vitals scores by 20%? Are we rebranding to target a new market segment? These goals shape the entire strategy.

We also involve all key stakeholders from the very beginning. This includes:

  • SEO Team: To provide baseline ranking data, identify high-value pages, and guide the redirection strategy.
  • Content Team: To audit existing content and plan for any necessary updates or archiving.
  • Design/UX Team: To ensure the brand identity and user experience are maintained or improved on the new site.
  • Development Team: To assess the technical requirements and challenges of the new environment.
  • Project Management: To coordinate all moving parts and keep the project on schedule.

Budgeting and timeline are established early on. A simple migration of a small blog might cost under $15,000, but complex e-commerce sites with extensive customer data and custom functionality can be significantly more. The planning phase itself can take several weeks or even months for a large site, while the actual data transfer may only take a few hours during a carefully chosen low-traffic window. Choosing the right hosting provider is another cornerstone of the plan. We evaluate potential hosts based on security protocols, guaranteed speed and uptime, storage capacity, quality of technical support, and scalability for future growth. For WordPress sites, we ensure the new host meets all technical requirements, including the correct PHP and MySQL versions, memory limits, and server modules.

Understanding the Risks of a Full Site Migration

While the benefits are exciting, it’s crucial to have a clear-eyed view of the risks. The primary concern for most businesses is a potential negative impact on SEO. A temporary dip in organic traffic and rankings is common, as search engines need time to crawl, index, and understand the changes. For major domain migrations, this recovery period can take six to twelve months. Common culprits for severe SEO setbacks include poorly configured or missing redirects, an increase in 404 errors (broken links), lost or altered content, and indexing delays caused by misconfigured robots.txt files. Beyond SEO, data loss and extended downtime are significant risks that can erode user trust and directly impact business continuity. We always plan for a potential rollback to the old site if critical, show-stopping issues arise post-launch, ensuring we don’t push forward with a broken website.

Creating Your Pre-Migration Checklist

To manage these risks, we use a comprehensive pre-migration checklist that leaves nothing to chance:

  1. Audit Current Site: We use tools like Screaming Frog and Google Search Console to generate a complete list of all URLs. This crawl data helps us identify redirect chains, broken links, and orphan pages. We also perform a content audit to decide which pages to keep, update, or remove, preventing the migration of low-quality or outdated content.
  2. URL Mapping: We create a detailed spreadsheet mapping every old URL to its corresponding new URL. This document is the bible for our redirection strategy and is critical for preserving link equity.
  3. Backup Strategy: Before making any changes, we perform a complete off-site backup of all website files and the database. This is our safety net.
  4. Disable Caching and Firewall Plugins: We temporarily deactivate these on the old site just before the migration to prevent them from interfering with the file and database transfer process.
  5. Delete Unused Themes and Plugins: We clean up the WordPress installation by removing inactive themes and plugins to reduce the size of the backup, minimize security vulnerabilities, and prevent potential conflicts on the new server.
  6. Record DNS Settings: We take a screenshot and document current DNS configurations (A, CNAME, MX records) to ensure a smooth update later and to have a reference for the rollback plan.
  7. Verify New Host Compatibility: We double-check that the new hosting environment meets all of WordPress’s technical requirements and has any necessary server-side software installed.
  8. Content Freeze: We implement a “content freeze” 24-48 hours before migration, halting any new content updates on the old site to prevent data loss during the transfer.
  9. Enable Maintenance Mode: Just before the transfer begins, we put up a maintenance page on the old site to prevent users from seeing a broken site and to inform them of the ongoing work.
  10. Record Email Configurations: If email is tied to the old host, we record all settings (server addresses, ports, user accounts) to plan for a separate, parallel email migration process.

The Manual WordPress Migration: A Step-by-Step Walkthrough

cPanel dashboard highlighting the phpMyAdmin icon - full site migration

While migration plugins offer convenience, a manual full site migration provides complete control and transparency, which is ideal for complex, large, or mission-critical websites. This approach is more technical and requires comfort with tools like a File Transfer Protocol (FTP) client and a database management tool like phpMyAdmin. However, it eliminates reliance on third-party code and offers granular control over the entire process, making it the preferred method for experienced developers.

Step 1: Backing Up Your Website Files and Database

This is your digital insurance policy, the most critical step before any changes are made. We create a complete and isolated copy of your site.

  1. Back Up Files with FTP: Using an FTP client like FileZilla, we connect to your old server’s file system. We then download all WordPress core files and folders to a secure location on a local computer. The wp-content folder is especially important, as it contains your themes, plugins, and the uploads directory, which holds all your media files like images and documents. File Transfer Protocol (FTP) is a standard, reliable method for moving files between computers over a network.

  2. Export the Database: Your site’s content—posts, pages, user data, and settings—is stored in a MySQL database. We access this through phpMyAdmin, a graphical interface typically found in your hosting control panel like cPanel. Inside phpMyAdmin, we select your WordPress database, click the “Export” tab, choose the “Quick” method for a full backup, and download the database as a .sql file. For very large databases that might time out in a web interface, we use a command-line tool like mysqldump via SSH for a more robust export.

Step 2: Setting Up the New Environment

Next, we prepare the new, empty home for your site on the destination server.

  1. Create a New Database: In your new host’s control panel, we navigate to the MySQL Databases section and create a new, empty database. We give it a descriptive name for easy identification.
  2. Create a Database User: We create a new database user with a strong, unique password. This user will be the only one with access to the new site’s database.
  3. Assign Privileges: We assign the newly created user to the new database and grant it “ALL PRIVILEGES.” This is essential, as WordPress needs full permission to read, write, modify, and delete data within its database tables to function correctly.
  4. Record Credentials: We carefully note the new database name, username, password, and database host (which is usually localhost but can sometimes be a specific IP or subdomain).

Step 3: Uploading and Configuring Your Site

Now we move your site’s components to their new home and connect them.

  1. Edit the wp-config.php File: On our local computer, we find the wp-config.php file within the downloaded site files. We open it in a text editor and update the database connection details with the new credentials recorded in the previous step. This file tells WordPress how to connect to your new database.

    define('DB_NAME', 'your_new_database_name');
    define('DB_USER', 'your_new_database_user');
    define('DB_PASSWORD', 'your_new_database_password');
    define('DB_HOST', 'your_new_database_host');
    
  2. Upload Site Files: Using FTP, we connect to the new server and upload all your WordPress files, including the modified wp-config.php, to the root directory (often public_html or www).

  3. Import the Database: In the new host’s phpMyAdmin, we select the new database, click the “Import” tab, and upload the .sql file we exported earlier. If the domain name is changing, this is a critical juncture. We must run a search-and-replace on the database to update all instances of the old domain to the new one. It is vital to use a serialization-aware tool for this, such as the WP-CLI search-replace command or a reliable plugin, to avoid corrupting serialized data arrays used by themes and plugins.

The SEO-Safe Full Site Migration: Protecting Your Rankings

Google Search Console 'Change of Address' tool interface - full site migration

A full site migration must prioritize the preservation of your hard-earned search engine optimization (SEO) value. The primary goal is to minimize any negative impact on rankings and organic traffic by ensuring search engines understand the move completely. While a temporary dip in visibility is common as search engines process the changes, a well-planned migration can shorten this recovery period and ultimately strengthen your online visibility by moving to a better-performing platform. The core of this process is passing “link equity” from your old URLs to your new ones through proper, permanent redirects.

Implementing Redirects and Updating URLs

Redirects are the signposts that guide users and search engine bots from old, indexed URLs to their new locations. They are the single most important factor in preventing broken links and preserving SEO value.

  1. Map Old URLs to New URLs: Using the comprehensive URL list from your pre-migration audit, we create a spreadsheet that meticulously maps every old URL to its new equivalent. We pay special attention to high-traffic pages, pages with many backlinks, and revenue-generating pages.
  2. Implement Server-Side Redirects: We use permanent 301 redirects, which Google recommends for passing the most link equity. On Apache servers, this is done by editing the .htaccess file. For example, a one-to-one redirect looks like this:
    Redirect 301 /old-page.html https://www.newdomain.com/new-page/
    On NGINX servers, similar rules are added to the .conf file. We test these redirects thoroughly and work to eliminate redirect chains (e.g., Page A -> Page B -> Page C), which slow down your site and can dilute link equity.
  3. Update Internal Links: After the migration, we run a serialization-aware search-and-replace on the database to update all internal links. This ensures that links within your content point directly to the new URLs, avoiding unnecessary redirect hops that slow down the user experience and add load for crawlers.
  4. Update Canonical Tags: We verify that all canonical tags on the new site point to the correct, final version of the URL. This prevents duplicate content issues, especially if parameters are used in URLs.
  5. Redirect Image URLs: To preserve valuable traffic from image search, Google recommends redirecting old image URLs to new ones. This is often handled with a wildcard redirect rule.

Proactively Managing Your SEO Signals

Beyond redirects, we take several steps to communicate the move to search engines and the wider web.

  1. Update sitemap.xml: We generate a new XML sitemap containing only the new, canonical URLs and submit it to Google Search Console and Bing Webmaster Tools. We also remove the old sitemap.
  2. Update robots.txt: We create a new robots.txt file for the new site, ensuring it allows crawlers to access all important pages and resources. The old site’s robots.txt should remain unchanged initially to allow crawlers to see the 301 redirects.
  3. Use the Change of Address tool in GSC: For domain changes, this tool is essential. We use it in the old site’s GSC property to formally tell Google that the site has moved. This is a powerful signal that helps Google transfer search signals more quickly and smoothly.
  4. Update High-Value Backlinks: While 301 redirects pass most link equity, a direct link is always better. We identify your most authoritative backlinks and conduct outreach to the site owners, requesting that they update their links to point directly to your new domain. This is a proactive step that can accelerate SEO recovery.
  5. Update External Profiles: We update the website link on all external profiles, including social media (Facebook, LinkedIn, Twitter), business directories (Google Business Profile), and any other platform that links to your site.

Post-Migration: Your Launch Day and Beyond Checklist

Launch day is not the finish line; it’s the starting line for the next phase. The period immediately following a full site migration requires intense monitoring and testing to catch and resolve issues before they affect users or search rankings. On go-live day, we remove any temporary blocks (like maintenance mode) and update your DNS records to point your domain to the new server. DNS propagation, the process of these changes spreading across the internet, can take anywhere from a few minutes to 72 hours. During any unavoidable downtime, we ensure the server is configured to return a 503 “Service Unavailable” header, which correctly informs search engines that the outage is temporary and they should check back later.

Final Technical Checks and DNS Configuration

Immediately after the DNS update begins to propagate, we run through a final, critical technical checklist on the live environment.

  1. Change DNS Settings: We update your domain’s A or CNAME record to point to the new server’s IP address or hostname. An A record points a domain to an IP address, while a CNAME record points it to another hostname. We recommend lowering the DNS record’s Time-to-Live (TTL) value—the time servers cache the record—from 24 hours to 5 minutes a day or two before migrating. This ensures the change propagates much faster.
  2. Check for Broken Links: We run a full site crawl using a tool like Screaming Frog to find and fix any 404 errors or unexpected redirect chains that were missed in staging.
  3. Test Core Functionality: We thoroughly test all interactive elements. This includes submitting contact forms, testing the site search, completing a checkout process in an e-commerce store, and testing user login/registration.
  4. Verify SSL Certificate: We confirm the SSL certificate is correctly installed and that the entire site loads securely over HTTPS. We also scan for “mixed content” issues, where insecure HTTP resources (images, scripts) are loaded on secure HTTPS pages, which can cause browser security warnings.
  5. Migrate Email Accounts: If email was tied to your old host, we ensure accounts are successfully migrated and configured on the new server or email provider, and we test that sending and receiving works correctly.

Essential Checks After a Full Site Migration

Post-migration monitoring is about vigilance and rapid response. For weeks and even months after launch, we keep a close eye on key metrics.

  1. Audit the New Site: We perform another comprehensive audit on the live site to catch any errors that may have appeared after going live.
  2. Crawl for Errors: We regularly crawl the site to check for incorrect redirects, broken links, canonical tag issues, and other technical SEO problems.
  3. Monitor 404 Errors: We continuously watch Google Search Console’s “Not Found (404)” report and server logs for 404 errors. We then fix them by implementing the appropriate 301 redirects for any valuable URLs that were missed.
  4. Review Server Logs: Server logs provide direct, unfiltered insight into how search engine bots are crawling the new site. We look for increased 404s, crawl anomalies, or signs that bots are struggling to access content.
  5. Set Up Analytics: We ensure Google Analytics (GA4) and Google Tag Manager are correctly installed and tracking data accurately. We compare post-migration traffic data to pre-migration benchmarks to monitor for significant drops.
  6. Test Performance and Core Web Vitals: We use tools like Google’s PageSpeed Insights to analyze site speed and monitor Core Web Vitals (LCP, INP, CLS). A key goal of many migrations is to improve these metrics, so we track them closely.
  7. Check Structured Data: We use the Rich Results Test to ensure that any schema markup or structured data (for reviews, products, events, etc.) has been migrated correctly and is still valid.

Frequently Asked Questions about Website Migration

We understand that a full site migration can be a complex and intimidating process that raises many questions. Here, we address some of the most common concerns our clients have, providing clear and straightforward answers.

How long does a full site migration typically take?

The duration varies significantly based on the site’s size and complexity. The technical transfer itself might take 1-4 hours for a small blog or an entire day for a large e-commerce site with gigabytes of data. Beyond the transfer, DNS propagation—the time it takes for the internet’s servers to see your new site location—can take up to 72 hours, though it’s often much faster. The entire project, from initial planning and auditing to full SEO recovery and stabilization, is a much longer process. This can span several weeks for a simple hosting change or even six to twelve months for complex domain changes where search engines need time to fully process the move and re-evaluate rankings.

Will migrating my website hurt my SEO?

A temporary dip in organic traffic and keyword rankings is possible, and even common, while search engines process the changes. However, a professionally managed migration is designed to minimize this risk and shorten the recovery period. By meticulously implementing permanent 301 redirects, creating a new sitemap, updating internal links, and formally notifying search engines via their webmaster tools, we protect your rankings and ensure link equity is passed to the new URLs. In the long term, migrating to a faster, more secure, and mobile-friendly host often leads to significant and lasting SEO improvements.

What’s the difference between a manual migration and using a plugin?

  • Manual Migration: This involves manually moving the site’s files (via FTP) and database (via phpMyAdmin or command line). It offers maximum control, is independent of third-party software, and is the best method for large, complex, or highly customized sites. However, it is more technical, time-consuming, and has a higher risk of human error if not performed by an expert.
  • Plugin Migration: This uses a WordPress plugin to bundle the site into a package and move it. It’s generally faster, easier, and more accessible for users with less technical expertise. It’s a great option for smaller, standard WordPress sites. The downsides can include plugin costs, potential compatibility issues with the server, and file size limitations that make them unsuitable for very large sites.

How do I choose a new hosting provider?

Choosing the right host is critical for your site’s future performance and security. Key factors to consider include:

  • Type of Hosting: Shared hosting is cheap but has limited resources. A Virtual Private Server (VPS) offers more power and control. Dedicated servers provide exclusive resources for very high-traffic sites. Managed WordPress hosting handles all the technical maintenance, security, and updates for you.
  • Performance: Look for hosts that use modern technology like SSD storage, NGINX servers, and server-side caching.
  • Security: Features like a Web Application Firewall (WAF), free SSL certificates, and regular malware scanning are essential.
  • Support: Check for 24/7 expert support, especially for WordPress-specific issues.
  • Scalability: Ensure the host offers an easy upgrade path as your site grows.

What are the most common migration errors?

  1. Error Establishing a Database Connection: This classic WordPress error almost always means the database credentials in your wp-config.php file are incorrect. Double-check that the DB_NAME, DB_USER, DB_PASSWORD, and DB_HOST values match the new database you created.
  2. 500 Internal Server Error: This is a generic server error. Common causes include a corrupted .htaccess file, incorrect file permissions (folders should be 755, files 644), or exhausting the PHP memory limit on the new server.
  3. Broken Images and Links (404s): This usually happens when hardcoded URLs in the database still point to the old domain or file path. The fix is to run a serialization-aware search-and-replace on the database to update all old URLs to the new ones.
  4. Mixed Content Warnings: This occurs when you’ve migrated to HTTPS, but some resources (images, CSS, or JavaScript files) are still being loaded over insecure HTTP. This also requires a database search-and-replace to ensure all internal URLs use HTTPS.
  5. Plugin or Theme Conflicts: A plugin or theme that worked on the old server may be incompatible with the new server’s environment (e.g., a newer PHP version). The fix is to deactivate all plugins and switch to a default theme, then reactivate them one by one to identify the culprit.

Conclusion: Ensuring a Smooth Transition

A full site migration is a complex and high-stakes endeavor, but it doesn’t have to be a nightmare. With the right strategy and a meticulous approach, it becomes a powerful strategic opportunity to enhance your digital presence. Our experience managing hundreds of migrations has shown us that success consistently hinges on a few key takeaways:

  • Meticulous Planning is Paramount: The more detailed your pre-migration strategy, the smoother your transition will be. This means comprehensive site audits, clear goal setting, stakeholder alignment, and a robust backup and rollback plan.
  • Thorough Testing is Non-Negotiable: Testing at every stage—before, during, and especially after the migration—is the only way to identify and fix issues before they impact your audience, revenue, or search visibility.
  • SEO Preservation is a Core Principle: Every decision, from URL mapping and 301 redirects to sitemap submission and backlink outreach, must be made with SEO at the forefront to minimize risk and capitalize on the potential gains of the new platform.
  • A Structured Process Minimizes Risk: Following a proven, step-by-step approach for the technical transfer, DNS changes, and post-launch monitoring reduces the likelihood of critical errors and provides a clear, predictable path forward.

By embracing these principles, a daunting technical task is transformed into a strategic investment in your website’s future. A well-executed full site migration can lead to dramatically improved performance, a more secure environment for your users, and ultimately, greater and more sustainable online success.

For a seamless and secure WordPress migration, trust the experts at wpOncall to handle the complexities for you.