Skip to main content
Back to the Azure Footguns Database
GovernanceCostLowOccasionalAZF-0062

A general-purpose v1 storage account runs production data on a retired-in-2026 account model

General-purpose v1 accounts predate blob access tiers, lifecycle management, and a decade of security and pricing evolution. Microsoft has scheduled their retirement for 2026 — accounts left behind get migrated on Microsoft's timetable, not yours.

Footgun ID
AZF-0062 (Azure Footgun No. 62)
Azure service
Azure Storage
Resource type
Microsoft.Storage/storageAccounts
Updated
July 9, 2026

What it is

A storage account whose kind is Storage — general-purpose v1, the original account model from Azure Storage's early years. It still serves blobs, files, queues, and tables, which is exactly why it survives: nothing is visibly broken. But it predates blob access tiers, lifecycle management policies, several networking and redundancy options, and the pricing model every cost-optimization guide assumes you have.

Impact (governance)
Little or no direct cost today; a deprecated account model missing tiering, lifecycle policies, and modern controls, with forced migration coming in 2026
Basis: Azure behavior (authored assessment). Figures are estimates, not measurements.

Why it happens

Storage accounts don't age out on their own. An account created in 2015 keeps its original kind until someone deliberately upgrades it, and because GPv1 keeps working, no incident ever forces the question. The accounts that remain tend to be the oldest and least-owned resources in the tenant — created before current naming conventions, holding data nobody is certain about.

The gap is real, though. GPv1 has no hot/cool/archive tiers and no lifecycle management, so cold data sits at one flat rate with no way to tier it down, and the transaction pricing model differs from GPv2's — which direction that cuts depends entirely on your workload, so model it rather than assume. It also predates several modern management and redundancy options (no ZRS-family choices, for instance).

What changes the urgency in 2026: Microsoft is retiring GPv1 this year. New GPv1 creation is already blocked in the portal, and accounts not upgraded by the retirement deadline will be auto-migrated to GPv2 on Microsoft's schedule — meaning the access-tier and cost decisions get made without you.

What it costs / blast radius

The direct cost of leaving a GPv1 account alone is usually small or nothing — this is primarily a governance and hygiene finding. The exposure is indirect: cold data that can't be tiered or lifecycle-expired, an account model outside the assumptions of modern tooling, and, this year, a forced migration if you don't do it first. The upgrade itself is free, in-place, and non-disruptive, but it is permanent, and GPv2's per-operation pricing differs — a transaction-heavy workload can cost more after upgrading, so compare your operation counts against GPv2 rates and pick the default access tier deliberately instead of inheriting Hot. (Azure behavior and published pricing model; authored assessment, no measured figures.)

See it

Find them: every general-purpose v1 account across your subscriptions
Resources
| where type =~ 'microsoft.storage/storageaccounts'
| where kind =~ 'Storage'          // GPv1 reports exactly 'Storage'; v2 is 'StorageV2'
| project name, resourceGroup, subscriptionId, location,
          sku = sku.name, created = properties.creationTime
Fix: upgrade in place to GPv2 — free and non-disruptive, but permanent
// Model transaction costs first and choose the access tier deliberately;
// the upgrade cannot be reversed and unspecified tier defaults to Hot.
az storage account update -g rg-prod -n corpdata005 \
  --set kind=StorageV2 --access-tier=Hot

How StratoLens helps

StratoLens inventories every storage account across every subscription and flags the ones still on the legacy v1 kind, so the 2015-era accounts nobody owns show up on a list instead of in Microsoft's forced-migration queue. The check runs automatically and continuously inside your own tenant.

Start Your 28-Day Free Trial

Every feature unlocked. Deploys to your Azure tenant. No data leaves your tenant.

Available now on the Azure Marketplace.

Not ready to install anything? Browse the Azure Footguns Database: 55+ documented ways Azure quietly costs money or creates risk.

Request a demo

StratoLens catches the cost waste, access risk, and config drift across your whole Azure estate, from inside your own tenant, so your data never leaves it.