Website migration
Website migration: moving your site to a new host safely
The short answer
Changing hosts is where sites quietly lose email, SSL and rankings. We copy, test and only then switch, so those risks are checked before the move instead of after it.
- Backup before every change
- Fixed price before we start
- Remote, anywhere in the world
- Free first diagnosis
The files are the easy part. What goes wrong is everything around them: DNS records that take hours to spread, a site address stored inside the database, mailboxes that live with the old host, a certificate that cannot be issued before the domain points to the new server. A migration is mostly a checklist for those things, plus a tested copy so you see the result before your visitors do.
Sound familiar?
When a website migration makes sense
- Your hosting contract ends, the price goes up or your host stops supporting your package
- The site has outgrown shared hosting and needs a VPS or a faster server
- You are moving to a new domain name or merging several sites
- The server or PHP version is so old that the site cannot be updated safely where it is
- A previous attempt to move the site failed, or left email, SSL or links broken
Causes
What can go wrong in a website migration
DNS and TTL timing
DNS changes do not reach everyone at once. With a long TTL, some visitors keep reaching the old server for hours, and orders or forms sent there can be lost if the old site is already gone.
URLs and paths in the database
WordPress and many other systems store the full site address in the database, often inside serialized data. A plain find and replace breaks that data, so a serialization-aware search and replace is needed.
Email stops when DNS moves
If the MX, SPF, DKIM and DMARC records are not copied to the new DNS, or the mailboxes lived with the old host, email silently stops arriving or starts landing in spam.
SSL certificate not ready
A certificate can usually only be issued once the domain points to the new server. Without a plan, visitors see a security warning or a redirect loop right after the switch.
Server and PHP differences
Hard-coded paths, another PHP version, missing PHP extensions, different file permissions, cron jobs or .htaccess rules that nginx ignores can break parts of the site on the new server.
Missing redirects and SEO loss
When URLs or the domain change without 301 redirects, old links and search results lead to 404 pages. Forgotten canonical tags, sitemaps or a leftover noindex setting can also cost traffic.
Try it yourself
Preparing a website migration yourself
Planning the move yourself? These steps prevent most of the problems we see.
- 1 Make a full backup of the files and database and download it to a place outside the old host.
- 2 Write down every DNS record in the current zone, including MX, SPF, DKIM, DMARC and verification records, before you change anything.
- 3 Lower the TTL of the records you will change to a few minutes, at least a day before the move, so the switch spreads quickly.
- 4 Restore the site on the new host and test it there first, through a temporary URL or your local hosts file, before you switch DNS. Check the PHP version and extensions, and copy cron jobs and server rules.
- 5 Plan a short content freeze for shops and forms, so no orders arrive on the old server after the final copy.
- 6 After the switch, test SSL, email, forms and checkout, and keep the old hosting running for a while as a fallback.
Our approach
How we handle your website migration
-
1
You describe the move
Tell us where the site is now, where it should go and what else uses the domain, such as email. We reply with the access we need and a free first assessment.
-
2
We back up everything first
We take a full backup of the files, the database and the DNS zone, so nothing is lost and the old site stays intact as a fallback.
-
3
We build a staging copy and quote
We check the size, server requirements and risks, then send a fixed price and planning. After your OK we set up the site on the new host and test it there.
-
4
We switch, verify and report
We lower the TTL, switch DNS at an agreed time, check SSL, email, forms and redirects, monitor the site after the move and send a short report.
What we need
What we need from you
- Login for the current hosting panel, or SSH/SFTP and database access
- Access to the new hosting account, or we advise you on which one to choose
- Registrar or DNS access, so we can update the records at the right moment
- An admin login for your CMS and a list of mailboxes, forms and integrations in use
We ask only for the access the migration needs. You can create separate logins for us and remove them as soon as the move is finished.
What we cannot fix
We cannot move a site off a closed platform that offers no export, such as some hosted site builders, without a rebuild. We also cannot recover data from an account that has already been closed, speed up a domain transfer between registrars, or change what the new host allows. A redesign or new features during the move is a separate project. If something stands in the way, we tell you before you pay for anything.
Price
Price and what happens next
-
1
Free diagnosis
We find the cause and tell you what is wrong.
-
2
Fixed price
You get a price and a time estimate. Nothing starts without your yes.
-
3
Fixed and reported
We repair it, test it and send a short report.
From €450 excl. VAT
Fixed price, agreed before we start
Is it urgent? Say so in the form or in the chat. We start as soon as we can and give you a realistic time estimate with the quote. If priority work costs extra, you see that in the quote before you agree.
Get it fixedQuestions?
Website migration: frequently asked questions
Also see
Related problems
SSL certificate error
“Your connection is not private” means the browser does not trust the SSL/TLS certificate your site presents. On a site that worked before,...
Read more →Redirect loop
ERR_TOO_MANY_REDIRECTS (“redirected you too many times”) means your site sends the browser in a circle: address A redirects to B and B back...
Read more →Database connection error
“Error establishing a database connection” means your site’s code runs but cannot reach or log in to the database that holds your content. M...
Read more →Written by the IT bugsolutions team · Last updated:
Request
Tell us what is wrong
Answer a few short questions. You get a fixed price before we do anything.
Thank you for your request!
We will contact you shortly
An error occurred!
Please try again.