From 9d90e85d8e63df404862b56c0e306ff4676c57bc Mon Sep 17 00:00:00 2001 From: Kaelyn Date: Mon, 8 Jun 2026 18:01:23 -0700 Subject: [PATCH 1/8] Clarify suspend behavior with volumes and region capacity The suspend/resume page didn't mention volumes or whether a suspended machine frees up regional capacity, both of which come up when people evaluate suspend. - Add a "Suspend and volumes" section: a volume isn't required for suspend, and volume data is unaffected by suspend, resume, and cold starts (the snapshot and the volume are separate things). - Add a note that a suspended machine releases host CPU and memory like a stopped machine, but still exists and uses storage. - Note the volume cost for a suspended machine in the Billing section. --- reference/suspend-resume.html.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/reference/suspend-resume.html.md b/reference/suspend-resume.html.md index 93893e3772..f3625a4636 100644 --- a/reference/suspend-resume.html.md +++ b/reference/suspend-resume.html.md @@ -128,6 +128,23 @@ Snapshots are tied to the exact code and state of the machine they were taken fr --- +## Suspend and volumes + +Suspend automatically saves a machine's memory state to persistent storage. You don't need to attach a [volume](/docs/volumes/) for suspend to work, and the snapshot isn't stored on a volume. + +If your machine does have a volume attached, the volume and its data aren't affected by suspend and resume. It helps to keep two things separate: + +- The **snapshot** is the saved CPU and memory state, managed by Fly. It can be discarded (for example, when you deploy new code), which forces a [cold start](#snapshot-behavior-with-suspend). +- Your **volume** is your own persistent storage. Its data survives suspend, resume, and cold starts, just as it does across a normal stop and start. + +Even if a snapshot is discarded and the machine cold starts, the data on your volume is still there. + +
+A suspended machine releases the CPU and memory it was using, just like a stopped machine, so it frees up compute capacity in the region. It still exists and uses storage, though, so suspending isn't the same as deleting. +
+ +--- + ## Handling Network Connections After Resume On resume, the machine thinks its network connections are still live. External systems (databases, APIs) may disagree. @@ -164,6 +181,8 @@ Tips: Suspended machines cost the same as stopped machines: storage only. There are no CPU/RAM charges. +If a suspended machine has a volume, you keep paying for that volume the whole time it exists. [Volume storage](/docs/about/pricing/#persistent-storage-volumes) is billed whether the machine is running, stopped, or suspended. + --- ## Monitoring & Debugging From 6a0293470fec0d308214badff73b558be2c31529 Mon Sep 17 00:00:00 2001 From: Kaelyn Date: Mon, 8 Jun 2026 18:13:38 -0700 Subject: [PATCH 2/8] Clarify suspend behavior with volumes and region capacity The suspend/resume page didn't mention volumes or whether a suspended machine frees up regional capacity, both of which come up when people evaluate suspend. - Add a "Volume behavior with suspend" section: a volume isn't required for suspend, and volume data is unaffected by suspend, resume, and cold starts (the snapshot and the volume are separate things). - Add a note after Billing: suspending lowers cost (storage only) but doesn't free up room in a region, since a suspended machine still counts toward regional capacity. - Note the volume cost for a suspended machine in the Billing section. --- reference/suspend-resume.html.md | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/reference/suspend-resume.html.md b/reference/suspend-resume.html.md index f3625a4636..c05c89f4b2 100644 --- a/reference/suspend-resume.html.md +++ b/reference/suspend-resume.html.md @@ -128,7 +128,7 @@ Snapshots are tied to the exact code and state of the machine they were taken fr --- -## Suspend and volumes +## Volume behavior with suspend Suspend automatically saves a machine's memory state to persistent storage. You don't need to attach a [volume](/docs/volumes/) for suspend to work, and the snapshot isn't stored on a volume. @@ -139,10 +139,6 @@ If your machine does have a volume attached, the volume and its data aren't affe Even if a snapshot is discarded and the machine cold starts, the data on your volume is still there. -
-A suspended machine releases the CPU and memory it was using, just like a stopped machine, so it frees up compute capacity in the region. It still exists and uses storage, though, so suspending isn't the same as deleting. -
- --- ## Handling Network Connections After Resume @@ -185,6 +181,12 @@ If a suspended machine has a volume, you keep paying for that volume the whole t --- +
+Suspending a machine lowers your cost (you're billed for storage only, with no CPU/RAM charges; see [Billing](#billing)), but it doesn't free up room in a region. A suspended machine still counts toward your regional capacity, so suspending isn't a way to fit more machines into a capacity-constrained region. +
+ +--- + ## Monitoring & Debugging ```bash From bf7e18084163a050a4ff8372cf8cbc183c1f8b8e Mon Sep 17 00:00:00 2001 From: Kaelyn Date: Tue, 9 Jun 2026 09:32:18 -0700 Subject: [PATCH 3/8] Clean up the suspend capacity note Group the regional-capacity note inside the Billing section instead of floating it between horizontal rules, drop the circular link back to Billing and the duplicated cost wording, and fix the phrasing (a region's capacity is shared, not a per-customer quota). --- reference/suspend-resume.html.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/reference/suspend-resume.html.md b/reference/suspend-resume.html.md index c05c89f4b2..81d8818083 100644 --- a/reference/suspend-resume.html.md +++ b/reference/suspend-resume.html.md @@ -179,10 +179,8 @@ Suspended machines cost the same as stopped machines: storage only. There are no If a suspended machine has a volume, you keep paying for that volume the whole time it exists. [Volume storage](/docs/about/pricing/#persistent-storage-volumes) is billed whether the machine is running, stopped, or suspended. ---- -
-Suspending a machine lowers your cost (you're billed for storage only, with no CPU/RAM charges; see [Billing](#billing)), but it doesn't free up room in a region. A suspended machine still counts toward your regional capacity, so suspending isn't a way to fit more machines into a capacity-constrained region. +Suspending lowers your cost, but it doesn't free up room in a region. A suspended machine still takes up capacity in the region, so it isn't a way to fit more machines into a capacity-constrained one.
--- From 2d1136b5be308ad07b4756fa665f36607e33e8e9 Mon Sep 17 00:00:00 2001 From: Kaelyn <87516931+Lucais11@users.noreply.github.com> Date: Tue, 9 Jun 2026 13:03:50 -0700 Subject: [PATCH 4/8] Update reference/suspend-resume.html.md Co-authored-by: Kristin Martin --- reference/suspend-resume.html.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reference/suspend-resume.html.md b/reference/suspend-resume.html.md index 81d8818083..caf68c1991 100644 --- a/reference/suspend-resume.html.md +++ b/reference/suspend-resume.html.md @@ -180,7 +180,7 @@ Suspended machines cost the same as stopped machines: storage only. There are no If a suspended machine has a volume, you keep paying for that volume the whole time it exists. [Volume storage](/docs/about/pricing/#persistent-storage-volumes) is billed whether the machine is running, stopped, or suspended.
-Suspending lowers your cost, but it doesn't free up room in a region. A suspended machine still takes up capacity in the region, so it isn't a way to fit more machines into a capacity-constrained one. +Suspending a machine lowers your costs, but it does not free capacity in a region. Suspended machines still reserve their resources, so suspension is not a way to fit more machines into a capacity-constrained region
--- From 5c8f2f8ef258a64c44629a595a0d6400811c76a6 Mon Sep 17 00:00:00 2001 From: Kaelyn <87516931+Lucais11@users.noreply.github.com> Date: Tue, 9 Jun 2026 13:04:03 -0700 Subject: [PATCH 5/8] Update reference/suspend-resume.html.md Co-authored-by: Kristin Martin --- reference/suspend-resume.html.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reference/suspend-resume.html.md b/reference/suspend-resume.html.md index caf68c1991..71e268f77a 100644 --- a/reference/suspend-resume.html.md +++ b/reference/suspend-resume.html.md @@ -135,7 +135,7 @@ Suspend automatically saves a machine's memory state to persistent storage. You If your machine does have a volume attached, the volume and its data aren't affected by suspend and resume. It helps to keep two things separate: - The **snapshot** is the saved CPU and memory state, managed by Fly. It can be discarded (for example, when you deploy new code), which forces a [cold start](#snapshot-behavior-with-suspend). -- Your **volume** is your own persistent storage. Its data survives suspend, resume, and cold starts, just as it does across a normal stop and start. +- The **volume** is your persistent storage. Its data survives suspend, resume, and cold starts, just as it does across a normal stop and start. Even if a snapshot is discarded and the machine cold starts, the data on your volume is still there. From 227c632ca6f43a712fe42fc38a12946316696651 Mon Sep 17 00:00:00 2001 From: Kaelyn <87516931+Lucais11@users.noreply.github.com> Date: Tue, 9 Jun 2026 13:04:10 -0700 Subject: [PATCH 6/8] Update reference/suspend-resume.html.md Co-authored-by: Kristin Martin --- reference/suspend-resume.html.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reference/suspend-resume.html.md b/reference/suspend-resume.html.md index 71e268f77a..8c2d52b6a5 100644 --- a/reference/suspend-resume.html.md +++ b/reference/suspend-resume.html.md @@ -177,7 +177,7 @@ Tips: Suspended machines cost the same as stopped machines: storage only. There are no CPU/RAM charges. -If a suspended machine has a volume, you keep paying for that volume the whole time it exists. [Volume storage](/docs/about/pricing/#persistent-storage-volumes) is billed whether the machine is running, stopped, or suspended. +If a suspended machine has a volume, you continue paying for the volume for as long as it exists [Volume storage](/docs/about/pricing/#persistent-storage-volumes) is billed whether the machine is running, stopped, or suspended.
Suspending a machine lowers your costs, but it does not free capacity in a region. Suspended machines still reserve their resources, so suspension is not a way to fit more machines into a capacity-constrained region From 16c37195d11b2e7afa58e214dbfb1703b58ce130 Mon Sep 17 00:00:00 2001 From: Kaelyn <87516931+Lucais11@users.noreply.github.com> Date: Tue, 9 Jun 2026 13:04:44 -0700 Subject: [PATCH 7/8] Update reference/suspend-resume.html.md Co-authored-by: Kristin Martin --- reference/suspend-resume.html.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reference/suspend-resume.html.md b/reference/suspend-resume.html.md index 8c2d52b6a5..5e002d1299 100644 --- a/reference/suspend-resume.html.md +++ b/reference/suspend-resume.html.md @@ -132,7 +132,7 @@ Snapshots are tied to the exact code and state of the machine they were taken fr Suspend automatically saves a machine's memory state to persistent storage. You don't need to attach a [volume](/docs/volumes/) for suspend to work, and the snapshot isn't stored on a volume. -If your machine does have a volume attached, the volume and its data aren't affected by suspend and resume. It helps to keep two things separate: +If your machine does have an attached volume, the volume and its data aren't affected by suspend and resume. It helps to think of the machine snapshot and the volume as separate things: - The **snapshot** is the saved CPU and memory state, managed by Fly. It can be discarded (for example, when you deploy new code), which forces a [cold start](#snapshot-behavior-with-suspend). - The **volume** is your persistent storage. Its data survives suspend, resume, and cold starts, just as it does across a normal stop and start. From 4d8602a90270e3cd15e7646e5424f5dbf05e2bc0 Mon Sep 17 00:00:00 2001 From: Kaelyn <87516931+Lucais11@users.noreply.github.com> Date: Tue, 9 Jun 2026 13:04:51 -0700 Subject: [PATCH 8/8] Update reference/suspend-resume.html.md Co-authored-by: Kristin Martin --- reference/suspend-resume.html.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reference/suspend-resume.html.md b/reference/suspend-resume.html.md index 5e002d1299..f9f187bba1 100644 --- a/reference/suspend-resume.html.md +++ b/reference/suspend-resume.html.md @@ -134,7 +134,7 @@ Suspend automatically saves a machine's memory state to persistent storage. You If your machine does have an attached volume, the volume and its data aren't affected by suspend and resume. It helps to think of the machine snapshot and the volume as separate things: -- The **snapshot** is the saved CPU and memory state, managed by Fly. It can be discarded (for example, when you deploy new code), which forces a [cold start](#snapshot-behavior-with-suspend). +- The **snapshot** is the saved CPU and memory state, managed by Fly. It can be discarded, for example, during a deploy, which forces a [cold start](#snapshot-behavior-with-suspend). - The **volume** is your persistent storage. Its data survives suspend, resume, and cold starts, just as it does across a normal stop and start. Even if a snapshot is discarded and the machine cold starts, the data on your volume is still there.