TCP Monitors

Check that a port is open and accepting connections on any host.

TCP monitors attempt to open a connection to the specified host and port. If the connection succeeds, the check is up. No data is exchanged — only the connection itself is verified.

When to use TCP monitors

TCP monitors are useful for services that don’t have an HTTP interface:

  • Databases (PostgreSQL on 5432, MySQL on 3306, Redis on 6379)
  • SSH (port 22)
  • SMTP mail servers (ports 25, 587, 465)
  • Custom TCP services and game servers

If your service has an HTTP endpoint, use an HTTP monitor instead — it gives you richer checks like response content and status codes.

Setting up a TCP monitor

In your project, click Add monitor and choose TCP. Enter:

  • Host — the hostname or IP address to connect to
  • Port — the TCP port to check (1–65535)
  • Timeout — how long to wait for a connection before marking the check as down (default: 10 seconds)

TCP monitors only verify that the port is open. They don’t authenticate or validate application responses. A successful TCP check means the port is reachable, not necessarily that the application behind it is healthy.

Documentation