Both are protocols for moving data over a network, built for different jobs. HTTP was designed to request and deliver documents for the web, and is now used for almost everything. FTP was designed to transfer and manage files on a remote server, with directory listing, renaming and deletion built in.
The core difference
- HTTP — Hypertext Transfer Protocol. Request a resource, receive it. Stateless and document-oriented.
- FTP — File Transfer Protocol. A session on a remote filesystem: list directories, upload, download, rename, delete.
FTP is a filesystem protocol
That is the real distinction. HTTP fetches a thing at an address. FTP gives you an interactive session with an actual directory tree, which is why it was the standard way to publish a website for years — you connected and managed files as if they were local.
The two-connection design
FTP is unusual in opening a separate connection for data and another for commands. That design predates modern networking, and it is the reason FTP behaves badly through firewalls and NAT, and why the awkward distinction between active and passive mode exists at all.
Why FTP is being retired
Plain FTP sends credentials and data unencrypted. Anyone positioned on the network can read the password. This is not a subtle weakness, and it is why browsers removed FTP support — Chrome and Firefox both dropped it in 2021.
The replacements:
- SFTP — file transfer over SSH. Confusingly, not related to FTP at all despite the name.
- FTPS — FTP with TLS added. Genuinely FTP, encrypted.
- HTTPS — HTTP with TLS, now the default for essentially everything.
Why HTTP won
It is simpler, works through firewalls, and carries any content type. Once it gained encryption and resumable transfers, the reasons to use FTP largely evaporated, and file uploads moved to HTTP-based APIs.
The version numbers
HTTP/1.1 opened a connection per request. HTTP/2 multiplexes many requests over one. HTTP/3 moves to QUIC, over UDP rather than TCP, to avoid one lost packet stalling everything else. FTP has had no equivalent modernisation — it is being replaced rather than upgraded.
Frequently asked questions
What is the difference between FTP and HTTP?
HTTP requests and delivers documents; FTP gives an interactive session on a remote filesystem with listing, renaming and deletion built in.
Why did browsers drop FTP support?
Plain FTP sends credentials and data unencrypted. Chrome and Firefox both removed support in 2021.
Is SFTP just FTP with encryption?
No. SFTP is file transfer over SSH and is unrelated to FTP despite the name. FTPS is the version that genuinely is FTP with TLS added.