Website files & database · Hostinger
Move your website to Hostinger
Moving the files is the only part of a hosting migration that touches the website itself. Everything else moves pointers.
Hostinger offers a free free managed migration, which is usually the right starting point. The part that matters is what it does not carry across, because those things fail silently.
Do it while the old host is still live. Nothing here is visible to the public until DNS changes, so a mistake at this stage costs time and nothing else.
Checked against Hostinger's documentation on August 9, 2026.
What is different about Hostinger
The process is standardised. These are the parts that are not — the things that are true of Hostinger and not of everyone else.
Decide which Hostinger product you are moving to first
Hostinger sells 3 distinct hosting products — Web and WordPress Hosting, Cloud Hosting, VPS — and the differences between them are larger than the differences between providers. Web and WordPress Hosting gives you hPanel File Manager and FTP/SFTP with phpMyAdmin via hPanel; Cloud Hosting gives you hPanel File Manager and FTP/SFTP and SSH with phpMyAdmin via hPanel; VPS gives you SSH and SFTP with Whatever you install. Following instructions written for the wrong one is the most common way a migration stalls halfway.
The free managed migration is free
hPanel → Websites → Migrate Website, supplying the source admin URL and login. Typical duration: Often under 2 hours; allow up to 24. Documented limits: Maximum five active migration requests at a time; One request per site, and subdomains count separately; Bulk migrations are not offered; Targets open-source content management systems such as WordPress and Joomla.
What the migration deliberately excludes
Hostinger states that it does not carry across cron jobs, DNS records, custom SSL configuration, FTP accounts, email. Every one of those fails quietly — the site arrives looking perfect and simply stops doing something it used to do. Rebuilding them is your job, and it is the difference between a migration that looks finished and one that is.
Check compatibility first: Hostinger cannot run Long-running Node.js or Python services on shared plans
Hostinger executes PHP (multiple selectable versions), Static HTML, CSS and JavaScript, with MySQL / MariaDB for storage. It is built for wordpress, php applications, static sites. What it will not run: Long-running Node.js or Python services on shared plans. That is the question to settle before any of the mechanics below matter — no file manager rescues an application the platform cannot execute. Node.js and Python are available on Hostinger VPS rather than shared hosting
The control panel is custom
File access is via hPanel File Manager, FTP/SFTP, SSH on some plans, and databases through phpMyAdmin via hPanel. The web root is public_html.
Hostinger at a glance
- Languages / runtimes
- PHP (multiple selectable versions), Static HTML, CSS and JavaScript
- Databases
- MySQL / MariaDB
- Built for
- WordPress, PHP applications, Static sites
- Cannot run
- Long-running Node.js or Python services on shared plans
- Control panel
- custom
- File access
- hPanel File Manager, FTP/SFTP, SSH on some plans
- Database tool
- phpMyAdmin via hPanel
- Web root
- public_html
- Assisted migration
- free managed migration (free)
- Typical duration
- Often under 2 hours; allow up to 24
- Not covered
- cron jobs, DNS records, custom SSL configuration, FTP accounts, email
Hostinger hosting packages
Hostinger sells more than one kind of hosting, and they are not interchangeable. Pick the row that matches what you bought before following any steps.
Web and WordPress Hosting
sharedShared hosting on hPanel, sold as both generic web hosting and a WordPress-branded variant that is the same platform with WordPress tooling added.
- Best for
- Budget-conscious WordPress and PHP sites
- File access
- hPanel File Manager, FTP/SFTP
- Database tool
- phpMyAdmin via hPanel
- Languages
- PHP (multiple selectable versions), Static HTML, CSS and JavaScript
- Databases
- MySQL / MariaDB
- Cannot run
- Long-running Node.js or Python processes
- hPanel is not cPanel, so cPanel instructions do not translate
- Long promotional terms; renewal pricing differs sharply from intro pricing
Migrating into it: The free managed migration covers this product, and the DNS editor imports BIND zone files.
Cloud Hosting
cloudDedicated resources with a dedicated IP address, still administered through hPanel.
- Best for
- Busier sites that want isolation without managing a server
- File access
- hPanel File Manager, FTP/SFTP, SSH
- Database tool
- phpMyAdmin via hPanel
- Languages
- PHP (multiple selectable versions), Static HTML, CSS and JavaScript
- Databases
- MySQL / MariaDB
- Cannot run
- Long-running Node.js or Python processes
- More expensive than shared, still not root access
Migrating into it: Identical migration process to shared hosting.
VPS
vpsVirtual private servers with root access, where you choose and maintain the stack yourself.
- Best for
- Node.js, Python or custom applications that shared hosting cannot run
- File access
- SSH, SFTP
- Database tool
- Whatever you install
- Languages
- PHP, Node.js, Python, Anything you install
- Databases
- MySQL / MariaDB, PostgreSQL, Others
- You own the maintenance, updates and security
Migrating into it: The only Hostinger tier that runs Node.js or Python — if that is what you need, the shared products are not an option.
Step-by-step
- 1At your current provider
Back up before anything else
Take a copy of the files and the database and keep it off both hosts. This is not the migration copy — it is what you restore from when the migration copy turns out to be incomplete.
- Files from your current host's file manager or over FTP
- Database as a single SQL export
- Store both somewhere that is neither the old host nor the new one
- 2At Hostinger
Request the free managed migration
hPanel → Websites → Migrate Website, supplying the source admin URL and login
- Typical duration: Often under 2 hours; allow up to 24
- Maximum five active migration requests at a time
- One request per site, and subdomains count separately
- Bulk migrations are not offered
- Targets open-source content management systems such as WordPress and Joomla
- Create a dedicated admin account for the migration rather than sharing your own, and remove it afterwards
- 3Either side
Or move it by hand into public_html
Compress on the server and move one archive. Dragging thousands of small files over FTP is where migrations stall.
- Turn on hidden files before compressing, or .htaccess is left behind
- Upload the archive into public_html and extract it there
- If the archive contained the web root folder itself, move the contents up one level
- SSH is available on some plans, which makes this considerably faster
- 4At Hostinger
Create the database, then grant the user
The database and its user are separate objects. A site that loads but reports a connection error is almost always a missing grant rather than a wrong password.
- Use phpMyAdmin via hPanel
- Grant All Privileges on the new database
- Panels usually prefix both names with your account name — use the full names
- 5At Hostinger
Import the database and update the credentials
Import into the empty database, then point the application at it. Check the table count against the source; a partial import reports nothing useful.
wp-config.phpdefine( 'DB_NAME', 'the new database name' ); define( 'DB_USER', 'the new user' ); define( 'DB_PASSWORD', 'the password you just set' ); define( 'DB_HOST', 'localhost' ); - 6At Hostinger
Rebuild what the migration left out
The exclusions again, because this is the step people skip: cron jobs, DNS records, custom SSL configuration, FTP accounts, email. List them at the old host before you cancel, because afterwards the list is gone.
- Cron jobs
- DNS records
- Custom SSL configuration
- FTP accounts
- 7At Hostinger
Test before you touch DNS
This is what separates a calm migration from a bad one. Load the new copy while the old host still serves the public.
- Use the temporary URL Hostinger provides
- Better: a hosts file entry so the real domain resolves here for you only, which catches redirect loops a temporary URL hides
- Click through properly — forms, logins, checkout, an image deep in an old post
- Match the PHP version to the old host first; upgrade later as a separate change
hosts file entry (macOS/Linux: /etc/hosts)203.0.113.10 example.com www.example.com
Best practice
The habits that make this go smoothly, independent of which providers are involved.
- Confirm Hostinger runs your application's language and database before anything else — PHP (multiple selectable versions), Static HTML, CSS and JavaScript with MySQL / MariaDB
- Copy rather than move, and keep the old site running until the new one is verified
- Test on a temporary URL or via a hosts file entry before changing any DNS
- Compress on the server and transfer one archive, not thousands of files
- Match the old PHP version first; treat upgrading as a separate change
- Stop publishing on the old site once the copy is taken, or that content is lost at cutover
- Keep the old host active for two weeks after cutover as your rollback
- Rebuild everything the free managed migration excludes, and check it off explicitly
What goes wrong
The failures that actually happen when Hostinger is the destination.
Hostinger cannot run everything
Can cause downtimeIt does not support Long-running Node.js or Python services on shared plans. If your site depends on any of those, this is not a migration — it is a rebuild or a conversion, and finding that out after you have started is expensive. Confirm what your application actually needs before moving anything.
Cron jobs do not move, and nothing tells you
Can cause downtimeHostinger lists cron jobs among its migration exclusions. Scheduled publishing, backups, feed imports, invoice runs — the site looks perfect and quietly stops doing all of it. Write down every entry at the old host before you cancel.
Hidden files are silently skipped
Can cause downtime.htaccess and similar dotfiles do not appear in most file managers until you enable hidden files, and are not included in an archive built from a selection that never showed them. A WordPress site missing .htaccess loads the homepage and 404s everywhere else.
Large database imports fail quietly
Can cause delaysAbove roughly 50 MB the import hits an upload or execution limit. Sometimes it errors, sometimes it stops partway and says nothing useful. Check the table count against the source rather than trusting the absence of an error.
Email does not live in the files
Can cause downtimeMailboxes are not in the web root and not in the database. If your old host provided email, that is a separate migration — download it over IMAP before cancelling, or the messages go with the account.
The assisted migration has documented limits
Can cause delaysMaximum five active migration requests at a time. One request per site, and subdomains count separately. Bulk migrations are not offered. Targets open-source content management systems such as WordPress and Joomla. Check these before relying on it, because discovering them halfway through means falling back to a manual move you had not planned for.
Where are you coming from?
Most of this job depends on the destination. These are the bits that depend on where you are coming from.
Coming from cPanel hosting
Hostinger does not use cPanel, so the shape differs at this end: files go in via hPanel File Manager or FTP/SFTP or SSH on some plans and the database through phpMyAdmin via hPanel. The export side is familiar; the import side is not.
Coming from managed WordPress
There is usually no cPanel and no phpMyAdmin to export from, so use a migration plugin that produces a portable archive, or lean on Hostinger's free managed migration. Do it while the source is still publicly reachable — most tooling, including this one, works by fetching the live site.
Coming from a site builder
Wix, Squarespace and similar do not give you the files at all. There is nothing to migrate in the normal sense; the site has to be rebuilt or exported to static HTML, and content moved across separately.
Know exactly where you are moving from?
Common questions
What languages does Hostinger support?
PHP (multiple selectable versions), Static HTML, CSS and JavaScript, with MySQL / MariaDB. It is intended for wordpress, php applications, static sites. It cannot run Long-running Node.js or Python services on shared plans.
Does Hostinger migrate my site for me?
Yes — free managed migration, free of charge. hPanel → Websites → Migrate Website, supplying the source admin URL and login. It covers files and databases but explicitly excludes cron jobs, DNS records, custom SSL configuration, FTP accounts, email.
Can I move without downtime?
Yes. Copy the site, test it on a temporary URL while the old host still serves the public, and change DNS only once it works. There is no window where nothing answers — the risk is cutting over to an untested copy, not the cutover itself.
What about my email?
It does not come with the files. Mailboxes are a separate system, and MX records are a separate job again. Plan both explicitly rather than assuming a hosting migration covers them.
What happens to my SSL certificate?
Certificates do not transfer. Hostinger issues its own once the domain resolves to it, which means a short period after cutover where HTTPS may warn. Provision it as soon as DNS points here, and check the site still forces HTTPS.
Reference documentation
Provider interfaces change. When these steps and the official documentation disagree, the documentation wins.
The same job at other providers
Move your website to Bluehost
Decide which Bluehost product you are moving to first
Move your website to GoDaddy
Decide which GoDaddy product you are moving to first
Move your website to SiteGround
Decide which SiteGround product you are moving to first
Move your website to Cloudflare
Decide which Cloudflare product you are moving to first
Move your website to WP Engine
The Automated Migration plugin is free
Want this done for you?
I move sites onto Hostinger regularly — files, database, DNS and the registrar — with the old provider kept as a rollback until it has settled.