PuTTY is the legacy Windows SSH client. OpenSSH is the modern default. The right answer depends on the team: PuTTY for the legacy workflow, OpenSSH for the modern workflow. Most teams in 2026 are using OpenSSH on Windows; the teams that are still on PuTTY are the ones that have a long-standing workflow.
Table of contents
What PuTTY is
PuTTY is the legacy Windows SSH client. The application was first released in 1999; it became the default SSH client on Windows before Windows 10 added OpenSSH.
PuTTY has a graphical interface for the configuration: the hostname, the port, the key file, the protocol. The interface is dated but functional.
What OpenSSH is
OpenSSH is the modern default. The client is the same OpenSSH that ships on Linux and macOS; the Windows port is the same code, with a Windows-specific build.
OpenSSH on Windows has:
- The
sshcommand for the SSH client. - The
ssh-keygencommand for generating keys. - The
ssh-agentcommand for the key agent. - The
sshdcommand for the SSH server (Windows 10+).
The key format
The key format:
- PuTTY. PuTTY uses its own key format (.ppk). The key is generated by PuTTYgen, the PuTTY key generator.
- OpenSSH. OpenSSH uses the standard OpenSSH key format. The key is generated by
ssh-keygen.
The team that uses PuTTY keys needs to convert them to OpenSSH format. The command: puttygen key.ppk -O private-openssh -o key_openssh.
The configuration
The configuration:
- PuTTY. The configuration is in the registry (
HKCU\Software\SimonTatham\PuTTY). The team that wants to share the configuration across machines can export the registry key. - OpenSSH. The configuration is in
~/.ssh/config(the SSH client config) and~/.ssh/known_hosts(the known hosts file). The team that wants to share the configuration across machines can copy the file.
The features
The features:
- PuTTY. The legacy feature set: SSH, Telnet, Rlogin, serial. The PuTTY key generator (PuTTYgen). The PuTTY SCP client (PSCP). The PuTTY SFTP client (PSFTP).
- OpenSSH. The modern feature set: SSH, SFTP (via the
sftpcommand), key generation, key agent, port forwarding, X11 forwarding, jump hosts.
The decision
The decision:
- The team that is on Windows and has a long-standing PuTTY workflow: stick with PuTTY.
- The team that is starting a new workflow: use OpenSSH.
- The team that wants to migrate from PuTTY to OpenSSH: export the PuTTY keys to OpenSSH format, set up the
~/.ssh/configfile, and switch the team over.
FAQ
What is PuTTY?
The legacy Windows SSH client. The application was first released in 1999; it became the default SSH client on Windows before Windows 10 added OpenSSH.
What is OpenSSH?
The modern default SSH client. The same code that ships on Linux and macOS, with a Windows-specific build. Available on Windows 10+.
What is the difference between PuTTY and OpenSSH?
PuTTY is the legacy Windows SSH client with its own key format (.ppk). OpenSSH is the modern default with the standard OpenSSH key format. OpenSSH has the modern feature set; PuTTY has the legacy feature set.
How do I convert a PuTTY key to OpenSSH?
puttygen key.ppk -O private-openssh -o key_openssh. The command converts the PuTTY key to the OpenSSH format.
Should I use PuTTY or OpenSSH on Windows?
If you have a long-standing PuTTY workflow, stick with PuTTY. If you are starting a new workflow, use OpenSSH.
Is PuTTY still maintained?
Yes, but the development is slow. The team that wants the modern feature set should use OpenSSH on Windows.
If you are setting up SSH access for a new project, the RunxBuild hosting calculator is the place to model the line items. The instances, the keys, the storage, the SSH sessions - each one is a separate number, and the team’s mental model for the platform is the sum of those numbers. The RunxBuild dashboard is where the team sees the actual SSH sessions in one place.