# FTP getting started guide

> A beginner's guide to FTP: choosing a client, creating an FTP account in cPanel, and uploading your website files.

Source: https://www.kualo.com/knowledgebase/cpanel-files-ftp/ftp-getting-started-guide
Updated: 2026-06-13

---

FTP (File Transfer Protocol) is one of the main ways to transfer files between your computer and your web hosting account. This guide walks you through choosing an FTP client, creating an FTP account, and uploading your files.

## What is FTP?

To connect to your hosting account via FTP you need an FTP client - a piece of software that manages the connection. The most popular options are FileZilla and Cyberduck, both available for Windows, macOS, and Linux. See our article on [what is FTP](/knowledgebase/ftp/what-is-ftp) for a full list of clients.

## How to download and install Cyberduck

Download Cyberduck from [cyberduck.io](https://cyberduck.io/).

**Windows**

1. Run the Cyberduck installer you downloaded.
2. Follow the prompts: Next > Next > Install > Finish.

![Cyberduck installation on Windows](https://kb-cdn.kualo.com/17/a6/17a65477d913ca825f8541c88fa21e4184246ce3.gif)

**macOS**

Install Cyberduck from the [Mac App Store](https://cyberduck.io/appstore).

## How to download and install FileZilla

Download FileZilla from [filezilla-project.org](https://filezilla-project.org/download.php?show_all=1).

**Windows**

1. Run the downloaded `.exe` file. You will need a Windows account with administrative privileges.
2. Accept the licence agreement by clicking **I Agree**.
3. Choose whether to install for all users or just yourself.
4. Select the components you want and the destination folder, then complete the installation.

![FileZilla installation on Windows](https://kb-cdn.kualo.com/4e/6c/4e6cb72212218ec474b26c9e13c017ea84dcc5e3.gif)

**macOS**

1. Download the correct package for your processor from the FileZilla site.
2. Double-click the package file - it will extract automatically.
3. Move FileZilla to your Applications folder and open it.

## Creating an FTP account in cPanel

Before you can connect, you need an FTP account.

1. Log in to cPanel and open **FTP Accounts**.

   ![FTP Accounts in cPanel](https://kb-cdn.kualo.com/0c/7b/0c7bed571b50ad108e0dab422703ca1e25971705.gif)

2. Fill in the fields to create a new account:

   - **Log In** - the username for the FTP account.
   - **Domain** - the domain the account is associated with.
   - **Password** - choose a strong password, or use the **Password Generator**.
   - **Directory** - the top-level directory this account can access. For example, entering `public_html/john` restricts the account to `/home/johndoe/public_html/john/` and its subdirectories; it cannot access `/home/johndoe/public_html/` itself. cPanel pre-fills this with `public_html/username`.
   - **Quota** - set a disk space limit or choose **Unlimited**.

   ![Create FTP account form](https://kb-cdn.kualo.com/5f/40/5f40b374b3adba63fd0a8e3a471fa91a85e6efb9.png)

3. Click **Create FTP Account**.

4. Once created, click **Configure FTP Client** next to the account.

   ![Configure FTP Client link](https://kb-cdn.kualo.com/13/0b/130b755f0186ee5497a022c8be01f63932a5dc53.png)

   This shows your connection settings and lets you download configuration files for Cyberduck or FileZilla.

   ![FTP client configuration screen](https://kb-cdn.kualo.com/28/7a/287ab4d223c41782c94f9174189a47cab5490ed9.png)

## Connecting with Cyberduck

The quickest way to connect is to use the Cyberduck configuration file.

1. In cPanel, go to **FTP Accounts** > **Configure FTP Client** and download the Cyberduck FTP configuration file.

   ![Download Cyberduck config file](https://kb-cdn.kualo.com/0e/a4/0ea4c30ec4fa8cd767c38c7c9ae93c06c18932d5.png)

2. Double-click the downloaded file. Cyberduck will open with the FTP server and username already filled in.

   ![Cyberduck login prompt](https://kb-cdn.kualo.com/8b/4d/8b4d56756ca4d9f53636afa0246b0604b6ee3cf2.png)

3. Enter your FTP password and click **Login**.

4. If prompted to switch to **FTP-SSL** (our servers support encrypted connections), click **Change**.

   ![Switch to FTP-SSL prompt](https://kb-cdn.kualo.com/40/20/40201c1041efa319d02c0b4b39c35b7a6324a865.png)

5. If a certificate warning appears, tick **Always Trust** and click **Continue**. This warning shows because the SSL certificate is issued for the server hostname rather than your domain name.

   ![Certificate warning in Cyberduck](https://kb-cdn.kualo.com/80/22/802271e6a85b08d12dd2da8a381db7c6a1914536.png)

You are now connected. The Cyberduck main window shows your server files.

![Cyberduck main window](https://kb-cdn.kualo.com/07/de/07ded85f2e583bc0e82fcb268aedba446b22fed1.png)

To upload a file or create a new folder, right-click in the main window and choose the relevant option.

![Cyberduck right-click menu](https://kb-cdn.kualo.com/59/2e/592edb86dc7d1ac91972ea0035f2f072e485a098.png)

## Connecting with FileZilla

1. In cPanel, go to **FTP Accounts** > **Configure FTP Client** and download the FileZilla FTP configuration file. Save it to your desktop.

   ![Download FileZilla config file](https://kb-cdn.kualo.com/c1/ff/c1ff6034367ebd790bc0afacf7dc634f3d06deb6.png)

2. Open FileZilla and go to **File** > **Import**, then select the `.xml` configuration file you just downloaded.

   ![Importing config file into FileZilla](https://kb-cdn.kualo.com/45/92/4592abccf1a2ed1ce81c105550637432fce4d5fe.gif)

3. Your FTP details are now saved in FileZilla's **Site Manager**. To connect, go to **File** > **Site Manager**, select your server from the list under **My Sites**, and click **Connect**.

   ![FileZilla Site Manager](https://kb-cdn.kualo.com/95/38/95386027c795e837d6a80fd8b0e4be44650db648.png)

4. When prompted, enter your FTP password. Tick **Remember password until FileZilla is closed** if you prefer, then click **OK**.

   ![FileZilla password prompt](https://kb-cdn.kualo.com/eb/e9/ebe949acb01e4d55d76ce69fd13c9cacc070e27f.png)

You are now connected. Your local files appear on the left and your server files on the right.

![FileZilla connected view](https://kb-cdn.kualo.com/64/2f/642f2401c06405651982478552540862e5182ec8.png)

- To upload a file, locate it on the left (local) side and double-click it, or right-click and select **Upload**.
- To create a new folder or file on the server, right-click in the right (remote) side and select **Create directory** or **Create new file**.

## Where to upload your website files

Your hosting account has a directory structure similar to the folders on your computer. Understanding it helps you put files in the right place.

![Home directory structure](https://kb-cdn.kualo.com/cb/7d/cb7df3c92ec4c7e4752c9d660fbf3c48b6fecfcc.jpg)

The three key directories are:

| Directory | Purpose |
|---|---|
| ![](https://kb-cdn.kualo.com/ed/19/ed19f95678c301f021c3a643c0349bb04990b0f0.gif) `/home/johndoe/` | Your home directory. Files here are **not** visible on the internet. FTP, Web Disk, and File Manager all start here. |
| ![](https://kb-cdn.kualo.com/96/d9/96d97b043e2bc6354a04f130613d8f7ae0a7427a.png) `/home/johndoe/public_ftp/` | Used for anonymous FTP access. Anyone can download files here if anonymous FTP is enabled. |
| ![](https://kb-cdn.kualo.com/d9/a7/d9a707bd18845ba335d412c4dc1ac95f2af89a9d.png) `/home/johndoe/public_html/` | Your website's public root. Files here (and in subdirectories) are visible to anyone on the internet. `/home/johndoe/www/` points to the same location. |

:::warning
Always upload website files to `public_html` or a subdirectory of it. Files placed in your home directory (`/home/johndoe/`) will not be visible on the internet.
:::

## Further reading

- [What are my FTP login details?](/knowledgebase/ftp/what-are-my-ftp-login-details)
- [How can I check my FTP client's log?](/knowledgebase/ftp/how-can-i-check-my-ftp-clients-log)
- [How to create additional FTP accounts in cPanel](/knowledgebase/cpanel-how-tos/how-to-create-additional-ftp-accounts-in-cpanel)


---

_Source: Kualo Knowledgebase — https://www.kualo.com/knowledgebase/cpanel-files-ftp/ftp-getting-started-guide · © Kualo Ltd._
