Skip to main content
Illustration by Annie Ruygt of Frankie the hot air balloon demonstrating a pricing chart on a whiteboard Fly.io bills for the resources you use, with no monthly platform fee. The smallest always-on app costs $2.19 per 30 days. A small web app with a Managed Postgres database costs about $44 a month. The table below lists what we charge for, followed by a few examples of what real-ish apps cost.

Everything we bill for

Prices are in USD. Machine prices in this table are for Ashburn, Virginia (iad) and Secaucus, NJ (ewr), our lowest-priced regions. Machine prices vary by region; see Started Fly Machines for the full list. Monthly Machine prices assume 30 days of continuous runtime. Machines are billed by the second while they’re running, so an always-on Machine costs slightly more in a 31-day month. New organizations use Pay As You Go pricing. There’s no monthly platform fee; you pay for the resources and services you use.

What does a typical app cost?

Here are three example apps and what they’d cost per month. We use Ashburn (iad) for the examples unless otherwise noted, and assume the Machines run continuously. Traffic and storage marked “assumed” are example workloads, not included allowances. You can use the pricing calculator to estimate costs for your own app. If your Machines auto-stop when they’re idle, your compute costs can be lower. You pay for the time a Machine is running and for its rootfs while it’s stopped. If the Machine runs all month, you’ll pay the full always-on cost shown here. See Cost Management for more ways to estimate and control your bill.

A small web app with Managed Postgres

The app and database run in the same region, so data transfer between them is free. The app also uses a shared IPv4 address, which is free. In this example, Managed Postgres accounts for most of the bill. The app Machine and its 10GB volume cost $5.19 per month.

A Discord bot or background worker running 24/7

This example doesn’t use a volume, database, or dedicated IPv4 address, so there’s nothing else to pay for. If the worker needs more memory, a shared-cpu-1x Machine with 512MB costs $3.69 per month when running continuously.

An app running in three regions

Suppose an app runs one 1GB Machine each in Ashburn (iad), Frankfurt (fra), and Singapore (sin). Each Machine serves 50GB of traffic to users and sends 10GB of private network traffic to Machines in other regions during the month. Machine prices vary by region, which accounts for the different compute costs above. Cross-region private network traffic is also billed according to the region it leaves. This example uses granular data transfer pricing. Organizations created before July 18, 2024 that haven’t switched to granular pricing pay the public internet rate for cross-region traffic instead. See data transfer pricing.

Is there a free tier?

No. New organizations don’t have a free tier or a monthly free usage allowance. New accounts do get a free trial, which lasts for up to 2 hours of Machine runtime or 7 days, whichever comes first. You don’t need a credit card to start the trial. After the trial ends, you’ll need to add a credit card to keep using billable resources. The cheapest always-on app is a shared-cpu-1x Machine with 256MB of RAM in Ashburn (iad) or Secaucus (ewr). It costs $2.19 per 30 days of continuous runtime, plus any outbound data transfer ($0.02/GB in North America and Europe). Some resources and allowances are free even after the trial ends. These include the first 10GB of volume snapshot storage each month, the first 10 single-hostname SSL certificates, inbound data transfer, shared IPv4 addresses, and IPv6 addresses. Organizations on plans discontinued in October 2024 keep the free allowances included with those plans. See Discontinued Plans.

How it works

Fly.io services are billed per organization, with Linked Organizations reporting resource usage to their parent Billing Organization. Plans get complicated, so we just charge based on usage. Pick and choose which pieces you need for your application; that’s all you’ll see on your invoice. Organizations are administrative entities on Fly.io that let you add members, share app development environments, and manage billing. Billing is based on the resources provisioned for your apps, pro-rated for the time they are provisioned. Organizations may be subject to automated scaling limits to prevent abuse or to help with capacity planning. Email the address in the error message if you run into such a limit and it’s getting in your way. All organizations (except for Linked Organizations) require a credit card on file.

Compute

We charge for started and stopped Machines differently. For more details about how costs are calculated, see Machine billing. To understand the difference between performance and shared CPU types in Machines, see CPU performance.

Started Fly Machines

Stopped Fly Machines

For stopped Machines we charge only for the root file system (rootfs) needed for each Machine. Each 1GB of rootfs for a Machine stopped for 30 days is $0.15. The amount of rootfs needed is defined by your OCI image generated on your app plus a few containerd tweaks on the underlying file system.

Machine reservation blocks

You’ll get a 40% discount when you reserve a block of compute time, either for performance Machines or shared Machines, in a specific region. Reservations apply to any number of Machines of the specified CPU class, in the specified region, in any of your organisation’s apps. The available reservation sizes are: Performance Machines
  • $144/year for $20/month of usage
  • $1,440/year for $200/month of usage
  • $14,400/year for $2,000/month of usage
Shared Machines
  • $36/year for $5/month of usage
  • $360/year for $50/month of usage
  • $3,600/year for $500/month of usage
You pay the “per year” amount upfront, and each month receive a credit worth the “per month” amount. The credit does not rollover; it’s only valid for the month in which it’s granted. The credit applies only to CPU and additional RAM charges. There’s no limit on the number or combinations of blocks that can be purchased. Reservations are backdated to the first day of the month in which they’re purchased. For example, if you purchase a $36/year shared Machines block in cdg, you’ll pay $36 upfront and receive $5/month of credits applicable to shared Machines in cdg for 12 months, starting with the month of the purchase. Amortised over 12 months, the $36 upfront cost is $3/month, which is a 40% discount on the $5/month of credits you receive. You can set up reservations via self-service in the billing section of your Fly.io dashboard. They apply to usage starting on the 1st, so setting up reservations any time in the month will give you the credits the entire month.

Managed Postgres

The price of running Fly.io Managed Postgres depends on your selected Managed Postgres Plan and the amount of storage your databases use. Current pricing for Managed Postgres plans and storage is available here.
Important: Managed Postgres lives outside your apps. Deleting an app won’t delete its database. Have a look in your Dashboard when you’re cleaning up. A quick check can save you a surprise charge later.

Persistent Storage Volumes

Volumes

Fly Volumes are local persistent storage for Machines.
  • $0.15/GB per month of provisioned capacity
Volume billing is pro-rated to the hour. You’ll be charged for volumes that you create, whether they are attached to a Machine or not, including when an attached Machine is stopped.

Volume Snapshots

New charges

Starting January 1st 2026, we’re introducing charges for volume snapshot storage. You’ll see the first charges on the invoice issued at the start of February 2026.

If you’re an existing customer, you can check your usage in the Billing section of the dashboard on your Upcoming Invoice and in the Cost Explorer.

  • $0.08/GB per month
  • First 10GB free each month
Volume Snapshot billing is pro-rated to the hour. Automatic daily snapshots with 5 days retention are enabled by default on new volumes. This can be adjusted or disabled. Usage is calculated based on the total stored size of the snapshots, not the provisioned volume size. You’re only charged for the actual data stored - if you’ve written 1GB to a 10GB volume, you’ll be charged for around 1GB of snapshot storage. Snapshots for each volume are stored incrementally, so you’ll only be charged for data that has changed since the previously stored snapshot.

Network prices

Anycast IP addresses

Each application receives a shared IPv4 address and unlimited Anycast IPv6 addresses for global load balancing. Dedicated IPv4 addresses are $2/mo.

Managed SSL certificates

We use Let’s Encrypt to issue certificates, and donate half of our SSL fees to them at the end of each calendar year.
  • Single hostname certificates: $0.10/mo
  • Wildcard certificates: $1/mo
Every organization’s first 10 single hostname certificates are free.

Data transfer pricing

We bill for data leaving your app destined for the public internet or for apps or Machines in other regions, including:
  • Data egress to the Internet, from Machine to edge server to Internet
  • Data transfer over private network between regions, from Machine to edge server and edge server to Machine
  • Data transfer to some extensions like Upstash Redis
The following types of traffic are free:
  • All inbound data transfer
  • Data transfer between apps or Machines in the same region (for organizations using granular data transfer rates)
  • Data transfer from apps without an assigned IP address (for organizations not using granular data transfer rates)
Fly.io pricing is per region group for outbound data transfer. You’ll see a more detailed breakdown of cost per region and per traffic type on your monthly invoice.
Important: Organizations created after July 18 2024 are automatically opted-in to use the granular data transfer rates and are billed at a different rate for private network data transfer between regions, per the following table. Organizations not using granular data transfer rates are billed for all data transfer (excluding that listed as free above) at the “Egress to public internet” rate.
To opt-in to granular bandwidth pricing, go to the Organizations page in the dashboard, click the organization name to change, then click Switch to granular bandwidth pricing. You won’t be able to return to using the non-granular data transfer rates once you opt in.

Static Egress IPs for Machines

Static egress IPs for Machines provide dedicated outbound IP addresses for your Machines. When you allocate a static egress IP, you’ll get both an IPv4 and IPv6 address for this single price.
  • $0.005 per hour (~$3.60/month)
  • Machines do not have a static IP by default

Support

Community support is included for all customers, regardless of usage level. You can get access to a support plan by purchasing a Standard ($29/month), Premium ($199/month), or Enterprise (starting at $2500/month) package in the Support section of your dashboard. For more about Support, see Support at Fly.io.

Fly Kubernetes

Fly Kubernetes (FKS) is a managed Kubernetes service that runs on Fly.io.

Extensions

Fly.io offers managed services operated by third parties, such as Tigris Object Storage and Upstash Redis. When you provision their services, you become their customer, and you pay their list prices via your monthly Fly.io bill. Charges are updated daily in your Fly.io dashboard. You will not be billed separately for:
  • Machines running the services, which are hosted in the provider’s account
  • IP addresses associated with the service
You will be billed separately for data transfer to these external third-party services, including Tigris Object Storage. See our data transfer pricing for details.

Unsupported Products

Unmanaged Fly Postgres (Unsupported)

Fly Postgres is a PostgreSQL database that you create and then manage yourself. Fly Postgres clusters are Fly Apps that consist of Machines, volumes, and any configured extra memory. The Machine price and volume price for Fly Postgres are the same as any other Machine and volume you’d run on Fly.io. Assuming the Machines are running all the time, the cost for the preset configurations is about $2/month for a single node cluster for dev projects and from about $82 to $164/month for a three-node production cluster. You don’t need to keep the preset configurations, you can scale your Fly Postgres Machines to suit your workload at any time.

Legacy plans

On a legacy plan and wondering what that includes? Read more about Discontinued Plans.