Broken links are one of the most common post-migration issues on WordPress sites. They can affect user experience, reduce search visibility, and make your site look unfinished after a move to a new hosting platform. The good news is that most broken links can be prevented with the right migration checklist, careful URL mapping, and a few post-launch verification steps in your control panel or WordPress admin area.
When migrating a WordPress website, links may break for several reasons: a change in domain name, a new subfolder structure, incorrect database updates, missing redirects, file path changes, or outdated internal links stored in posts, menus, and plugins. If you are using a managed hosting environment or Plesk-based hosting platform, you can minimize these risks by reviewing the site before and after migration and confirming that all URLs resolve correctly.
Why broken links happen after a WordPress migration
Broken links usually appear when the destination URL no longer matches the original URL structure. This may happen even if the migration itself completes successfully.
Common causes of broken links
- Domain changes - the site moves from one domain to another and internal links still point to the old address.
- HTTP to HTTPS transition - links remain hardcoded with
http://instead ofhttps://. - WWW and non-WWW mismatch - content links to a version of the site that is not the canonical one.
- Changed directory structure - the site is moved from a subdirectory or temporary path to the live root.
- Database not fully updated - URLs stored in posts, widgets, page builders, and serialized data are not replaced correctly.
- Missing redirects - old URLs are still indexed, but no 301 redirect sends users to the new destination.
- File and media path issues - images or documents referenced in content are no longer available at the expected path.
In a hosting environment, these issues are often caused by incomplete search-and-replace operations, changes in document root, or inconsistencies between staging and production. If you manage sites in Plesk, checking the domain configuration, SSL certificate status, and WordPress instance path can help you catch problems early.
Plan your migration with URL preservation in mind
The best way to avoid broken links is to treat URL structure as part of the migration plan, not as a post-launch cleanup task. Before moving the website, document the current site structure and decide what should stay the same and what must change.
Pre-migration checklist
- Export a full list of important URLs, including top pages, categories, blog posts, product pages, and landing pages.
- Identify pages that receive organic traffic or backlinks and make sure they are preserved or redirected.
- Check whether the site uses a different canonical domain version, such as
wwwor non-www. - Confirm whether the site will remain in the same directory structure after migration.
- Review plugins that generate links dynamically, such as SEO plugins, page builders, membership systems, and media libraries.
- Back up the database and files before making any changes.
If you are moving to a new hosting platform, it is important to verify whether the target environment uses the same PHP version, permalink configuration, and caching behavior. Differences in environment can affect how URLs are generated or displayed, especially in themes and plugins.
Keep the same domain and path whenever possible
The simplest way to avoid broken links is to keep the existing domain and URL structure unchanged. If the migration only involves moving to a different hosting provider, there is usually no reason to modify URLs at all.
When URL changes are avoidable
- Moving from shared hosting to managed WordPress hosting.
- Changing servers while keeping the same domain name.
- Relocating the site within the same control panel or Plesk account.
- Switching between temporary and production environments while preserving the live URL format.
If the old and new environments use the same domain and the same WordPress install path, internal links should continue to work without changes. In this case, most broken link issues come from hardcoded content or media references rather than the migration itself.
Update WordPress URLs correctly after migration
When a domain or path does change, WordPress must be updated carefully so that links, images, and site settings reflect the new location. This should be done in a controlled way, especially when serialized data is involved.
Important WordPress URL settings
- WordPress Address (URL) - the location of the WordPress core files.
- Site Address (URL) - the public-facing address visitors use.
- Permalink structure - the format used for posts and pages.
- Media URLs - references to uploaded images, PDFs, and other assets.
You can update these values from the WordPress dashboard if the site is accessible after migration. In some cases, you may need to adjust them in the database or through the control panel if the site does not load properly yet. In a Plesk environment, verify that the domain points to the correct hosting subscription and document root before changing any URL settings.
Use a safe search-and-replace process
When replacing old URLs with new ones, avoid manual database edits unless you are certain the data is simple and unencoded. WordPress stores some values in serialized format, and direct text replacement can corrupt them.
- Use a migration tool or plugin that supports serialized search-and-replace.
- Back up the database before running any replacement.
- Test replacements on staging before applying them to production.
- Search for both full URLs and partial paths, such as
http://old-domain.com,https://old-domain.com, and/wp-content/uploads/.
After the replacement, review several pages in the browser and confirm that internal links, buttons, and images load from the correct URL.
Check internal links, menus, and page builder content
Many broken links are hidden inside content areas that are not obvious at first glance. WordPress pages often contain links inside menus, widgets, reusable blocks, custom fields, and visual page builder modules.
Content locations to review
- Navigation menus
- Footer links
- Sidebar widgets
- Buttons and calls to action
- Image links and gallery items
- Elementor, WPBakery, Divi, or similar page builder content
- Custom post types and archive templates
- Forms, popups, and landing page sections
After migration, open a selection of key pages and click through the most important internal links. Focus especially on links that lead to contact pages, checkout pages, category pages, and cornerstone content. These are often high-value pages from both a user and SEO perspective.
Set up redirects for changed URLs
If any URL changes are unavoidable, implement 301 redirects from the old locations to the new ones. Redirects preserve user access and help search engines transfer value from the previous URL structure.
Best practices for redirects
- Redirect each changed page to the most relevant equivalent page.
- Avoid redirecting everything to the homepage unless there is no better match.
- Use 301 redirects for permanent changes.
- Make sure redirect chains are not created.
- Keep redirects active for as long as the old URLs receive traffic or backlinks.
You can configure redirects at the web server level, through the hosting control panel, or with a WordPress plugin, depending on your hosting setup. In a managed hosting or Plesk environment, server-level redirects are often the cleanest option because they are processed before WordPress loads.
Examples of useful redirect rules
- Old domain to new domain
- HTTP to HTTPS
- Non-WWW to WWW or vice versa
- Old subdirectory to new root location
- Deleted pages to relevant replacement content
Always test redirects after creating them. A redirect that sends users to the wrong page can be just as harmful as a broken link.
Verify media files and asset paths
Broken links are not limited to text links. Images, PDFs, CSS files, JavaScript assets, and downloadable documents can also fail after migration if paths change or files are not transferred correctly.
What to confirm for media and assets
- The
wp-content/uploadsdirectory was copied completely. - Image references in posts and pages still point to valid files.
- PDFs and documents linked from buttons or text still exist.
- Custom theme assets are available in the new environment.
- CDN URLs, if used, are still configured correctly.
If a file path is missing, WordPress may show a broken image icon or a 404 error. This is especially common when migrating between staging and production or when the site was originally built with mixed absolute and relative paths.
Use the hosting control panel to confirm site health
A control panel such as Plesk can help you identify issues that may contribute to broken links after migration. Even if the site appears to work, the hosting configuration may still contain mismatches that later cause errors.
What to check in Plesk or similar hosting panels
- Domain document root
- SSL certificate installation
- Preferred domain version and redirects
- PHP version and handler
- File permissions for WordPress files and uploads
- Error logs and access logs
- Cache or optimization settings
If your hosting platform offers a WordPress toolkit, use it to scan for common issues, check installation paths, and confirm that the correct instance is attached to the active domain. A misconfigured document root can make it look like links are broken when the real issue is that the site is serving from the wrong folder.
Scan the site for broken links after launch
After migration, run a full broken link audit. This should be done on the live site once DNS is pointing to the new host and the final version is accessible.
Useful verification methods
- Click through the homepage, main navigation, and footer links manually.
- Use a broken link checker tool to scan internal and external links.
- Review the browser developer console for missing files or 404 responses.
- Check the server access and error logs for repeated 404 requests.
- Test important pages in incognito mode to reduce cache-related false positives.
Focus on links that matter most for usability and SEO: top navigation, category pages, service pages, contact forms, and high-traffic blog posts. A site-wide scan can take time, but it is much faster than recovering from indexing issues later.
Pay special attention to external links and backlinks
External links from other websites and search engines are often overlooked during migration. If your old URLs change, those backlinks may begin to fail unless redirects are in place.
How to protect link equity
- Map all important old URLs to the best new destination.
- Maintain redirects for pages with strong backlink profiles.
- Update your sitemap and submit it to search engines after migration.
- Request link updates from partners or sites that control high-value backlinks, when practical.
If you change domain names, search engines will need time to recrawl and process the redirect structure. Keeping the redirect rules stable and consistent helps preserve traffic and reduces the chance of users landing on broken pages.
Test the site before switching DNS
One of the safest ways to avoid broken links is to test the migrated site on a temporary URL or staging domain before the live domain is switched. This gives you time to identify path issues, redirect gaps, and content problems without affecting visitors.
What to validate on staging
- Page navigation and menus
- Forms and confirmation pages
- Image and file links
- Permalinks and category archives
- HTTPS behavior and redirect logic
- Mobile navigation and responsive layouts
In many hosting setups, staging environments are isolated copies of the live site. They are ideal for testing search-and-replace operations and checking whether links resolve correctly before the final migration is published.
Common mistakes that create broken links
Even experienced site owners can introduce broken links during migration by making a few avoidable mistakes.
Frequent migration errors
- Forgetting to replace old domain references inside the database.
- Changing the site URL but not the WordPress address.
- Uploading files to the wrong directory on the new server.
- Using relative paths inconsistently in custom theme files.
- Installing SSL without updating hardcoded HTTP links.
- Removing the old site before redirects are verified.
- Skipping a final crawl after the migration is complete.
Most of these issues are preventable with a structured checklist and a test environment. The earlier you validate links, the easier it is to correct the underlying problem without affecting search rankings or user trust.
Recommended post-migration workflow
A simple post-migration workflow can reduce the risk of broken links significantly. Use it as a repeatable process for every WordPress site you move.
- Confirm the domain points to the new hosting account.
- Verify SSL and enforce the correct preferred domain version.
- Check WordPress Address and Site Address settings.
- Run a serialized search-and-replace if URLs changed.
- Review menus, widgets, and page builder content.
- Test image, PDF, and download links.
- Set up and validate 301 redirects for changed URLs.
- Run a broken link scan on the live site.
- Inspect logs for 404 errors and unresolved requests.
- Update XML sitemaps and resubmit them to search engines.
This workflow is especially useful for agencies, developers, and hosting teams managing multiple WordPress migrations in a control panel environment.
FAQ
Why do links work in the WordPress dashboard but break on the live site?
This often happens when the database has not been fully updated, the site is using the wrong domain version, or redirects are not configured correctly. It can also occur if cached content is showing outdated URLs.
Should I use a plugin to fix broken links after migration?
A plugin can help with scanning and search-and-replace tasks, but it should be used carefully. For complex migrations, especially those involving serialized data, use a tool that is designed for safe URL replacement. Always back up before making changes.
Is it enough to change the home URL in WordPress settings?
No. Changing only the home URL may fix the front end partially, but internal links, media URLs, and database-stored references may still point to the old location. A full review is usually required.
What is the safest way to handle a domain change during migration?
Update WordPress URLs, configure 301 redirects from old URLs to new ones, preserve the most important page slugs when possible, and test the full site on staging before going live.
How do I know if a broken link is caused by hosting or WordPress?
If the URL resolves to a 404 because the file or page is missing, the issue may be content or redirect related. If the site loads from the wrong folder, has SSL problems, or serves unexpected pages, the hosting configuration may be the cause. Checking server logs and the control panel usually helps identify the source.
Do I need to keep old redirects forever?
For important pages, keep redirects as long as they receive traffic, backlinks, or search visibility. Removing redirects too early can create broken links later and may harm SEO performance.
Conclusion
A successful WordPress migration is not just about copying files and databases. To avoid broken links, you need to protect the site’s URL structure, update WordPress settings correctly, preserve important paths, and test everything after launch. In a hosting or Plesk-based environment, the control panel can help you verify domain mapping, SSL, document roots, and redirects so that the new site behaves exactly as expected.
If you follow a migration checklist, use safe search-and-replace methods, and validate internal and external links before and after the move, you can keep your WordPress site accessible, reliable, and search-friendly throughout the migration process.