You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
description: Understand the Recovery Point Objective (RPO) and Recovery Time Objective (RTO) in Temporal Cloud.
3
+
title: Outages and Recovery Objectives (RTO / RPO)
4
+
sidebar_label: Outages and Recovery Objectives (RTO / RPO)
5
+
description: Understand the types of outages Temporal Cloud is designed to handle, and the Recovery Point Objective (RPO) and Recovery Time Objective (RTO) for each.
6
6
slug: /cloud/rpo-rto
7
7
toc_max_heading_level: 4
8
8
keywords:
@@ -11,6 +11,7 @@ keywords:
11
11
- RTO
12
12
- Recovery Point Objective
13
13
- Recovery Time Objective
14
+
- outages
14
15
tags:
15
16
- Recovery Point Objective
16
17
- Recovery Time Objective
@@ -23,30 +24,114 @@ When a cloud outage disrupts a Namespace, Temporal Cloud takes measures to maint
23
24
24
25
To help users plan for keeping critical Workflows available during a cloud outage, Temporal Cloud publishes goals for the recovery time and recovery point for each kind of outage. These goals are called the Recovery Time Objective (RTO) and Recovery Point Objective (RPO). These objectives are complementary to Temporal Cloud's [Service Level Agreement (SLA)](/cloud/sla).
25
26
26
-
To achieve the lowest RPO and RTO, Temporal Cloud offers [High Availability](/cloud/high-availability) features that keep Workflows operational with minimal downtime. When High Availability is enabled on a Namespace, the user chooses a region to place a "replica" that will take over in the event of a failure. The location of the replica determines the type of replication used and the type of outages that can be handled. Multi-region Replication is when the active and replica are in different regions on the same cloud (e.g., AWS us-east-1 and AWS us-west-2). Multi-cloud Replication is when the active and replica are in different clouds (e.g., AWS and GCP). Same-region Replication is when the active and replica are in the same region. Temporal always places the active and replica in different [cells](/cloud/overview#cell-based-infrastructure).
27
-
28
-
As Workflows progress in the active region, history events are asynchronously replicated to the replica.
29
-
Because replication is asynchronous, High Availability does not impact the latency or throughput of Workflow Executions in the active region.
30
-
If an outage hits the active region or cell, Temporal Cloud will fail over to the replica so that existing Workflow Executions will continue to run and new Workflow Executions can be started.
31
-
32
-
The Recovery Point Objective and Recovery Time Objective for Temporal Cloud depend on the type of outage and which [High Availability](/cloud/high-availability) feature your Namespace has enabled. Temporal Cloud can only set an RPO and RTO for cases where it has the ability to mitigate the outage. Therefore, the below RPOs and RTOs apply to Namespaces that have the corresponding type of replication and have enabled Temporal-initiated failovers, which comes enabled by default.
33
-
34
-
1.**Availability zone outage**:
35
-
1._Applicable Namespaces:_ All Namespaces
36
-
2._Goals:_ Zero RPO and near-zero RTO
37
-
3._More details:_ Historically, these have been the most common type of outage in the cloud. Temporal Cloud replicates every Namespace across three availability zones. The failure of a single availability zone is handled automatically by Temporal Cloud behind the scenes, with no potential for data loss, and little-to-no observable downtime to the end user.
38
-
2.**Cell outage**:
39
-
1._Applicable Namespaces:_ Namespaces with Same-region Replication, Multi-region Replication, or Multi-cloud Replication
40
-
2._Goals:_ 1-minute RPO and 20-minute RTO
41
-
3._More details:_ Temporal Cloud runs on a [cell architecture](/cloud/sla). Each cell contains the software and services necessary to host a Namespace. While unlikely, it's possible for a cell to experience a disruption due to uncaught software bugs or sub-component failures (e.g., an outage in the underlying database).
42
-
3.**Regional outage**:
43
-
1._Applicable Namespaces:_ Namespaces with Multi-region Replication or Multi-cloud Replication
44
-
2._Goals:_ 1-minute RPO and 20-minute RTO
45
-
3._More details:_ On [rare occasions](https://temporal.io/blog/how-devs-kept-running-during-the-aws-us-east-1-oct-20-2025), an entire region within a cloud provider will be degraded. Since Namespaces depend on the cloud provider's infrastructure, Temporal Cloud is not immune to these outages.
46
-
4.**Cloud-wide outage**:
47
-
1._Applicable Namespaces:_ Namespaces with Multi-cloud Replication
48
-
2._Goals:_ 1-minute RPO and 20-minute RTO
49
-
3._More details:_ An entire cloud provider has an outage across most or all regions. Since cloud providers strive to keep cloud regions de-coupled, these are the rarest outages of all. Still, they [have happened](https://status.cloud.google.com/incidents/ow5i3PPK96RduMcb1SsW) in the past.
27
+
## Types of outages Temporal Cloud designs around
28
+
29
+
Temporal Cloud is engineered to withstand four broad categories of cloud outage. The categories are listed below in order of how commonly they occur in the real world. For each category, Temporal has experienced the outage in production, and the corresponding Temporal Cloud features have successfully mitigated the impact for real customer Namespaces.
30
+
31
+
### Availability Zone outage
32
+
33
+
An [Availability Zone](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-availability-zones) (AZ) is akin to an isolated datacenter managed by a cloud hyperscaler, with independent power, networking, and cooling infrastructure. Each cloud region contains multiple AZs, and an individual AZ can fail due to events such as hardware failure, power loss, or a localized network partition.
34
+
35
+
Historically, AZ outages are the most common type of outage in the cloud, and Temporal Cloud has weathered many of them transparently to its customers.
36
+
37
+
**Temporal Cloud feature to mitigate this outage:** Every Namespace is automatically spread across at least three Availability Zones, and any Namespace can handle a single AZ failure without disruption to end-user Temporal operations. [High Availability](/cloud/high-availability) features are _not_ required to keep Temporal Cloud operations running through an AZ outage.
38
+
39
+
If two AZs fail simultaneously, Temporal Cloud treats the event as a [Cloud Region outage](#cloud-region-outage). In that case, Namespaces in the region may be impacted, including those using Same-region Replication (in Preview).
40
+
41
+
:::note
42
+
43
+
When an AZ fails, Temporal may also trigger a failover on Namespaces that have High Availability enabled, as a precaution in case the outage scope expands. You can opt out of this behavior by disabling Temporal-managed failovers on the Namespace.
44
+
45
+
:::
46
+
47
+
#### RTO and RPO
48
+
49
+
When using Temporal Cloud (no additional features required):
50
+
51
+
-**Near-zero RTO.** When a single AZ fails, the remaining two AZs continue serving requests without a failover, so end users see little to no disruption.
52
+
-**Zero RPO.** Writes to Workflow state are synchronously replicated across all three AZs before being acknowledged back to the Client, so an AZ failure cannot cause data loss.
53
+
54
+
### Cell outage
55
+
56
+
Temporal Cloud runs on a [cell architecture](https://docs.aws.amazon.com/wellarchitected/latest/reducing-scope-of-impact-with-cell-based-architecture/what-is-a-cell-based-architecture.html). Each cell contains the software and services necessary to host a Namespace, and components within a cell are distributed across at least three Availability Zones. Cells provide a strong unit of isolation: a problem inside one cell does not propagate to other cells.
57
+
58
+
**Example causes:** failure of a sub-component within the cell (for example, an individual database becoming unavailable) or a software bug introduced in a new deploy to the cell.
59
+
60
+
**Temporal Cloud feature to mitigate this outage:**[Multi-region Replication](/cloud/high-availability) (GA) and [Multi-cloud Replication](/cloud/high-availability) (GA) replicate a Namespace into another cell in a different region or different cloud provider. [Same-region Replication](/cloud/high-availability) (Preview) replicates a Namespace into another cell in the same region. With any of these features enabled, an outage that disrupts a single cell can be mitigated by failing the Namespace over to its replica.
61
+
62
+
Cell-level disruptions occur from time to time, and Temporal's replication and failover tooling has restored affected Namespaces in real-world incidents.
63
+
64
+
#### RTO and RPO
65
+
66
+
When using Same-region Replication, Multi-region Replication, or Multi-cloud Replication for Temporal-managed failover:
67
+
68
+
-**RTO under 20 minutes.** Temporal detects the disruption and fails the Namespace over to its replica cell.
69
+
-**RPO under 1 minute.** Asynchronous replication keeps the replica close to the active cell.
70
+
71
+
Even though the RPO target is under 1 minute, data is virtually never "lost" thanks to Temporal's built-in Recovery and Conflict Resolution process, which reconciles state between the active and replica when a failover occurs.
72
+
73
+
### Cloud Region outage
74
+
75
+
A cloud region as a whole can become degraded, with effects that span beyond any single cell or Availability Zone.
76
+
77
+
**Example causes:** failure of a key cloud service in the region (for example, the cloud provider's DNS resolver) causing cascading failures, two or more Availability Zones failing simultaneously, or network partitions between the region and other regions.
78
+
79
+
**Temporal Cloud feature to mitigate this outage:**[Multi-region Replication](/cloud/high-availability) and [Multi-cloud Replication](/cloud/high-availability) place the replica outside the affected region, so a Namespace can fail over and continue serving Workflows. Same-region Replication does not protect against a Cloud Region outage, since the replica resides in the same region.
80
+
81
+
Regional outages are less common than cell or AZ outages, but they happen. During the [AWS us-east-1 incident on October 20, 2025](https://temporal.io/blog/how-devs-kept-running-during-the-aws-us-east-1-oct-20-2025), Temporal Cloud's regional failover kept customer Namespaces running.
82
+
83
+
#### RTO and RPO
84
+
85
+
When using Multi-region Replication or Multi-cloud Replication for Temporal-managed failover:
86
+
87
+
-**RTO under 20 minutes.** Temporal detects the regional disruption and fails the Namespace over to its replica in another region.
88
+
-**RPO under 1 minute.** Asynchronous replication keeps the replica close to the active region.
89
+
90
+
Even though the RPO target is under 1 minute, data is virtually never "lost" thanks to Temporal's built-in Recovery and Conflict Resolution process, which reconciles state between the active and replica when a failover occurs.
91
+
92
+
### Cloud-wide outage
93
+
94
+
On rare occasions, an issue affects most or all regions of a single cloud provider at once.
95
+
96
+
**Example causes:** a software bug rolled out to every region of a cloud provider that triggers cascading failures across the provider's infrastructure.
97
+
98
+
**Temporal Cloud feature to mitigate this outage:**[Multi-cloud Replication](/cloud/high-availability) places the replica in a different cloud provider entirely, so the Namespace can fail over even when an entire cloud provider goes down.
99
+
100
+
Cloud-wide outages are the rarest category, but they [have occurred](https://status.cloud.google.com/incidents/ow5i3PPK96RduMcb1SsW). Multi-cloud Replication is designed to keep Namespaces running through such events.
101
+
102
+
#### RTO and RPO
103
+
104
+
When using Multi-cloud Replication for Temporal-managed failover:
105
+
106
+
-**RTO under 20 minutes.** Temporal detects the cloud-wide disruption and fails the Namespace over to its replica in a different cloud provider.
107
+
-**RPO under 1 minute.** Asynchronous replication keeps the replica close to the active region, even across cloud providers.
108
+
109
+
Even though the RPO target is under 1 minute, data is virtually never "lost" thanks to Temporal's built-in Recovery and Conflict Resolution process, which reconciles state between the active and replica when a failover occurs.
110
+
111
+
## How High Availability replication works
112
+
113
+
To achieve the lowest RPO and RTO, Temporal Cloud offers [High Availability](/cloud/high-availability) features that keep Workflows operational with minimal downtime. When High Availability is enabled on a Namespace, the user chooses a region to place a "replica" that will take over in the event of a failure. The location of the replica determines the type of replication used and the categories of outage it can handle:
114
+
115
+
-**Multi-region Replication** places the active and replica in different regions on the same cloud (for example, AWS us-east-1 and AWS us-west-2).
116
+
-**Multi-cloud Replication** places the active and replica in different cloud providers (for example, AWS and GCP).
117
+
-**Same-region Replication** (Preview) places the active and replica in the same region.
118
+
119
+
Temporal always places the active and replica in different [cells](/cloud/overview#cell-based-infrastructure).
120
+
121
+
As Workflows progress in the active region, history events are asynchronously replicated to the replica. Because replication is asynchronous, High Availability does not impact the latency or throughput of Workflow Executions in the active region. If an outage hits the active region or cell, Temporal Cloud will fail over to the replica so that existing Workflow Executions will continue to run and new Workflow Executions can be started.
122
+
123
+
## Explaining Temporal Cloud's RTO and RPO
124
+
125
+
The Recovery Point Objective and Recovery Time Objective for Temporal Cloud depend on the type of outage and which [High Availability](/cloud/high-availability) feature your Namespace has enabled. Temporal Cloud can only set an RPO and RTO for cases where it has the ability to mitigate the outage. Therefore, the published RPOs and RTOs apply to Namespaces that have the corresponding type of replication and have enabled Temporal-initiated failovers, which comes enabled by default.
| Availability Zone outage | All Namespaces | Zero | Near-zero |
132
+
| Cell outage | Namespaces with Same-region, Multi-region, or Multi-cloud Replication | Under 1 minute | Under 20 minutes |
133
+
| Cloud Region outage | Namespaces with Multi-region or Multi-cloud Replication | Under 1 minute | Under 20 minutes |
134
+
| Cloud-wide outage | Namespaces with Multi-cloud Replication | Under 1 minute | Under 20 minutes |
50
135
51
136
Notes:
52
137
@@ -64,8 +149,17 @@ Temporal highly recommends keeping Temporal-initiated failovers enabled. When Te
64
149
65
150
- All Namespaces are backed up every 4 hours. If an outage causes data loss on a Namespace that was not protected by High Availability, then Temporal will use the backup to restore as much data as feasible.
66
151
152
+
- Temporal has internal goals and measurements for Recovery Time and Recovery Point, but does not publish the achieved Recovery Time and Recovery Point for each incident.
67
153
68
-
## Minimizing the Recovery Point
154
+
### Explaining the RPO
155
+
156
+
:::note Temporal's Recovery Point is different from a traditional Recovery Point
157
+
158
+
In a traditional database, data within the Recovery Point window may be permanently lost during a failover. In Temporal Cloud, that data is not lost. Cloud data stores are engineered for extreme durability (commonly 99.999999999%, or "11 nines"), so any data acknowledged by Temporal Cloud is durably persisted. After the outage resolves, Temporal's Recovery and Conflict Resolution process automatically syncs that data back into the Namespace.
159
+
160
+
The Recovery Point Objective therefore reflects the maximum data that may be temporarily unavailable in the replica at the moment of failover, not the maximum data that could be permanently lost.
161
+
162
+
:::
69
163
70
164
Temporal has put extensive work into tools and processes that minimize the recovery point and achieve its RPO for Temporal-initiated failovers, including:
71
165
@@ -83,7 +177,15 @@ Temporal recommends monitoring the replication lag and alerting should it rise t
83
177
84
178
:::
85
179
86
-
## Minimizing the Recovery Time
180
+
### Explaining the RTO
181
+
182
+
The Recovery Time for a given incident is measured from the moment the incident begins to cause abnormal Namespace operation — for example, when unavailability or error rates rise above an acceptable level — to the moment the Namespace is restored to full functionality.
183
+
184
+
For most incidents, the vast majority of the Recovery Time is spent detecting the incident, determining the affected boundary (a single cell, a region, or an entire cloud), and deciding to fail Namespaces over to their replicas. The actual time to complete the failover is usually a very small piece of the Recovery Time.
185
+
186
+
This Recovery Time covers only the Temporal Namespace. Your application's overall Recovery Time also depends on having enough healthy Workers that can reach the Namespace and process Workflows. Maintaining sufficient Worker capacity that can reach the replica region (or replica cloud) during a failover is your responsibility.
187
+
188
+
#### How Temporal achieves a low Recovery Time
87
189
88
190
Temporal has put extensive work into tools and processes that minimize the recovery time and achieve its RTO for Temporal-initiated failovers, including:
89
191
@@ -97,6 +199,8 @@ Temporal has put extensive work into tools and processes that minimize the recov
97
199
98
200
- Expert engineers on-call 24/7 monitoring Temporal Cloud Namespaces and ready to assist should an outage occur.
99
201
202
+
#### How users can achieve a lower Recovery Time
203
+
100
204
To achieve the lowest possible recovery times, Temporal recommends that you:
101
205
102
206
- Keep Temporal-initiated failovers enabled on your Namespace (the default)
@@ -112,8 +216,7 @@ Users can trigger manual failovers on their Namespaces even if Temporal-initiate
112
216
113
217
- Even if you have robust tooling to detect an outage and trigger a failover, leaving Temporal-initiated failovers enabled provides a "safety net" in case your automation misses an outage. It also gives Temporal leeway to preemptively fail over your Namespace if we detect that it may be disrupted soon, e.g., by a rolling failure that has impacted other Namespaces but not yours, yet.
114
218
115
-
116
-
## Understanding Temporal's RTO vs. SLA
219
+
#### Comparing RTO and SLA
117
220
118
221
Temporal has both a Recovery Time Objective (RTO) and a Service Level Agreement (SLA). They serve complementary purposes and apply in different situations.
0 commit comments