Skip to main content
AI/MLjeremylongshore

flyio-cost-tuning

'Optimize Fly.io costs with auto-stop/suspend, right-sizing VMs,

Stars
2,267
Source
jeremylongshore/claude-code-plugins-plus-skills
Updated
2026-05-31
Slug
jeremylongshore--claude-code-plugins-plus-skills--flyio-cost-tuning
View on GitHubRaw SKILL.md

// install — copy + paste into any project

mkdir -p .claude/skills && curl -fsSL https://raw.githubusercontent.com/jeremylongshore/claude-code-plugins-plus-skills/HEAD/plugins/saas-packs/flyio-pack/skills/flyio-cost-tuning/SKILL.md -o .claude/skills/flyio-cost-tuning.md

Drops the SKILL.md into .claude/skills/flyio-cost-tuning.md. Works with Claude Code, Cursor, and any agent that loads SKILL.md files from .claude/skills/.

Fly.io Cost Tuning

Overview

Fly.io charges per-second for running machines plus storage. Key levers: auto-stop idle machines, suspend instead of stop, right-size VMs, and clean up unused volumes.

Pricing Quick Reference

Resource Free Tier Cost
shared-cpu-1x (256mb) 3 VMs free ~$1.94/month each
shared-cpu-1x (512mb) included ~$3.88/month
shared-cpu-2x (1gb) - ~$11.62/month
Volumes 3GB free $0.15/GB/month
Bandwidth 100GB free $0.02/GB after
IPv4 1 free per org $2/month each

Instructions

Strategy 1: Auto-Stop Idle Machines

# fly.toml — stop machines when no traffic
[http_service]
  auto_stop_machines = "stop"     # Full stop (cheapest, ~5s cold start)
  auto_start_machines = true
  min_machines_running = 0        # Allow all machines to stop
  # Use min_machines_running = 1 only for production apps

Strategy 2: Suspend for Faster Resume

# Suspend keeps memory state — resumes in ~100ms but costs ~$0.50/month
[http_service]
  auto_stop_machines = "suspend"

Strategy 3: Audit and Clean Up

# List all apps and their machine counts
fly apps list

# Find idle/stopped machines
fly machine list -a my-app --json | jq '.[] | select(.state != "started") | {id, state, region}'

# Destroy unused apps
fly apps destroy old-app --yes

# List and delete orphaned volumes
fly volumes list -a my-app
fly volumes destroy vol_xxx

Strategy 4: Right-Size VMs

# Check memory usage to see if oversized
fly ssh console -a my-app -C "cat /proc/meminfo | head -3"

# Downgrade if using <50% of allocated memory
fly scale vm shared-cpu-1x --memory 256 -a my-app

Cost Monitoring

# Check current month's usage
fly billing  # Shows org-level billing

# Estimate per-app cost
fly scale show -a my-app  # See VM count and size

Resources

Next Steps

For architecture design, see flyio-reference-architecture.