---
title: Deployment topology
sort: 3
---

# Deployment topology

ZephyrCart runs in four regions:

| Region key      | Cloud + AZ count                  | Latency to next region   |
|-----------------|-----------------------------------|--------------------------|
| `eu-frankfurt`  | GCP `europe-west3`, 3 zones       | 13 ms to `eu-dublin`     |
| `eu-dublin`     | GCP `europe-west1`, 3 zones       | 13 ms to `eu-frankfurt`  |
| `us-east`       | GCP `us-east4`, 3 zones           | 79 ms to `eu-dublin`     |
| `ap-singapore`  | GCP `asia-southeast1`, 3 zones    | 168 ms to `eu-frankfurt` |

Within a region: full active/active across all three zones, PostgreSQL with synchronous replicas,
Redis with sentinel.

## Data residency

A tenant's data stays in its home region. There is no cross-region replication of customer PII or
order data. Aggregated, de-identified telemetry flows to a central observability bucket in
`eu-frankfurt` for the platform team — see the
[Data handling policy](../../intranet/policies/data-handling.md) for the exact list of fields.

## Region failover

There is no automated cross-region failover. If a region is unavailable, the dashboard surfaces a
status page entry and storefronts in that region fail over to a degraded read-only mode (cached
catalog, no new checkouts) until the region returns. This is a deliberate choice — replicating
PII across regions would put us into legal regimes the company does not want to operate under.

## Multi-region tenants

A small number of Enterprise customers run in two regions concurrently with their own
application-layer sync. Talk to your solutions engineer; this is not a self-serve feature.
