Calculate state storage and management overhead across multiple Terraform workspaces.
Formula: total_resources = workspaces × resources_per_workspace. Splitting environments into separate workspaces isolates state and blast radius — a bad apply in 'dev' can't directly corrupt 'prod' state. Isolation benefit is modeled as 1 − 1/workspaces: with 4 workspaces, a single mistaken apply affects roughly 1/4 of your total resource footprint rather than all of it.
Total resources
total_resources = workspaces × resources_per_workspace
Isolation benefit
isolation_benefit_percent = (1 - 1 / workspaces) × 100
Native workspaces are lightweight but share the same backend config and variables unless you branch logic on `terraform.workspace` — many teams prefer fully separate root modules/backends per environment for stronger isolation and independent access control.
Workspaces isolate state but not code — a bug in your shared `.tf` configuration still affects every workspace that uses it, so isolation benefit applies to blast radius from bad applies, not from bad code.
There's no hard limit, but beyond a handful (e.g. per-environment) many teams switch to per-customer or per-region workspaces only with tooling to manage them at scale, since manual `terraform workspace select` becomes error-prone.
Yes — each workspace has its own state file, so total backend storage scales with workspace count × state size × versions retained (see the backend storage calculator).