Skip to content
Storage st

Storage account naming convention

The CAF abbreviation for Storage account is st. Names can be 3 to 24 characters long and allow lowercase alphanumerics only. The name must be globally unique across all of Azure.

Naming rules

CAF abbreviation st
Length 3 to 24 characters
Allowed characters Lowercase letters and numbers
Scope of uniqueness Global (must be unique across all of Azure)
CAF pattern st{workload}{environment}{region}{instance}
Worth knowing: Globally unique name. Lowercase alphanumeric only (no hyphens).

Rules follow Microsoft's resource naming rules and CAF abbreviations. Some resource types have extra start/end character restrictions, so verify against the official docs before locking in a convention.

Naming Storage resources

Storage account naming, 3 to 24 characters, lowercase, no hyphens, globally unique, has its own dedicated guide. Backup Vaults and Resource Guards are usually centralized, one per environment protecting many resources, the same shared boundary logic as Log Analytics workspaces elsewhere in this list. File shares are scoped to their storage account, so they can be named simply and descriptively without worrying about a collision with a share in a different account.

The common mistake is creating a new backup vault per protected resource instead of consolidating an environment behind one vault, which fragments backup policies that are meant to apply consistently across everything they protect.

Example names

Generated by the same engine as the name generator, so length and character rules are already applied.

Scenario Generated name Length
Payments API, production stpaymentsprodeus001 20/24
Web app, development stwebappdevweu002 17/24
Analytics with company prefix stanalyticsstageuks001
Dropped company to fit the 24-char limit.
22/24

Naming in Terraform and Bicep

Build the name from variables so one module produces the right name in every environment. The 24-character limit is enforced in the expression.

Terraform
locals {
  storage_account_name = substr(lower("st${var.workload}${var.environment}${var.region}001"), 0, 24)
}
Bicep
var storageAccountName = take(toLower('st${workload}${environment}${region}001'), 24)

Generate Storage account names for your workload

Free, no login. Validation and Terraform, Bicep, or CSV export included.

Open in the generator →

Related Storage resources

See the full list of Azure resource naming rules or read the complete CAF naming guide.