WordPress · Cloudways
How to Migrate WordPress to Cloudways (Step-by-Step)
A Cloudways-specific WordPress move: size the destination, use the official migrator plugin, test the temporary URL, cut DNS, and keep email from becoming the outage.
A WordPress move to Cloudways is not a file copy with a new logo. You leave a panel for a server plus an application. Outages still come from DNS, serialized URLs, mailbox MX, or SSL that is missing when you flip the record.
The generic checklist is how to migrate WordPress without downtime. This page is the Cloudways sequence: Flexible vs Autonomous, the official Cloudways WordPress Migrator, the cloudwaysapps.com URL, Domain Management, and Varnish aftercare.
HostSignal assumes you are moving the same domain. A 20 GB Woo catalog is not a 20-minute plugin click. Open a Flexible server only after you can name a size.
0. Pick the SKU and the size before you clone
Do not migrate onto $11 because the homepage says it. Say the product first.
- Flexible is a managed cloud server. DigitalOcean Standard at $11 is 2 GB / 1 vCPU / 50 GB — a cached brochure neighborhood. Unlimited apps is a capacity claim.
- Autonomous is WordPress-only. Public entry we saw: $35/mo, one app. Do not clone five client sites onto that card.
If money touches the cart, start on 4 GB+ Flexible (Object Cache Pro free on that row) or admit $11 is a staging box. Size map: best Cloudways server size for beginners. Invoice: Cloudways pricing explained 2026. Buy/skip: is Cloudways worth it 2026. Region first — a New York droplet for Sydney readers is a DNS success and a TTFB failure.
A dated coupon — SUMMER404, 40% off for four months plus unlimited free migrations, expiring 15 September 2026 — does not change the sequence. One complimentary expert move is a product claim Cloudways still prints; custom tables are not instant.
1. Inventory the source (before you touch Cloudways)
Write down current host and IP, proxy state, PHP/WordPress versions, must-have plugins, where email lives (Cloudways does not include mailboxes), cron/redirects/object cache, and how large wp-content/uploads is — that number is the transfer time.
Download a full backup you can open on a laptop. Woo or memberships: plan a write-freeze. Two live checkouts are worse than two minutes of “please wait.”
Lower DNS TTL to 300 seconds a day early if records still sit at 21,600 or 86,400. If the domain is already proxied, retarget the origin IP; do not pause the proxy unless you have a reason.
2. Provision the Cloudways destination first
Create the Cloudways account, then the server, then the WordPress application. Do not point the domain yet.
On Flexible, the boring-correct path this desk uses:
- Launch Flexible on DigitalOcean Standard unless you already know you want Premium NVMe. Do not toggle Premium and drop to 1 GB RAM by accident — that is less memory than the $11 2 GB door.
- Pick the region closest to the readers, not closest to you.
- Add a WordPress application. Name it something you can recognize in a year.
- Open Access Details / application credentials. Copy the temporary URL (
*.cloudwaysapps.com), public IP, SFTP host, SFTP user and password, and database name. You will paste these into the migrator. Treat them like production secrets. - Match PHP to the source as closely as the stack allows. Do not “upgrade to 8.4 while we migrate” unless you have already tested that jump.
- Leave Varnish / page cache off or be ready to purge it during testing. A half-migrated page in Varnish is how people swear the plugin “failed” when they are looking at a cached empty install.
That empty install is the destination. The migrator will overwrite it.
3. Use the Cloudways WordPress Migrator on the source
The official plugin is Cloudways WordPress Migrator (slug bv-cloudways-automated-migration on WordPress.org). It migrates to Cloudways only. Install it on the site you are leaving, not on the empty Cloudways app.
- On the old WordPress dashboard: Plugins → Add New → search Cloudways WordPress Migrator → Install → Activate.
- Open the Cloudways Migrate screen. Enter the email that matches the Cloudways account if the form asks. Agree to the terms.
- Fill the destination fields from Access Details:
- Destination site URL — the
cloudwaysapps.comapplication URL, not the production domain. - SFTP host — usually the server public IP.
- SFTP username and password — application or master credentials, whichever the live form labels.
- Database name — the Cloudways application database, not the old host’s.
- Destination site URL — the
- When the form asks whether to migrate additional database tables, say yes unless you have a documented reason not to. Custom tables are how membership, Woo, and form plugins vanish.
- Start the migration. Small brochure: minutes. Multi-gigabyte uploads: plan for an hour-class job and a quiet window. Watch the email the plugin sends if it errors.
This is still a vendor migrator. It fails on upload limits, huge uploads, paths outside WordPress, and leftover hostnames in serialized data. If it stalls at 87%, finish a delta of uploads over SFTP or take the expert offer. Manual fallback: rsync/SFTP, import the database, run a serialized-safe search-replace — do not sed a WordPress database.
4. Test on the temporary URL before DNS
Load the Cloudways application URL. You should see your site, not twenty-twenty. Then check, in writing:
- Home, a long post, a paginated archive, and a form.
wp-login.php, wp-admin, and a plugin screen that you actually use.- Media from year-one and from last month. Missing
/uploads/2024/is a partial migrate. - Woo or membership: a product, a cart, a login. Do not discover this after the A record moves.
- Search. Some stacks throttle it.
- PHP errors in Cloudways’ application log, not only the front page.
If permalinks 404, save permalinks once. Fix mixed content on the temp URL before the public cut. Hosts-file testing (production hostname → new IP on your machine only) is the cleanest HTTPS check. Adding the domain in Domain Management early will search-replace toward production — do that only when the database should believe the new host is live.
5. Freeze writes, recopy, then cut DNS
For a busy site: put Woo checkout in a holding state, recopy the database (and a delta of uploads), then cut. Comments, orders, and form entries created during the first clone will otherwise stay on the old host.
In Cloudways: Domain Management → add the apex as primary (and www if you use it). Then at the registrar or DNS host:
- Update A (and AAAA if you have IPv6) to the Cloudways server IP.
- If you use a proxy, change the origin IP, not a random CNAME you copied from a forum post.
- Do not copy the old host’s MX if mail already lives at Google or Fastmail. If mail was on the old cPanel, moving MX is a second project. The website cut is not that project.
Issue Let’s Encrypt in Cloudways’ SSL screen after the domain resolves to the new IP (or via DNS validation if the panel offers it). Turn on HTTPS redirect only after the certificate is live. A redirect loop plus a stale Varnish object is a self-own.
Purge cache. Watch HTTP status on apex and www. Watch the old host’s access log going quiet and the new application error log staying quiet.
Leave the old host paid until you have a week of Cloudways backups you have restored once. Offsite backup storage on Flexible is $0.033/GB. Turn it on before you delete the old invoice.
6. Cloudways aftercare that prevents the “it got slow again” ticket
- Turn Varnish / page cache back on. Turn off duplicate cache plugins. Two page caches is how a small site gets random logged-out HTML.
- Reinstall object cache only if the size qualifies. Object Cache Pro is in Cloudways’ “free on 4 GB+” Flexible story. On a 2 GB $11 door, do not pretend you bought that sentence.
- Set a real cron if the app needs it.
DISABLE_WP_CRONplus a Cloudways cron ping is an operations choice, not a default you should assume. - Reconnect sitemaps and any cron that hit the old IP.
- Cloudflare Enterprise is an add-on on Flexible and included on Autonomous. Say the SKU.
- Raise DNS TTL once you trust the new IP.
Cloudways chat is competent on the server. It is not a Woo developer if a custom table did not come across — same distinction as Cloudways vs Kinsta.
When to skip the plugin and pay a human
Pay an expert if you have a long Woo history, multilingual plugins, 10 GB+ uploads, or a host mu-plugin you do not understand. Skip Cloudways entirely for a contact form — stay on shared hosting. If you wanted isolated WordPress and refuse a droplet, compare Autonomous’s $35 card to WP Engine or Kinsta first.
A short cutover order you can print
- Inventory, download a backup, lower TTL, decide Flexible vs Autonomous and a size.
- Launch the Cloudways server and empty WordPress app. Copy Access Details.
- Install Cloudways WordPress Migrator on the source. Additional tables: yes.
- Test the
cloudwaysapps.comURL. Fix permalinks, media, and forms there. - Freeze writes. Recopy. Add the domain. Cut A/AAAA or the proxy origin. Issue SSL.
- Cache, cron, offsite backups, email left alone unless MX was the project.
There is no prize for the fastest public cut. The win is the new host answering HTTPS on the same hostname, with mail still where it was yesterday.
Cloudways CTAs in this post use the live tracking URL https://www.cloudways.com/en/?id=2207643. We have not invented a commission or a private migrate-time. Confirm Flexible vs Autonomous, the droplet toggle, and the live migration offer before you pay.
Affiliate relationships, if any, are disclosed on the disclosure page. Approved programs use a tracked https URL. Other destinations stay as PLACEHOLDER_AFFILIATE_<VENDOR> tokens until those programs are connected.