A system error code is an error number, sometimes followed by a short error message. These numbered error codes are how the server tells website visitors about an error encountered.

FTP server return codes always have three digits and each digit has a special meaning. The first digit denotes whether the response is good, bad or incomplete.

The codes are numbered according to their category. Some codes represent errors while most codes simply communicate the status of the connection. Often times, users might see these response codes listed in their favourite FTP client such as FileZilla.

Below are brief explanations of the most common status and error codes. The table below is provided so that you have some idea whether you can solve the issue on your own or you need to call your ISP for assistance.

FTP Server Response Codes: The First Digit

The first digit in the FTP server code lets you know whether or not that step was successful. They also tell you what you should expect next.

Range Purpose
1xx Positive Preliminary Reply: These status codes indicate that an action has started successfully, but the client expects another reply before it continues with a new command.

Positive Completion Reply: The request was successful. A new request may now be sent.


Positive Intermediate Reply: The command was successful, but the server needs additional information from the client to complete processing the request.

4xx Transient Negative Completion Reply: The command was not successful, but the error is temporary. If the client retries the command, it may succeed.
5xx Permanent Negative Completion Reply: The command was not successful, and the error is permanent. If the client retries the command, it receives the same error.
6xx Protected Reply: These status codes indicate a Protected Reply from FTP.

FTP Response Codes: The Second Digit

The second digit in the FTP server code lets you know what group or category the request belongs too. For instance, it tells you if it regards connections or if it regards authentication.

Range Purpose
x0x Syntax: These replies refer to syntax errors, syntactically correct commands that don’t fit any functional category, unimplemented or superfluous commands.
x1x Information: Replies to requests for information, like help or support.
x2x Connections: Replies regarding the control and data connections.
x3x Authentication and Accounting: Replies for the login process and accounting procedures.
x4x Unspecified as of RFC 959.
x5x File system: Indicates the status of the Server file system vis-a-vis the requested transfer or other file system action.

FTP Server Codes: The Third Digit

The third digit in the FTP serve code gives further explanation on what exactly is causing this code.

FTP Server Codes: List of Error Codes

Here is a full list of known FTP server error codes:

Code Explanation
100 The requested action is being initiated, expect another reply before proceeding with a new command.
110 Restart marker reply.
120 Service ready in xx minutes.
125 Data connection already open; transfer starting.
150 File status okay; about to open data connection.
200 The requested action has been successfully completed.
202 Command not implemented, superfluous at this site.
211 System status, or system help reply.
212 Directory status.
213 File status.
214 Help message. On how to use the server or the meaning of a particular non-standard command.
215 NAME system type. (Where NAME is an official system name from the list in the Assigned Numbers document.)
220 Service ready for new user.
221 Service closing control connection. (Logged out if appropriate.)
225 Data connection open; no transfer in progress.
226 Closing data connection. Requested file action successful (for example; file transfer or file abort).
227 Entering Passive Mode.
228 Entering Long Passive Mode (long address, port).
229 Entering Extended Passive Mode (|||port|).
230 User logged in, proceed.
231 User has logged out and the service is terminated.
232 User logged in, authorized by security data exchange.
234 Security data exchange complete.
250 Requested file action okay, completed.
257 “PATHNAME” created.
300 The command was accepted, but the request is on hold, pending receipt of further information.
331 User name okay, need password.
332 Need account for login.
350 Requested file action pending further information.
400 The command wasn’t accepted and the requested action didn’t occur, but the error condition is temporary and the action may be requested again.
421 Service not available, closing control connection. This may be a reply to any command if the service knows it must shut down.
425 Cannot open data connection.
426 Connection closed; transfer aborted.
430 Need some unavailable resource to process security.
434 Requested host unavailable.
450 Requested file action not taken. File unavailable (e.g., file busy).
451 Requested action aborted. Local error in processing.
452 Requested action not taken. Insufficient storage space in system.
500 Syntax error, command unrecognized. This may include errors such as command line too long.
504 Command not implemented for that parameter.
530 Not logged in.
532 Need account for storing files.
550 Requested action not taken. File unavailable (for example, file not found, or no access).
551 Requested action aborted: Page type unknown.
552 Requested file action aborted. Exceeded storage allocation (for current directory or dataset).
553 Requested action not taken. File name not allowed.
600 Replies regarding confidentiality and integrity.
631 Integrity protected reply.
632 Confidentiality and integrity protected reply.
633 Confidentiality protected reply.

Common FTP status codes and their causes

  • 150 – FTP uses two ports: 21 for sending commands, and 20 for sending data. A status code of 150 indicates that the server is about to open a new connection on port 20 to send some data.
  • 226 – The command opens a data connection on port 20 to perform an action, such as transferring a file. This action has successfully completed, and the data connection is closed.
  • 230 – This status code appears after the client sends the correct password. It indicates that the user has successfully logged on.
  • 331 – You see this status code after the client sends a user name. This same status code appears regardless of whether the user name that is provided is a valid account on the system.
  • 426 – The command opens a data connection to perform an action, but that action is canceled, and the data connection is closed.
  • 530 – This status code indicates that the user cannot log on because the user name and password combination is not valid. If you use a user account to log on, you may have mistyped the user name or password, or you may have chosen to allow only Anonymous access. If you log on with the Anonymous account, you may have configured IIS to deny Anonymous access.
  • 550 – The command is not executed because the specified file is not available. For example, this status code occurs when you try to GET a file that does not exist, or when you try to PUT a file in a directory for which you do not have Write access.

Common FTP Socket Errors

When a computer user checks emails or uses instant messaging or a peer-to-peer (P2P) program, he or she is opening a socket and connecting to another computer or server. A socket error is when there is a problem with the user’s computer or the other computer or server while making this connection. It is caused by either outgoing connection problems or connection problems on the host end.

Listed below are some standard FTP Socket Error Codes:

Range Purpose
11001 Host not found: Check that the hostname or IP address has been entered correctly.
11004 Unable to connect: Check to make sure there isn’t a trailing or leading space character on the FTP hostname. Also, enter the hostname or IP address, not a URL, e.g. if you have entered something like ftp://my.hostname.com/ then change it to my.hostname.com
10061 Connection refused: The hostname is correct, but either the FTP server is not listening on the port, there is no FTP server running, or a firewall is blocking the connection.
10093 This can happen when the network connection goes down, e.g. the FTP server is no longer connected to the network.
10038 If you are using Serv-U modify your FTP server settings so that the following are unticked: “Block anti time-out schemes”, “Block FTP_bounce attacks and FXP”, and “Block users who connect more than 6 times within 60 seconds for 30 minutes.”. You may also want to be sure you are using a passive connection.
10039 There may be a problem getting the IP address for the hostname.
10052 The host you were connected to crashed and rebooted. Try reconnecting at a later time.