Skip to content

AWS Transfer Family

AWS Transfer Family servers (SFTP, FTPS, FTP) can become a significant source of hidden costs when left in a stopped state. Unlike many other AWS services, Transfer Family servers continue to incur charges even when they are offline.

The Problem

When you stop a Transfer Family server using aws transfer stop-server, the server enters an OFFLINE state. However, AWS continues to bill for the server endpoint at approximately $0.30 per hour (~$219/month) regardless of whether it's actively serving traffic.

This behavior catches many users off guard, as they expect stopped resources to stop incurring charges.

What We Detect

unusd.cloud identifies Transfer Family servers that are in:

  • OFFLINE state - Server has been manually stopped
  • STOPPING state - Server is in the process of stopping

Detection Details

Our detection algorithm:

  1. Scans all Transfer Family servers across enabled regions
  2. Identifies servers not in the ONLINE or STARTING state
  3. Calculates the ongoing monthly cost based on AWS pricing
  4. Provides actionable recommendations

Potential Savings

State Hourly Cost Monthly Cost Annual Cost
OFFLINE $0.30 ~$219 ~$2,628

Recommendations

When a stopped Transfer Family server is detected, consider:

  1. Delete the server if it's no longer needed
  2. Start the server if it should be actively serving traffic
  3. Tag with whitelist if the stopped state is intentional and temporary

CLI Commands

# List all Transfer Family servers
aws transfer list-servers --region <region>

# Check server state
aws transfer describe-server --server-id <server-id> --region <region>

# Delete an unused server
aws transfer delete-server --server-id <server-id> --region <region>

# Start a server (if it should be running)
aws transfer start-server --server-id <server-id> --region <region>

Required IAM Permissions

The following permissions are required in your spoke role:

- transfer:DescribeServer
- transfer:ListServers
- transfer:ListTagsForResource

These permissions are included in spoke role template version 1.0 and later.