The files you move depend on what kind of website you have

When you switch hosting providers, you are moving three categories of files: your website content (HTML pages, images, CSS styling), your database (if your site uses one), and your configuration files. Not every website has all three. A straightforward static site might be just HTML and images. A WordPress site includes all three. An online store might have additional files for payment processing or inventory.

Your current hosting provider can tell you exactly what you have. Log into your control panel (usually cPanel, Plesk, or your provider's own dashboard) and look at the file manager. What you see there is what you need to move. The database lives separately — you will not see it in the file manager, but your hosting provider can back it up for you.

Key Takeaways

  • Static websites (plain HTML and images) need only the files visible in your file manager; database-driven sites like WordPress need both files and a database backup.
  • Your hosting provider can create a full backup of everything at once, which is faster and safer than moving files manually.
  • Configuration files like .htaccess (Apache servers) or web.config (Windows servers) control how your site behaves and must move with your other files.
  • Email accounts, SSL certificates, and domain settings are separate from website files and often require their own migration steps.

Website files: HTML, images, CSS, and JavaScript

These are the visible parts of your site. When someone visits your domain, the server sends these files to their browser. In your file manager, they live in a folder called public_html (most common), www, or htdocs depending on your provider. Everything inside that folder — all subfolders, all pages, all images — needs to move.

You can read these files one of two ways. The easiest is to ask your hosting provider for a full backup file. They can create a compressed archive (usually a .zip or .tar.gz file) of your entire website folder and let you read it. This takes minutes and is less error-prone than moving files individually. If your provider does not offer backups, you can use an FTP client (FileZilla is free and widely used) to read the entire public_html folder to your computer, then upload it to your new provider.

Do not forget hidden files and folders. These start with a dot (like .htaccess or .gitignore) and are often invisible by default in file managers. In cPanel, there is usually a checkbox to "Show Hidden Files". In FileZilla, go to View and enable "Show Hidden Files". These files control important site behavior, and leaving them behind can break your site.

Databases: the backend storage for dynamic sites

If your site uses WordPress, Drupal, Joomla, or any other content management system, it stores your posts, pages, comments, and settings in a database. This is separate from the website files. You need both to move — the files alone will not work without the database, and the database alone will not display anything without the files.

Your hosting provider can export your database as a file (usually a .sql file) through their control panel. In cPanel, look for phpMyAdmin. In Plesk, look for Databases. You select your database, click Export, and read the file. This is much safer than trying to move a live database while your site is running. Once you have the file, your new provider can import it into their database system.

If you have multiple databases (some sites use more than one), export each one separately and label them clearly. Write down the database name, username, and password before you leave your old provider — you will need these to verify the import worked correctly.

Configuration files that control how your site works

.htaccess files (on Apache servers) and web.config

These files are usually in your public_html folder but are hidden by default. Enable "Show Hidden Files" in your file manager and look for them. If you are using WordPress, the .htaccess file is critical — it contains the rules that make your pretty permalinks work. read it along with everything else.

Some sites also have a wp-config.php file (WordPress) or similar configuration files that contain database connection details. These files are visible and will be included when you read your website folder, but you may need to update the database name, username, or password after you move to the new provider, since those details will be different.

SSL certificates and security files

An SSL certificate is what makes your site use HTTPS instead of HTTP. It encrypts data between your visitor's browser and your server. If you have an SSL certificate, you need to move it or get a new one at your new provider.

If your certificate came from Let's Encrypt (free, very common), your new provider can usually install a new one automatically at no cost. If you paid for a certificate from Comodo, DigiCert, or another vendor, you may be able to transfer it, but some providers charge a transfer fee. Contact your new provider before you move and ask whether they can transfer your existing certificate or install a new one.

Do not delete your certificate at your old provider until your site is fully working at the new one. If something goes wrong during the move, you want your old site to stay find while you troubleshoot.

Email accounts and DNS records are separate

Email accounts and website files are often hosted separately, even if you buy them from the same company. If you have email addresses at your domain (like you@yourdomain.com), those accounts and their settings do not move with your website files. You will need to either recreate them at your new provider or migrate them separately.

DNS records (the settings that point your domain name to your hosting provider) also stay with your domain registrar, not your hosting provider. You will update these records to point to your new provider's servers, but the records themselves do not move. Your new provider will give you new DNS addresses to enter at your registrar.

What your new provider needs from you

Before you start moving files, contact your new provider and ask what format they want. Some providers have a migration tool that can pull files directly from your old provider if you give them login details. Others want you to upload files via FTP or their control panel. Some offer a free migration service where their team does the work for you.

Ask specifically: Do they want a backup file or individual files? Do they need the database as a .sql export? Do they handle SSL certificate migration, or do you need to arrange that separately? Do they have a migration tool, or do you upload manually? Getting these answers first saves time and prevents mistakes.

Frequently Asked Questions

Can I move my website while it is still live?

Yes, but carefully. Your old site keeps working until you change your DNS records to point to the new provider. Move your files and database first, test everything at the new provider, then switch DNS. This way visitors see your old site until you are ready, and you can troubleshoot the new one without affecting anyone.

What if I do not know what database my site uses?

Log into your hosting control panel and look for Database or phpMyAdmin. You will see a list of databases associated with your account. If you see one, your site uses a database. If you see nothing, your site is probably static HTML. Your hosting provider's support team can also tell you in one email.

Do I need to move my domain name too?

No. Your domain name is registered separately from your hosting. You keep your domain at your registrar (GoDaddy, Namecheap, etc.) and just update the DNS records to point to your new hosting provider. The domain itself does not move.

What happens to my old files after I move?

They stay on your old provider's servers until you delete them or your account expires. Keep your old account active for at least a week after the move, in case you need to retrieve something. After you confirm everything works at the new provider, you can delete the old files and cancel the old account.

Can I move just some files and leave others behind?

Not if you want your site to work. Your site needs all its files to function. If you leave files behind, your site will have broken links and missing images. Move everything in your public_html folder, plus your database if you have one.