Skip to content
Compute and web cld

Cloud service naming convention

The CAF abbreviation for Cloud service is cld. Names can be 1 to 15 characters long and allow alphanumerics and hyphens. The name must be unique within the resource group.

Naming rules

CAF abbreviation cld
Length 1 to 15 characters
Allowed characters Alphanumerics (a-z, A-Z, 0-9), hyphens
Scope of uniqueness Unique within the resource group
CAF pattern cld-{workload}-{environment}-{region}-{instance}

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 Compute and web resources

Web apps and Function apps share the same global namespace, both become a subdomain of azurewebsites.net, so a name you want for a function app might already be taken by a web app someone else owns, and the reverse is just as possible. It is worth checking availability before committing to a name here even though the two are different resource types in the portal. Static Web Apps get their own globally unique default hostname too.

Disks and snapshots multiply fast around a single VM, an OS disk, one or more data disks, and snapshots of each, so name them to point back unambiguously to the parent VM, with a purpose suffix like os or data-01 rather than a bare number. A common mistake is treating a VM name and its Windows computer name as one field, they are governed by different length limits (64 characters versus 15) and can validly diverge once truncation kicks in.

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 cld-pa-prod-001
Dropped region and shortened workload to fit 15 chars.
15/15
Web app, development cld-web-dev-002
Dropped region and shortened workload to fit 15 chars.
15/15
Analytics with company prefix cld-a-stage-001
Dropped company, region and shortened workload to fit 15 chars.
15/15

Naming in Terraform and Bicep

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

Terraform
locals {
  cloud_service_name = substr("cld-${var.workload}-${var.environment}-${var.region}-001", 0, 15)
}
Bicep
var cloudServiceName = take('cld-${workload}-${environment}-${region}-001', 15)

Generate Cloud service names for your workload

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

Open in the generator →

Related Compute and web resources

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