Azure Resource Naming Strategy

A CAF-aligned naming pattern for Azure resources — the component breakdown, a worked example, and the rules that keep it consistent as an environment grows.

Published 12 August 2025

A naming strategy is a documented, consistent pattern for naming every Azure resource, so anyone (or any script) can tell what a resource is, what it belongs to, and which environment it’s in, just by reading its name. Without one, subscriptions fill up with names like webapp1, prodDB, test-vm-final. That slows down troubleshooting, breaks any automation that relies on naming patterns, and risks collisions in Azure’s globally unique namespaces (storage accounts, Key Vaults, DNS labels). It matters even more once you’re running more than one workload through a shared subscription or landing zone, where resources from different projects need to be identifiable at a glance and never collide.

The pattern

plaintext
<resource-type>-<workload>-<environment>-<region>-<instance>
ComponentPurposeExample values
Resource typeStandard Microsoft CAF abbreviationrg, app, asp, sql, sqldb, kv, st, vnet, nsg, log, appi, func, logic, pep, rsv
WorkloadShort code for the platform or projectwebapp, hrportal
EnvironmentDeployment stageprod, uat, dev
RegionAzure region, shorteneduks (UK South)
InstanceZero-padded count, for when there’s more than one01, 02

Rules that keep it working:

Worked example

A web app platform, deployed to UK South, in production:

ResourceType abbreviationExample name
Resource grouprgrg-webapp-prod-uks-01
App Service planaspasp-webapp-prod-uks-01
App Serviceappapp-webapp-prod-uks-01
Azure Function (background processing)funcfunc-webapp-prod-uks-01
SQL Serversqlsql-webapp-prod-uks-01
SQL Databasesqldbsqldb-webapp-prod-uks-01
Storage accountststwebappprod01
Key Vaultkvkv-webapp-prod-01
Virtual networkvnetvnet-webapp-prod-uks-01
Log Analytics workspaceloglog-webapp-prod-uks-01
Application Insightsappiappi-webapp-prod-uks-01

Storage accounts and Key Vaults drop the hyphens (and sometimes the region or instance too) to fit their tighter character limits — see the gotchas below.

Key points and gotchas

A naming convention tells you what a resource is. It doesn’t carry ownership, cost, or sensitivity, that’s what a tagging strategy is for, and the two are meant to sit side by side rather than duplicate each other.

References