Outside of the free tier, Fly’s outbound transfer is $0.02 per GB. If I have multiple apps and they talk to each other using the private network (.internal
addresses) - will the data transfer also count towards that cost?
According to this answer from Fly, yes it is billed for:
This has changed! If an app has a public IP address (fly ips list
will show you), we bill for outbound bandwidth. If it doesn’t, we don’t currently bill for outbound transfer
What you should expect in the future is:
- No billing for outbound bandwidth in the same region
- Reduced billing to internal traffic to other regions
- Same billing as now for outbound traffic that leaves our network
We aren’t currently billing for #2 because, but we will be when we have the infrastructure to support it.
Fantastic! Because fly is really good for scaling quickly but I’d prefer to not have my outbound transfer bill scale quickly as well
Right now, I have an app that has an outbound IP address (when I run fly ips list) but I am only accessing it thru an internal IP address from another app in the same reason. Will that be billed as an outbound transfer? I’m going to release the IPs anyway, but just curious.
(It would be great if the pricing page was updated to have this info)
Yes that will currently get billed as outbound transfer. It’s not a great heuristic, but it was the simplest way to distinguish until we do a real bandwidth account project with lots of BPF.
That makes sense.
One additional question: Say I have two apps in the same region, one app (App A) has a public IP and the other (App B) doesn’t. App A makes an internal request to App B using the .internal
dns name. Does that get billed?
Also, if I have another VPS running outside of fly.io that is connected to the region via wireguard, is that billed?