namr

How to Migrate Your Website to DreamHost (Zero Downtime Guide)

Migrating your website to DreamHost can dramatically improve performance, reliability, and support quality—but the migration process can seem daunting. This comprehensive guide walks you through migrating your website to DreamHost with zero (or minimal) downtime, covering WordPress sites, cPanel migrations, and static websites.

Why Migrate to DreamHost?

Common Reasons to Switch Hosting

Better performance: DreamHost offers faster servers, SSD storage, and unlimited bandwidth compared to many budget hosts, resulting in improved load times and user experience.

Superior uptime: 99.91% uptime with a 100% uptime guarantee (backed by service credits) beats many competitors' reliability records.

Honest, transparent pricing: No surprise renewal hikes or aggressive upsells—DreamHost shows actual renewal prices upfront.

WordPress optimization: As an officially WordPress.org-recommended host, DreamHost provides WordPress-specific optimizations, automatic updates, and dedicated support.

Better support quality: Knowledgeable, helpful support teams with reasonable response times and comprehensive documentation.

97-day money-back guarantee: Triple the industry standard, giving you over three months to test DreamHost risk-free.

Performance Improvements After Migration

Users report average improvements after migrating to DreamHost:

  • 40-60% faster load times (from budget hosts)
  • 50-80% reduction in downtime incidents
  • Better Core Web Vitals scores (improves SEO)
  • Faster database queries (especially on DreamPress)

Migration Methods Overview

DreamHost supports multiple migration approaches:

Method 1: Automated WordPress Migration (Easiest)

Best for: WordPress sites Difficulty: Easy Time: 30 minutes - 2 hours Downtime: Zero (with proper planning) Cost: Free (plugin-based)

Method 2: Manual Migration via FTP/cPanel

Best for: Any website type, full control Difficulty: Intermediate Time: 1-4 hours Downtime: 5-30 minutes (DNS propagation) Cost: Free

Method 3: Professional Migration Service

Best for: Complex sites, busy site owners Difficulty: None (DreamHost does it) Time: 24-72 hours Downtime: Zero Cost: $99+ (varies by complexity)

Method 4: DreamHost Migration Team

Best for: DreamPress users, complex WordPress sites Difficulty: Easy Time: 24-48 hours Downtime: Minimal Cost: Contact for pricing

Our recommendation: For WordPress sites, start with automated migration (Method 1). For complex sites or if you value time over cost, use professional migration (Method 3).

Pre-Migration Checklist

Before migrating, complete these essential preparation steps:

1. Backup Your Current Website

Critical: Always create a complete backup before migrating. If something goes wrong, you need a rollback option.

What to backup:

  • All website files (via FTP or file manager)
  • Complete database export (MySQL/MariaDB)
  • Email accounts and messages
  • SSL certificates (note provider and type)
  • DNS settings (take screenshots)

Backup tools:

  • WordPress: UpdraftPlus, Duplicator, BackupBuddy
  • cPanel: Full Backup feature
  • Manual: FileZilla (files) + phpMyAdmin (database)

Store backups securely: Download to your computer AND upload to cloud storage (Google Drive, Dropbox).

2. Document Current Configuration

Record critical details:

  • Current hosting provider and plan
  • PHP version
  • Database name, username, and password
  • Website file paths/directory structure
  • Active plugins and themes (WordPress)
  • Third-party integrations (payment processors, APIs)
  • Email accounts and configurations
  • Cron jobs and scheduled tasks

3. Check DreamHost Compatibility

Verify compatibility:

  • PHP version: DreamHost supports PHP 7.4, 8.0, 8.1, 8.2
  • Database: MySQL 5.7+ or MariaDB
  • Storage requirements: Ensure your site fits within plan limits
  • Special requirements: CGI, Python, Ruby, etc.

4. Choose Your DreamHost Plan

Web Hosting:

  • Web Hosting Starter: $2.59/mo – 1 website, 50GB storage
  • Web Hosting Unlimited: $4.95/mo – Unlimited websites and storage

DreamPress (Managed WordPress):

  • DreamPress: $16.95/mo – 1 site, optimized performance
  • DreamPress Plus: $24.95/mo – Enhanced resources
  • DreamPress Pro: $71.95/mo – Maximum performance

VPS Hosting:

  • Starting at $13.75/mo – Scalable resources, root access

Recommendation: For WordPress sites expecting good traffic, DreamPress provides the best performance. For budget-conscious users or multiple sites, Web Hosting Unlimited offers excellent value.

5. Sign Up for DreamHost

  1. Visit the DreamHost website
  2. Choose your hosting plan
  3. Register a new domain or indicate you'll transfer/point an existing domain
  4. Complete signup and payment
  5. Save your DreamHost panel login credentials

Don't update DNS yet – We'll do that after the migration is complete to avoid downtime.

Method 1: Automated WordPress Migration (Plugin-Based)

The easiest migration method for WordPress sites uses migration plugins.

Recommended Migration Plugins

Duplicator (Free):

  • Creates complete site package
  • Imports to new host easily
  • Reliable and widely used

All-in-One WP Migration (Free/Paid):

  • User-friendly interface
  • One-click export and import
  • Free version has size limits (512MB)

UpdraftPlus (Free/Paid):

  • Backup and migration in one
  • Supports cloud storage
  • Incremental backups available

We'll use Duplicator for this guide (works for most sites).

Step 1: Install Duplicator on Current Site

  1. Log into your WordPress dashboard on your current hosting
  2. Go to PluginsAdd New
  3. Search for "Duplicator"
  4. Install and activate Duplicator – WordPress Migration Plugin

Step 2: Create Site Package

  1. In WordPress admin, go to DuplicatorPackages
  2. Click Create New
  3. Configure package settings:
    • Name: Leave default or customize
    • Archive: Leave default settings
    • Installer: Leave default
  4. Click Next
  5. Duplicator scans your site for issues
  6. Review warnings (most can be ignored)
  7. Click Build

Build time: 5-30 minutes depending on site size.

Step 3: Download Package Files

After the build completes:

  1. Download installer.php file
  2. Download the archive.zip file
  3. Save both to your computer

File sizes: The archive can be large (100MB - several GB). Ensure you have sufficient storage.

Step 4: Set Up WordPress on DreamHost

Before importing, install WordPress on DreamHost:

  1. Log into DreamHost panel
  2. Go to WordPressInstall WordPress
  3. Select your domain
  4. Choose Basic Install (we'll replace it with your migrated site)
  5. Click Install WordPress
  6. Wait for installation confirmation (10-15 minutes)

Don't configure WordPress yet – The Duplicator import will overwrite everything.

Step 5: Upload Duplicator Files to DreamHost

Using FTP, upload the Duplicator files to your DreamHost server:

  1. Download FileZilla or another FTP client
  2. Get FTP credentials from DreamHost panelUsersManage Users
  3. Connect to DreamHost:
    • Host: ftp.yourdomain.com
    • Username: Your FTP username
    • Password: Your FTP password
    • Port: 22 (SFTP)
  4. Navigate to your domain's directory (usually /home/username/yourdomain.com/)
  5. Delete all existing files in the directory (the fresh WordPress install)
  6. Upload installer.php
  7. Upload archive.zip

Upload time: 10-60 minutes depending on archive size and internet speed.

Step 6: Run Duplicator Installer

  1. In your web browser, navigate to yourdomain.com/installer.php
  2. Review the installer screen
  3. Check "I have read and accept all terms & notices"
  4. Click Next

Step 7: Configure Database Connection

  1. Duplicator displays database configuration:
    • Host: Usually mysql.yourdomain.com (check DreamHost panel)
    • Database: Your database name (from DreamHost panel → Databases)
    • User: Database username
    • Password: Database password
  2. Click Test Database
  3. If successful, select Remove All Data (erases the fresh WordPress install)
  4. Click Next

If test fails: Verify database credentials in DreamHost panel.

Step 8: Complete Installation

  1. Duplicator extracts archive and configures WordPress
  2. This takes 5-15 minutes
  3. When complete, click Admin Login
  4. Log in with your original WordPress credentials (not DreamHost's)

Success! Your WordPress site is now on DreamHost with all content, plugins, themes, and settings intact.

Step 9: Post-Migration WordPress Configuration

Update site URLs (if needed):

  1. Go to SettingsGeneral
  2. Verify WordPress Address (URL) and Site Address (URL) are correct
  3. Save if you made changes

Update permalinks:

  1. Go to SettingsPermalinks
  2. Click Save Changes (without changing anything)
  3. This regenerates .htaccess for the new server

Test thoroughly:

  • Browse multiple pages
  • Test forms and contact pages
  • Check images and media display
  • Test e-commerce checkout (if applicable)
  • Verify plugins are working

Delete Duplicator files: For security, delete the migration files:

  1. Via FTP, delete installer.php
  2. Delete archive.zip

Or use Duplicator's built-in cleanup (if available).

Step 10: Update DNS to Point to DreamHost

Critical: Only update DNS after verifying your site works perfectly on DreamHost.

Find DreamHost IP address:

  1. In DreamHost panel, go to DomainsManage Domains
  2. Note the IP address next to your domain

Update DNS at your domain registrar:

  1. Log into your domain registrar (GoDaddy, Namecheap, etc.)
  2. Find DNS settings or DNS management
  3. Update the A record to point to DreamHost's IP address
  4. Save changes

DNS propagation: Changes take 4-48 hours to propagate globally. During this time, some visitors see the old site, others see the new site.

Test after propagation:

  • Clear browser cache
  • Visit your domain
  • Verify you're seeing the DreamHost version (add a test page temporarily)

Method 2: Manual Migration via FTP and Database Export

For non-WordPress sites or advanced users who want full control.

Step 1: Download Website Files from Current Host

Using FTP:

  1. Connect to your current host via FTP
  2. Navigate to your website's root directory (usually public_html or www)
  3. Download ALL files and folders to your computer
  4. Maintain directory structure

Using cPanel File Manager:

  1. Log into cPanel on your current host
  2. Open File Manager
  3. Navigate to your website's directory
  4. Select all files and folders
  5. Click Compress to create a .zip
  6. Download the .zip file
  7. Extract on your computer

Download time: 10-60 minutes depending on site size.

Step 2: Export MySQL Database

Using phpMyAdmin:

  1. Log into cPanel on your current host
  2. Open phpMyAdmin
  3. Select your website's database from the left sidebar
  4. Click Export tab
  5. Select Quick export method
  6. Format: SQL
  7. Click Go
  8. Save the .sql file to your computer

Using SSH (advanced):

mysqldump -u username -p database_name > backup.sql

Step 3: Create Database on DreamHost

  1. Log into DreamHost panel
  2. Go to DatabasesMySQL Databases
  3. Under Create a New MySQL Database, enter:
    • Database name: Choose a name (e.g., mysite_db)
    • Hostname: Usually auto-filled
  4. Click Add new database
  5. Create a database user:
    • Username: Create username
    • Password: Create strong password
  6. Grant privileges:
    • Select your database
    • Select your user
    • Click Add User to Database

Save credentials: You'll need database name, username, password, and hostname.

Step 4: Import Database to DreamHost

Using phpMyAdmin:

  1. In DreamHost panel, go to DatabasesMySQL Databases
  2. Click phpMyAdmin next to your database
  3. Select your database from the left sidebar
  4. Click Import tab
  5. Click Choose File and select your .sql export
  6. Click Go

Import time: 1-20 minutes depending on database size.

If import fails (file too large):

  • Compress the .sql file (.gz or .zip)
  • Use SSH/command line import (advanced)
  • Contact DreamHost support for assistance

Step 5: Upload Website Files to DreamHost

Using FTP:

  1. Connect to DreamHost via FTP using credentials from DreamHost panel
  2. Navigate to your domain's directory (/home/username/yourdomain.com/)
  3. Upload all website files and folders
  4. Maintain the same directory structure as your original site

Upload time: 15-90 minutes depending on file count and size.

Step 6: Update Database Configuration

For your website to connect to the new database, update configuration files:

WordPress (wp-config.php):

define('DB_NAME', 'your_dreamhost_db_name');
define('DB_USER', 'your_dreamhost_db_user');
define('DB_PASSWORD', 'your_dreamhost_db_password');
define('DB_HOST', 'mysql.yourdomain.com');

Other CMS (varies by platform):

  • Joomla: configuration.php
  • Drupal: settings.php
  • Custom PHP: Look for database connection files

Update via FTP:

  1. Download the configuration file
  2. Edit with a text editor
  3. Update database credentials
  4. Re-upload to DreamHost

Step 7: Test Website on DreamHost

Before updating DNS, test your site using DreamHost's IP address:

  1. Find your DreamHost IP in the panel
  2. Add to your computer's hosts file:
    • Windows: C:\Windows\System32\drivers\etc\hosts
    • Mac/Linux: /etc/hosts
  3. Add line: 123.456.789.012 yourdomain.com (replace with actual IP)
  4. Save and close
  5. Visit your domain in a browser (clears cache first)

Test thoroughly:

  • All pages load correctly
  • Images and media display
  • Forms and contact pages work
  • Database-driven features function
  • No broken links or errors

If issues arise: Check database configuration, file permissions, and PHP version.

Step 8: Update DNS

Once testing confirms everything works:

  1. Remove the hosts file entry (Step 7)
  2. Log into your domain registrar
  3. Update A record to point to DreamHost's IP
  4. Wait 4-48 hours for DNS propagation
  5. Monitor site to ensure new server is serving traffic

Method 3: Professional Migration Service

For hands-off migration or complex websites.

DreamHost Professional Services

Contact DreamHost support for professional migration:

What's included:

  • Complete site migration (files and database)
  • Email migration (if applicable)
  • DNS configuration
  • Testing and verification
  • Minimal to zero downtime

Pricing: Starting at $99 (varies by site complexity)

Timeline: 24-72 hours typically

Best for:

  • Large, complex websites
  • E-commerce sites requiring zero downtime
  • Sites with specialized configurations
  • Busy site owners who value time

To request:

  1. Contact DreamHost support via live chat or ticket
  2. Describe your website (platform, size, complexity)
  3. Receive quote and timeline
  4. Approve and provide current hosting credentials
  5. DreamHost handles the rest

Method 4: cPanel to DreamHost Migration

If your current host uses cPanel, you can use cPanel's built-in backup.

Step 1: Create Full cPanel Backup

  1. Log into cPanel on your current host
  2. Find Backup Wizard or Backups
  3. Click Full Backup
  4. Choose Home Directory
  5. Enter your email for notification
  6. Click Generate Backup

Backup time: 10-60 minutes, you'll receive an email when ready.

Step 2: Download Backup File

  1. Return to cPanel → Backups
  2. Find your backup file (.tar.gz)
  3. Download to your computer

Step 3: Extract and Upload to DreamHost

  1. Extract the backup file
  2. Locate website files (usually in public_html)
  3. Locate database .sql files
  4. Upload website files to DreamHost via FTP (Step 5 of Method 2)
  5. Import database to DreamHost (Step 4 of Method 2)
  6. Update database configuration (Step 6 of Method 2)

Post-Migration Checklist

After migration completes and DNS has propagated:

1. SSL Certificate Setup

DreamHost free SSL:

  1. Go to DreamHost panelDomainsManage Domains
  2. Click Edit next to your domain
  3. Under HTTPS, click Add for Let's Encrypt SSL
  4. Wait 10-15 minutes for activation

Update WordPress for HTTPS:

  1. Go to SettingsGeneral
  2. Update URLs to https:// (if not already)
  3. Install Really Simple SSL plugin (optional, helps with mixed content)

2. Performance Optimization

Install caching plugin:

  • WP Super Cache
  • W3 Total Cache

Enable Cloudflare CDN (free):

  • Sign up at Cloudflare.com
  • Add your domain
  • Update nameservers to Cloudflare
  • Enable caching and minification

Optimize images:

  • Smush or ShortPixel plugins
  • Compress existing images

3. Email Migration

If you hosted email with your previous provider, migrate email accounts:

Options:

  • Set up DreamHost email ($1.67/month per mailbox)
  • Use Google Workspace ($6/month per user)
  • Keep email at previous provider (update MX records only)

To update MX records:

  1. Keep email hosting elsewhere
  2. In DreamHost panel → DNS settings
  3. Add MX records pointing to your email provider

4. Set Up Backups

DreamHost automated backups: $2.99/month

WordPress backup plugins:

  • UpdraftPlus (free/paid)
  • BackupBuddy (paid)
  • VaultPress (Jetpack, paid)

Best practice: Daily backups stored off-site (Google Drive, Dropbox, S3).

5. Monitor Website Performance

First week after migration:

  • Check uptime (use UptimeRobot, free)
  • Monitor page speed (GTmetrix, Pingdom)
  • Review analytics for traffic anomalies
  • Test all forms and interactive features
  • Verify e-commerce checkout processes

6. Cancel Old Hosting

Wait at least 7-14 days after migration before canceling old hosting:

  • Ensures DNS has fully propagated
  • Provides rollback option if issues arise
  • Allows time to recover forgotten files or data

Before canceling:

  • Download final backups from old host
  • Export/save email messages
  • Document any remaining configurations

Troubleshooting Migration Issues

Website Displays Old Content After DNS Update

Cause: DNS hasn't propagated, or browser cache.

Solutions:

  • Wait 24-48 hours for full DNS propagation
  • Clear browser cache and cookies
  • Test with different browsers or incognito mode
  • Use online DNS checker to verify propagation

Database Connection Error

Cause: Incorrect database credentials in configuration file.

Solutions:

  • Verify database name, username, password, and host in DreamHost panel
  • Update configuration file (wp-config.php, etc.) with correct credentials
  • Ensure database user has privileges on the database

Images or Links Broken

Cause: Absolute URLs pointing to old server.

Solutions (WordPress):

  • Use Better Search Replace plugin to update URLs
  • Run search-replace on database (advanced)
  • Check for hardcoded URLs in theme or plugins

Email Stopped Working

Cause: MX records not updated or incorrectly configured.

Solutions:

  • In DreamHost panel → DNS, verify MX records point to your email provider
  • If using DreamHost email, ensure MX points to DreamHost mail servers
  • Wait 4-24 hours for MX record propagation

Site Running Slowly on DreamHost

Causes:

  • Missing caching plugin
  • Large, unoptimized images
  • Too many plugins
  • Entry-level web hosting resource limits

Solutions:

  • Install WP Super Cache or W3 Total Cache
  • Optimize images with Smush or ShortPixel
  • Deactivate unnecessary plugins
  • Consider upgrading to DreamPress for better performance

Migration Timeline and Downtime

Expected Timeline

Automated WordPress Migration:

  • Preparation: 30 minutes
  • Plugin migration: 1-2 hours
  • Testing: 30 minutes
  • DNS update: 4-48 hours
  • Total: 6-51 hours

Manual Migration:

  • Backup and download: 1-2 hours
  • Setup and upload: 1-3 hours
  • Database import: 30 minutes - 1 hour
  • Testing: 1 hour
  • DNS update: 4-48 hours
  • Total: 7.5-55 hours

Professional Migration:

  • Coordination: 1-4 hours
  • DreamHost migration: 24-72 hours
  • Testing: 1-2 hours
  • Total: 26-78 hours

Minimizing Downtime

Best practices for zero-downtime migration:

  1. Migrate first, switch DNS later – Build complete site on DreamHost before updating DNS
  2. Test via hosts file – Verify everything works before DNS change
  3. Use TTL reduction – Lower DNS TTL to 300 seconds 48 hours before migration
  4. Time DNS changes wisely – Update DNS during low-traffic periods
  5. Monitor actively – Watch DNS propagation and quickly address issues

Realistic downtime expectations:

  • Automated WordPress migration: 0-5 minutes
  • Manual migration (planned): 5-30 minutes
  • Professional migration: 0-5 minutes

Domain Management with Namr

Before or during migration, optimize your domain management costs.

Use Namr to:

  • Compare domain renewal prices across 20+ registrars
  • Find cheapest registrar for your domain extension
  • Calculate transfer costs if moving domain registration
  • Check WHOIS privacy pricing across providers

Money-saving tip: Keep your domain at the cheapest registrar (found via Namr) and point it to DreamHost hosting. This gives you the best of both worlds—lowest domain costs and quality DreamHost hosting.

Frequently Asked Questions

Will I lose any data during migration?

If you backup properly before migrating, no. Always create complete backups before starting. During automated migrations with plugins like Duplicator, no data loss should occur if you follow instructions carefully.

How long will my website be down?

With proper planning, downtime can be zero. At worst, expect 5-30 minutes during DNS propagation. Professional migrations typically have zero downtime.

Can I migrate email accounts too?

Yes. Options include migrating to DreamHost email, Google Workspace, or keeping email at your current provider (update MX records). Email migration is separate from website migration.

What if something goes wrong?

If you have backups, you can restore to your original hosting. This is why we emphasize comprehensive backups before starting migration. DreamHost's 97-day money-back guarantee also provides a safety net for hosting costs.

Should I migrate my domain registration too?

Not necessarily. You can keep your domain registered elsewhere and just point DNS to DreamHost hosting. Use Namr to compare costs—you might save money keeping your domain at a specialized registrar.

Can I test my site before updating DNS?

Yes. Use the hosts file method (Method 2, Step 7) or access via DreamHost's provided preview URL. Testing before DNS changes is crucial for zero-downtime migrations.

Do I need technical knowledge to migrate?

For automated WordPress migration (Method 1), minimal technical knowledge is needed. For manual migration (Method 2), intermediate knowledge helps. For professional migration (Method 3), no technical knowledge is required.

How do I migrate a large website (10GB+)?

Large sites require specialized approaches:

  • Use professional migration service
  • Upload files via SSH instead of FTP (faster)
  • Import large databases via SSH/command line
  • Consider temporary storage increase at DreamHost

Conclusion: Successful Migration to DreamHost

Migrating your website to DreamHost improves performance, reliability, and support quality while maintaining (or reducing) costs compared to many budget hosts.

Key takeaways:Always backup before migrating—complete site and database ✅ Test thoroughly on DreamHost before updating DNS ✅ Use automated tools (Duplicator) for WordPress sites when possible ✅ Monitor closely for 7-14 days after migration ✅ Optimize post-migration with caching, CDN, and image optimization

Migration timeline: Plan for 1-3 days total (including DNS propagation), though actual work time is just a few hours.

Best value: Migrate hosting to DreamHost for better performance, but check Namr to find the cheapest domain registrar. Point your domain from the budget registrar to DreamHost hosting for optimal cost savings.

Ready to migrate? Sign up for DreamHost, back up your site, and follow this guide step-by-step. With proper planning and execution, your migration will be smooth, fast, and successful.

Need help? DreamHost's support team assists with migration questions, and professional migration services are available for complex sites or hands-off migration.

Welcome to faster, more reliable hosting at DreamHost!