What Is FTP and What Is It For?
FTP (File Transfer Protocol) is the protocol that lets you transfer files between your computer and a web server. In use since 1971, it's still one of the most fundamental tools in the hosting world.
You'll typically reach for FTP when you need to:
- Upload a ready-made site template or a project with hundreds of files all at once
- Download a backup of your site to your computer
- Handle large file transfers that cPanel File Manager can't handle well
- Connect your code editor (VS Code, etc.) directly to the server
The Difference Between FTP and SFTP
Despite the similar names, these are two completely different protocols. Classic FTP sends all data unencrypted — including your username and password. Anyone listening on the network can read your credentials in plain text.
| Feature | FTP | FTPS | SFTP |
|---|---|---|---|
| Encryption | None ❌ | TLS/SSL ✅ | SSH ✅ |
| Default Port | 21 | 21 / 990 | 22 |
| Infrastructure | FTP server | FTP server + SSL certificate | SSH server |
| Recommended For | Avoid it | Shared hosting | VPS / plans with SSH access |
SFTP typically comes enabled by default on VPS plans; on shared hosting, some providers only enable SSH access on request.
Creating an FTP Account in cPanel
You can connect over FTP using your main cPanel account, but creating a limited, task-specific account is much more secure:
- cPanel → Files → FTP Accounts
- Choose a username (e.g.,
designer@yoursite.com) - Create a strong password
- Restrict the Directory field: e.g.,
public_html/theme— the account will only be able to see that folder - Set a quota (e.g., 500 MB) and click "Create"
This way, an outside developer you're working with only gets access to that one folder, not your entire site. Delete the account once the work is done.
Installing and Connecting with FileZilla
FileZilla is the most popular free, open-source FTP client, available for Windows, macOS, and Linux. Download the FileZilla Client edition from the official site — not the Server edition.
You can use the Quickconnect bar at the top for a one-off connection, but for regular use we recommend setting it up in the Site Manager:
- File → Site Manager → New Site
- Protocol: "SFTP - SSH File Transfer Protocol" (or, for FTPS, "FTP" + "Require explicit TLS")
- Host:
yoursite.comor the server's IP address - Port:
22for SFTP,21for FTP/FTPS - Logon Type: Normal → enter your username and password
- Click "Connect"
On your first SFTP connection you'll be asked to confirm the server's fingerprint — check "Always trust this host" and continue.
Uploading and Downloading Files
The FileZilla window is split into two panes: your computer on the left, the server on the right. Everything works on simple drag-and-drop:
- Upload: Select files in the left panel and drag them to the right panel (usually into the
public_htmlfolder) - Download: Drag files from the right panel to the left panel
- Resuming interrupted transfers: If the connection drops, FileZilla remembers the transfer queue — you can retry from the "Failed transfers" tab in the bottom panel
- File permissions: Right-click → File permissions to set chmod values (
644for files,755for folders)
Common Connection Issues
- "Connection timed out": Check the server address and port; your router or antivirus firewall may be blocking ports 21-22.
- "530 Login authentication failed": Your username or password is wrong. Remember that cPanel FTP account usernames follow the
user@domain.comformat. - "425 Can't open data connection": In FileZilla, go to Edit → Settings → Connection → FTP and enable Passive mode.
- Can't retrieve the directory listing: After too many failed attempts, your IP may have been blocked by the server's firewall — ask your hosting provider to lift the block.
Security Tips
- Create a separate, directory-restricted FTP account for each project or person; never share your main cPanel account
- Regularly delete FTP accounts you're no longer using
- If you save passwords in FileZilla, set up a master password (Settings → Interface → Passwords)
- Whenever possible, use SSH key authentication instead of a password for SFTP — we walk through this step by step in our VPS setup guide
- Take a holistic approach to server security: check out our article on 10 critical hosting security measures
Frequently Asked Questions
Where do I find my FTP details?
Your FTP server address, username, and password are included in the welcome email you receive when you purchase hosting. If you can't find them, go to cPanel → FTP Accounts and use the "Configure FTP Client" link to download a ready-made configuration file.
Do I have to pay extra for SFTP?
No. SFTP is free on any plan with SSH access. It's enabled by default on VPS and VDS plans; on shared hosting it depends on whether the provider offers SSH support.
What other apps can I use besides FileZilla?
WinSCP (Windows, free), Cyberduck (macOS/Windows, free), and Transmit (macOS, paid) are popular alternatives. VS Code users can sync files directly from the editor with an SFTP extension.
My connection drops when uploading large files over FTP — what should I do?
Increase the timeout to 120 seconds in FileZilla's settings and lower the number of simultaneous transfers to 2. If the problem persists, try splitting the file into smaller parts or uploading it through cPanel File Manager instead.