{"id":12129,"date":"2026-09-05T10:25:23","date_gmt":"2026-09-05T14:55:23","guid":{"rendered":"https:\/\/www.apps4rent.com\/blog\/?p=12129"},"modified":"2026-09-07T10:27:02","modified_gmt":"2026-09-07T14:57:02","slug":"azure-management-groups","status":"publish","type":"post","link":"https:\/\/www.apps4rent.com\/blog\/azure-management-groups\/","title":{"rendered":"Azure Management Groups: Organizing and Governing Subscriptions"},"content":{"rendered":"<p>One Azure subscription is easy to manage. Ten is manageable with discipline. Fifty, spread across departments that each spin up their own subscriptions, apply their own security practices, and deploy into whatever region is convenient that week, is not something any team manages by hand. Without a structure above the subscription, governance becomes a copy-paste exercise repeated dozens of times, and it inevitably drifts: one subscription gets the policy update, another doesn&#8217;t, and nobody notices until an audit or an incident forces the question.<\/p>\n<p>Azure management groups exist to solve exactly this. They sit above subscriptions in the resource hierarchy and let you apply policy, access control, and budgets once, at a level that every subscription and resource beneath it inherits automatically. This guide covers what management groups are, how inheritance actually works, how they differ from subscriptions and resource groups, how to create them through the portal and through code, and the design mistakes that turn a governance asset into a governance liability.<\/p>\n<h2 style=\"font-size: 24px;\">What Are Azure Management Groups?<\/h2>\n<p>An Azure management group is a governance-scoped container that sits above subscriptions in the Azure resource hierarchy. You organize subscriptions into management groups that mirror how your organization actually operates, whether that is by environment, business unit, or compliance boundary, and then apply Azure Policy assignments and role-based access control (RBAC) at the management group level. Every subscription and resource nested beneath that management group inherits the assignment automatically.<\/p>\n<p>The full Azure resource hierarchy, from broadest to narrowest, looks like this:<\/p>\n<div style=\"margin:28px 0;\"><svg viewBox=\"0 0 940 400\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" role=\"img\" aria-label=\"The Azure resource hierarchy from Microsoft Entra tenant down to individual resources\" style=\"font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;width:100%;height:auto;display:block;background:#ffffff;border:1px solid #e2e8f0;border-radius:8px;\"><title>The Azure Resource Hierarchy<\/title><rect x=\"270\" y=\"20\" width=\"400\" height=\"46\" rx=\"8\" fill=\"#0a2540\"><\/rect><text x=\"470\" y=\"49\" text-anchor=\"middle\" font-size=\"15\" font-weight=\"700\" fill=\"#ffffff\">Microsoft Entra Tenant<\/text><line x1=\"470\" y1=\"66\" x2=\"470\" y2=\"90\" stroke=\"#94a9c0\" stroke-width=\"2\"><\/line><rect x=\"310\" y=\"90\" width=\"320\" height=\"46\" rx=\"8\" fill=\"#0078d4\"><\/rect><text x=\"470\" y=\"119\" text-anchor=\"middle\" font-size=\"14.5\" font-weight=\"700\" fill=\"#ffffff\">Root Management Group<\/text><line x1=\"470\" y1=\"136\" x2=\"470\" y2=\"160\" stroke=\"#94a9c0\" stroke-width=\"2\"><\/line><rect x=\"280\" y=\"160\" width=\"380\" height=\"46\" rx=\"8\" fill=\"#0078d4\"><\/rect><text x=\"470\" y=\"189\" text-anchor=\"middle\" font-size=\"14.5\" font-weight=\"700\" fill=\"#ffffff\">Management Groups (up to 6 levels)<\/text><line x1=\"470\" y1=\"206\" x2=\"470\" y2=\"230\" stroke=\"#94a9c0\" stroke-width=\"2\"><\/line><rect x=\"375\" y=\"230\" width=\"190\" height=\"42\" rx=\"6\" fill=\"#f0f7ff\" stroke=\"#0078d4\" stroke-width=\"1.5\"><\/rect><text x=\"470\" y=\"256\" text-anchor=\"middle\" font-size=\"13\" font-weight=\"600\" fill=\"#0a2540\">Azure Subscriptions<\/text><line x1=\"470\" y1=\"272\" x2=\"470\" y2=\"296\" stroke=\"#94a9c0\" stroke-width=\"2\"><\/line><rect x=\"375\" y=\"296\" width=\"190\" height=\"42\" rx=\"6\" fill=\"#e8eef5\" stroke=\"#94a9c0\" stroke-width=\"1.5\"><\/rect><text x=\"470\" y=\"322\" text-anchor=\"middle\" font-size=\"13\" font-weight=\"600\" fill=\"#0a2540\">Resource Groups<\/text><line x1=\"470\" y1=\"338\" x2=\"470\" y2=\"362\" stroke=\"#94a9c0\" stroke-width=\"2\"><\/line><rect x=\"375\" y=\"362\" width=\"190\" height=\"30\" rx=\"6\" fill=\"#0a2540\"><\/rect><text x=\"470\" y=\"382\" text-anchor=\"middle\" font-size=\"13\" font-weight=\"600\" fill=\"#ffffff\">Azure Resources<\/text><text x=\"750\" y=\"230\" text-anchor=\"middle\" font-size=\"11.5\" font-weight=\"700\" fill=\"#d13438\">Inheritance<\/text><text x=\"750\" y=\"246\" text-anchor=\"middle\" font-size=\"11.5\" font-weight=\"700\" fill=\"#d13438\">flows down<\/text><line x1=\"750\" y1=\"256\" x2=\"750\" y2=\"360\" stroke=\"#d13438\" stroke-width=\"2\" stroke-dasharray=\"4 3\"><\/line><path d=\"M743,352 L750,364 L757,352\" fill=\"none\" stroke=\"#d13438\" stroke-width=\"2\"><\/path><\/svg><\/p>\n<p style=\"margin:8px 0 0;font-size:13px;color:#667788;text-align:center;font-style:italic;\">The full Azure resource hierarchy. Policy and RBAC assigned at any level flow down to everything beneath it.<\/p>\n<\/div>\n<p>Microsoft&#8217;s documented limits: a single Microsoft Entra directory supports up to <strong>10,000 management groups<\/strong>, and a management group tree can be up to <strong>six levels deep<\/strong>, not counting the root level or the subscription level itself. Each management group or subscription can have exactly one parent, though a parent can have any number of children.<\/p>\n<h2 style=\"font-size: 24px;\">How Inheritance Actually Works<\/h2>\n<p>The entire value of management groups rests on one mechanism: inheritance. When you assign an Azure Policy or an RBAC role at a management group, that assignment applies to every subscription and resource nested beneath it, without touching each one individually.<\/p>\n<p>A concrete example: suppose you group your production subscriptions under a Production management group.<\/p>\n<ul style=\"margin-bottom:20px\">\n<li style=\"margin-bottom:10px\">Production Management Group\n<ul style=\"margin-bottom:20px\">\n<li style=\"margin-bottom:10px\">Production Subscription A<\/li>\n<li style=\"margin-bottom:10px\">Production Subscription B<\/li>\n<li style=\"margin-bottom:10px\">Production Subscription C<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>Assign a policy at the Production management group that restricts deployments to approved Azure regions, and it applies automatically to Subscriptions A, B, and C, and to every resource created inside them from that point forward, with no per-subscription configuration required. The same logic applies to access: assign an RBAC role at the management group scope instead of repeating it across each subscription, and every subscription beneath it inherits that access.<\/p>\n<p>Two mechanics matter here that are easy to miss:<\/p>\n<ul style=\"margin-bottom:20px\">\n<li style=\"margin-bottom:10px\"><strong>A policy assigned higher in the hierarchy cannot be overridden lower down.<\/strong> If a deny-effect policy is assigned at the Production management group, no one with access to Subscription A can loosen it at the subscription level. This is what makes management groups an enforcement mechanism rather than a default that individual teams can quietly opt out of.<\/li>\n<li style=\"margin-bottom:10px\"><strong>Inheritance is automatic for every future resource, not just current ones.<\/strong> A subscription added to the Production management group next year inherits the same policies and roles on day one, with zero additional configuration. This is what makes onboarding new subscriptions fast instead of a repeat of the original setup work.<\/li>\n<\/ul>\n<h2 style=\"font-size: 24px;\">Management Groups vs Subscriptions vs Resource Groups<\/h2>\n<p>These three constructs get confused constantly because all three organize Azure resources, but each answers a different question: management groups answer &#8220;who governs this,&#8221; subscriptions answer &#8220;who pays for this and where is the billing boundary,&#8221; and resource groups answer &#8220;which resources belong to the same application or lifecycle.&#8221;<\/p>\n<table class=\"has-fixed-layout\">\n<thead>\n<tr>\n<th><strong>Feature<\/strong><\/th>\n<th><strong>Management Group<\/strong><\/th>\n<th><strong>Subscription<\/strong><\/th>\n<th><strong>Resource Group<\/strong><\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><strong>Main purpose<\/strong><\/td>\n<td>Organization-wide governance<\/td>\n<td>Billing and workload boundary<\/td>\n<td>Organize related resources<\/td>\n<\/tr>\n<tr>\n<td><strong>Sits above<\/strong><\/td>\n<td>Subscriptions<\/td>\n<td>Resource groups<\/td>\n<td>Azure resources<\/td>\n<\/tr>\n<tr>\n<td><strong>Can contain<\/strong><\/td>\n<td>Management groups and subscriptions<\/td>\n<td>Resource groups and resources<\/td>\n<td>Resources<\/td>\n<\/tr>\n<tr>\n<td><strong>Policy scope<\/strong><\/td>\n<td>Multiple subscriptions<\/td>\n<td>One subscription and below<\/td>\n<td>Resources within the group<\/td>\n<\/tr>\n<tr>\n<td><strong>RBAC scope<\/strong><\/td>\n<td>Multiple subscriptions and resources below<\/td>\n<td>Subscription and below<\/td>\n<td>Resources within the group<\/td>\n<\/tr>\n<tr>\n<td><strong>Typical use<\/strong><\/td>\n<td>Enterprise governance<\/td>\n<td>Billing, isolation, workload separation<\/td>\n<td>Application or resource organization<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>None of the three replaces the others. A well-designed environment uses all three together: management groups for governance scope, subscriptions for billing and blast-radius isolation, and resource groups for the day-to-day organization of an application&#8217;s actual resources. Management groups are also one of the eight design decisions in a properly built Azure landing zone, where the hierarchy is established before any workload is deployed.<\/p>\n<h2 style=\"font-size: 24px;\">Why Management Groups Matter as You Scale<\/h2>\n<p>A single subscription with a handful of resources does not need this layer. The value shows up precisely when it becomes painful to manage subscriptions individually, and it shows up in a specific set of ways.<\/p>\n<ul style=\"margin-bottom:20px\">\n<li style=\"margin-bottom:10px\"><strong>Hierarchy and structure.<\/strong> Settings, policies, and compliance rules apply once at the appropriate level and propagate automatically to every subscription and resource beneath it, rather than being configured subscription by subscription.<\/li>\n<li style=\"margin-bottom:10px\"><strong>Centralized governance.<\/strong> Management groups give you a scope above subscriptions to manage policy and governance requirements from, so you place subscriptions under the right group instead of re-implementing the same controls repeatedly.<\/li>\n<li style=\"margin-bottom:10px\"><strong>Consistent policy.<\/strong> Common Azure Policy assignments apply cleanly across every subscription with similar requirements, which is the difference between &#8220;we have a security baseline&#8221; and &#8220;we have a security baseline that is actually enforced everywhere.&#8221;<\/li>\n<li style=\"margin-bottom:10px\"><strong>Simplified administration.<\/strong> Policy and access changes happen once, at the management group level, instead of being repeated across every subscription underneath. That single change is also easier to audit than dozens of individually configured subscriptions.<\/li>\n<li style=\"margin-bottom:10px\"><strong>Cost visibility.<\/strong> Organizing subscriptions by department, business unit, or environment under dedicated management groups makes it straightforward to set budgets, monitor spend, and report costs by group, which is materially harder once resources are scattered across ungrouped subscriptions.<\/li>\n<li style=\"margin-bottom:10px\"><strong>Environment separation.<\/strong> Dedicated management groups for production, development, test, and decommissioned subscriptions reduce cross-environment risk: preventing network connectivity between dev and prod, testing production-level policies in a sandbox before rollout, and retaining decommissioned subscriptions for audit and compliance purposes rather than deleting them outright.<\/li>\n<li style=\"margin-bottom:10px\"><strong>Easier scaling.<\/strong> A new subscription slots into an existing management group and inherits its governance immediately, rather than requiring governance to be designed from scratch every time the organization adds one.<\/li>\n<\/ul>\n<div style=\"margin:2rem 0;background:#ffffff;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;box-shadow:0 1px 4px rgba(0,0,0,0.06);\">\n<div style=\"padding:6px 20px;background:#0078d4;\">\n<p style=\"margin:0;font-weight:600;color:#ffffff;text-transform:uppercase;letter-spacing:.07em;\">MICROSOFT SOLUTIONS PARTNER | TIER-1 CSP<\/p>\n<\/div>\n<div style=\"padding:1.5rem 2rem;\">\n<h3 style=\"margin:0 0 12px;font-size:19px;font-weight:700;color:#0a2540;line-height:1.3;\">Get Your Azure Management Group Hierarchy Designed Right<\/h3>\n<p style=\"margin:0 0 18px;font-size:14px;color:#3a4a5c;line-height:1.7;\">Apps4Rent&#8217;s Azure architects design management group hierarchies aligned with the Cloud Adoption Framework, deploy them with infrastructure as code, and set up the policy and RBAC baseline that makes governance automatic instead of manual.<\/p>\n<div style=\"display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;\">\n<span style=\"display:inline-flex;align-items:center;gap:6px;padding:5px 12px;background:#f0f7ff;border-radius:20px;font-size:12px;font-weight:500;color:#0a2540;\"><span style=\"width:6px;height:6px;background:#0078d4;border-radius:50%;display:inline-block;\"><\/span>Hierarchy Design<\/span><br \/>\n<span style=\"display:inline-flex;align-items:center;gap:6px;padding:5px 12px;background:#f0f7ff;border-radius:20px;font-size:12px;font-weight:500;color:#0a2540;\"><span style=\"width:6px;height:6px;background:#0078d4;border-radius:50%;display:inline-block;\"><\/span>Policy &#038; RBAC Baseline<\/span><br \/>\n<span style=\"display:inline-flex;align-items:center;gap:6px;padding:5px 12px;background:#f0f7ff;border-radius:20px;font-size:12px;font-weight:500;color:#0a2540;\"><span style=\"width:6px;height:6px;background:#0078d4;border-radius:50%;display:inline-block;\"><\/span>Free Consultation<\/span>\n<\/div>\n<div style=\"margin:0 0 18px;padding-top:14px;border-top:1px solid #eef2f6;\">\n<p style=\"margin:0 0 8px;font-size:11px;font-weight:700;color:#667788;text-transform:uppercase;letter-spacing:.06em;\">Microsoft Solutions Partner Designations<\/p>\n<div style=\"display:flex;flex-wrap:wrap;gap:6px;\"><span style=\"display:inline-block;padding:3px 9px;border:1px solid #cfe0f2;border-radius:4px;font-size:11.5px;font-weight:600;color:#0a2540;background:#ffffff;\">Infrastructure (Azure)<\/span><span style=\"display:inline-block;padding:3px 9px;border:1px solid #cfe0f2;border-radius:4px;font-size:11.5px;font-weight:600;color:#0a2540;background:#ffffff;\">Data &amp; AI (Azure)<\/span><span style=\"display:inline-block;padding:3px 9px;border:1px solid #cfe0f2;border-radius:4px;font-size:11.5px;font-weight:600;color:#0a2540;background:#ffffff;\">Digital &amp; App Innovation (Azure)<\/span><span style=\"display:inline-block;padding:3px 9px;border:1px solid #cfe0f2;border-radius:4px;font-size:11.5px;font-weight:600;color:#0a2540;background:#ffffff;\">Modern Work<\/span><span style=\"display:inline-block;padding:3px 9px;border:1px solid #cfe0f2;border-radius:4px;font-size:11.5px;font-weight:600;color:#0a2540;background:#ffffff;\">Security<\/span><\/div>\n<\/div>\n<div style=\"display:flex;flex-wrap:wrap;gap:12px;align-items:center;\">\n<a href=\"https:\/\/www.apps4rent.com\/azure-consulting-services\/\" style=\"display:inline-block;padding:11px 24px;background:#0078d4;color:#ffffff;font-size:14px;font-weight:600;text-decoration:none;border-radius:6px;\">Book My Free Consultation<\/a><br \/>\n<a href=\"tel:18667162040\" style=\"display:inline-block;padding:11px 24px;border:1.5px solid #0078d4;color:#0078d4;font-size:14px;font-weight:600;text-decoration:none;border-radius:6px;\">Call 1-866-716-2040<\/a>\n<\/div>\n<\/div>\n<\/div>\n<h2 style=\"font-size: 24px;\">How to Create a Management Group in the Azure Portal<\/h2>\n<ul style=\"margin-bottom:20px\">\n<li style=\"margin-bottom:10px\">\n<h3 style=\"font-size: 21px;\">Step 1: Confirm your permissions<\/h3>\n<p>Creating and managing management groups requires elevated access. Most organizations grant this to a small platform or governance team rather than broadly, since a mistake at a high scope in the hierarchy affects everything beneath it.<\/p>\n<\/li>\n<li style=\"margin-bottom:10px\">\n<h3 style=\"font-size: 21px;\">Step 2: Open Management Groups in the Azure portal<\/h3>\n<p>Search for and open the Management Groups service from the Azure portal.<\/p>\n<\/li>\n<li style=\"margin-bottom:10px\">\n<h3 style=\"font-size: 21px;\">Step 3: Select Create<\/h3>\n<p>Choose Create to begin defining a new management group.<\/p>\n<\/li>\n<li style=\"margin-bottom:10px\">\n<h3 style=\"font-size: 21px;\">Step 4: Enter the management group details<\/h3>\n<p>Provide a management group ID and a display name. The ID is fixed at creation, so choose a naming convention deliberately before you start creating groups at scale.<\/p>\n<\/li>\n<li style=\"margin-bottom:10px\">\n<h3 style=\"font-size: 21px;\">Step 5: Select the parent<\/h3>\n<p>Choose where the new management group sits in your existing hierarchy. It can become a child of any existing management group, including the root.<\/p>\n<\/li>\n<li style=\"margin-bottom:10px\">\n<h3 style=\"font-size: 21px;\">Step 6: Review and create<\/h3>\n<p>Review the configuration and create the management group. Subscriptions can then be moved into it from the management group&#8217;s overview page.<\/p>\n<\/li>\n<\/ul>\n<h2 style=\"font-size: 24px;\">Creating Management Groups with Code<\/h2>\n<p>The portal workflow above is fine for a handful of groups. Once you are building a real hierarchy, doing it through code is faster to repeat, easier to review, and leaves an audit trail that a portal click does not.<\/p>\n<h3 style=\"font-size: 21px;\">Azure CLI<\/h3>\n<p>Create a management group and set its parent with a couple of commands:<\/p>\n<pre style=\"background:#0a2540;color:#e8eef5;padding:16px 20px;border-radius:6px;overflow-x:auto;font-size:13.5px;line-height:1.6;\"><code>az account management-group create --name \"Production\" --display-name \"Production\"\n\naz account management-group create --name \"ProdSub-A\" --display-name \"Production Subscription A\" --parent \"Production\"\n\naz account management-group subscription add --name \"Production\" --subscription \"&lt;subscription-id&gt;\"<\/code><\/pre>\n<h3 style=\"font-size: 21px;\">Azure PowerShell<\/h3>\n<pre style=\"background:#0a2540;color:#e8eef5;padding:16px 20px;border-radius:6px;overflow-x:auto;font-size:13.5px;line-height:1.6;\"><code>New-AzManagementGroup -GroupName \"Production\" -DisplayName \"Production\" -ParentId \"\/providers\/Microsoft.Management\/managementGroups\/&lt;root-id&gt;\"\n\nNew-AzManagementGroupSubscription -GroupName \"Production\" -SubscriptionId \"&lt;subscription-id&gt;\"<\/code><\/pre>\n<h3 style=\"font-size: 21px;\">Bicep<\/h3>\n<p>For teams managing the hierarchy as infrastructure as code, which is the recommended approach for a landing zone&#8217;s platform layer, a management group deploys as a tenant-scoped resource:<\/p>\n<pre style=\"background:#0a2540;color:#e8eef5;padding:16px 20px;border-radius:6px;overflow-x:auto;font-size:13.5px;line-height:1.6;\"><code>targetScope = 'tenant'\n\nresource productionMg 'Microsoft.Management\/managementGroups@2023-04-01' = {\n  name: 'Production'\n  properties: {\n    displayName: 'Production'\n    details: {\n      parent: {\n        id: tenant().tenantId\n      }\n    }\n  }\n}<\/code><\/pre>\n<p>Deploying the hierarchy this way, alongside the policy and RBAC assignments that go with it, is exactly the discipline behind a properly built landing zone platform layer, and it is what keeps a growing hierarchy from drifting into inconsistency as different people create groups by hand over time.<\/p>\n<h2 style=\"font-size: 24px;\">A Realistic Reference Hierarchy<\/h2>\n<p>Abstract rules are easier to apply with a concrete shape in front of you. The hierarchy below reflects the pattern most mid-size and enterprise Azure environments converge on, and it mirrors the structure recommended in Microsoft&#8217;s Cloud Adoption Framework for landing zones.<\/p>\n<div style=\"margin:28px 0;\"><svg viewBox=\"0 0 940 320\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" role=\"img\" aria-label=\"A realistic sample Azure management group hierarchy with Platform, Landing Zones, Sandbox, and Decommissioned groups\" style=\"font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;width:100%;height:auto;display:block;background:#ffffff;border:1px solid #e2e8f0;border-radius:8px;\"><title>A Realistic Sample Azure Management Group Hierarchy<\/title><rect x=\"370\" y=\"20\" width=\"200\" height=\"44\" rx=\"6\" fill=\"#0a2540\"><\/rect><text x=\"470\" y=\"47\" text-anchor=\"middle\" font-size=\"15\" font-weight=\"600\" fill=\"#ffffff\">Tenant Root Group<\/text><line x1=\"470\" y1=\"64\" x2=\"140\" y2=\"114\" stroke=\"#94a9c0\" stroke-width=\"1.5\"><\/line><line x1=\"470\" y1=\"64\" x2=\"430\" y2=\"114\" stroke=\"#94a9c0\" stroke-width=\"1.5\"><\/line><line x1=\"470\" y1=\"64\" x2=\"665\" y2=\"114\" stroke=\"#94a9c0\" stroke-width=\"1.5\"><\/line><line x1=\"470\" y1=\"64\" x2=\"845\" y2=\"114\" stroke=\"#94a9c0\" stroke-width=\"1.5\"><\/line><rect x=\"40\" y=\"114\" width=\"200\" height=\"44\" rx=\"6\" fill=\"#0078d4\"><\/rect><text x=\"140\" y=\"141\" text-anchor=\"middle\" font-size=\"14\" font-weight=\"600\" fill=\"#ffffff\">Platform<\/text><rect x=\"330\" y=\"114\" width=\"200\" height=\"44\" rx=\"6\" fill=\"#0078d4\"><\/rect><text x=\"430\" y=\"141\" text-anchor=\"middle\" font-size=\"14\" font-weight=\"600\" fill=\"#ffffff\">Landing Zones<\/text><rect x=\"600\" y=\"114\" width=\"130\" height=\"44\" rx=\"6\" fill=\"#e8eef5\" stroke=\"#94a9c0\"><\/rect><text x=\"665\" y=\"141\" text-anchor=\"middle\" font-size=\"14\" fill=\"#0a2540\">Sandbox<\/text><rect x=\"770\" y=\"114\" width=\"150\" height=\"44\" rx=\"6\" fill=\"#e8eef5\" stroke=\"#94a9c0\"><\/rect><text x=\"845\" y=\"141\" text-anchor=\"middle\" font-size=\"13\" fill=\"#0a2540\">Decommissioned<\/text><line x1=\"140\" y1=\"158\" x2=\"75\" y2=\"214\" stroke=\"#94a9c0\" stroke-width=\"1.5\"><\/line><line x1=\"140\" y1=\"158\" x2=\"187\" y2=\"214\" stroke=\"#94a9c0\" stroke-width=\"1.5\"><\/line><line x1=\"140\" y1=\"158\" x2=\"305\" y2=\"214\" stroke=\"#94a9c0\" stroke-width=\"1.5\"><\/line><line x1=\"430\" y1=\"158\" x2=\"395\" y2=\"214\" stroke=\"#94a9c0\" stroke-width=\"1.5\"><\/line><line x1=\"430\" y1=\"158\" x2=\"505\" y2=\"214\" stroke=\"#94a9c0\" stroke-width=\"1.5\"><\/line><rect x=\"20\" y=\"214\" width=\"110\" height=\"42\" rx=\"6\" fill=\"#f0f7ff\" stroke=\"#0078d4\" stroke-width=\"1.5\"><\/rect><text x=\"75\" y=\"240\" text-anchor=\"middle\" font-size=\"12.5\" fill=\"#0a2540\">Management<\/text><rect x=\"140\" y=\"214\" width=\"95\" height=\"42\" rx=\"6\" fill=\"#f0f7ff\" stroke=\"#0078d4\" stroke-width=\"1.5\"><\/rect><text x=\"187\" y=\"240\" text-anchor=\"middle\" font-size=\"12.5\" fill=\"#0a2540\">Identity<\/text><rect x=\"242\" y=\"214\" width=\"120\" height=\"42\" rx=\"6\" fill=\"#f0f7ff\" stroke=\"#0078d4\" stroke-width=\"1.5\"><\/rect><text x=\"305\" y=\"240\" text-anchor=\"middle\" font-size=\"12.5\" fill=\"#0a2540\">Connectivity<\/text><rect x=\"370\" y=\"214\" width=\"90\" height=\"42\" rx=\"6\" fill=\"#f0f7ff\" stroke=\"#0078d4\" stroke-width=\"1.5\"><\/rect><text x=\"415\" y=\"240\" text-anchor=\"middle\" font-size=\"12.5\" fill=\"#0a2540\">Corp<\/text><rect x=\"468\" y=\"214\" width=\"90\" height=\"42\" rx=\"6\" fill=\"#f0f7ff\" stroke=\"#0078d4\" stroke-width=\"1.5\"><\/rect><text x=\"513\" y=\"240\" text-anchor=\"middle\" font-size=\"12.5\" fill=\"#0a2540\">Online<\/text><text x=\"470\" y=\"292\" text-anchor=\"middle\" font-size=\"12\" fill=\"#667788\">Platform holds shared services; Landing Zones splits into Corp (internal) and Online (internet-facing) workloads<\/text><\/svg><\/p>\n<p style=\"margin:8px 0 0;font-size:13px;color:#667788;text-align:center;font-style:italic;\">A realistic four-level hierarchy: Platform for shared services, Landing Zones split by workload exposure, plus Sandbox and Decommissioned for isolation.<\/p>\n<\/div>\n<p>Read left to right, the intent behind each branch is straightforward:<\/p>\n<ul style=\"margin-bottom:20px\">\n<li style=\"margin-bottom:10px\"><strong>Platform<\/strong> holds the subscriptions that provide shared services to everything else: identity, centralized networking, and monitoring. A dedicated platform team typically owns this branch, and very few people need write access to it.<\/li>\n<li style=\"margin-bottom:10px\"><strong>Landing Zones<\/strong> is where application workloads actually live, commonly split into Corp (internally facing, connected to the corporate network) and Online (internet-facing) so each side can carry different network and security policy without one blocking the other.<\/li>\n<li style=\"margin-bottom:10px\"><strong>Sandbox<\/strong> gives teams a space to experiment with looser policy and no connectivity to production, so exploration does not require a governance exception elsewhere in the tree.<\/li>\n<li style=\"margin-bottom:10px\"><strong>Decommissioned<\/strong> is a holding area for subscriptions being retired, which keeps them available for audit and compliance retention without leaving them active among production workloads.<\/li>\n<\/ul>\n<p>This is the same structure used as the reference architecture in our guide to <a style=\"color:#007fac;\" href=\"https:\/\/www.apps4rent.com\/blog\/azure-landing-zone\/\">Azure landing zone<\/a> design, and building the management group hierarchy first is what makes the rest of that architecture, hub-and-spoke networking, centralized logging, policy baselines, deployable in a predictable order rather than retrofitted around whatever subscriptions already exist.<\/p>\n<h2 style=\"font-size: 24px;\">Understanding Azure Policy Effects Before You Assign at Scale<\/h2>\n<p>A policy assigned at a management group is powerful precisely because it is hard to override, which means the effect you choose matters more than it would at a smaller scope. Before assigning policy broadly, it is worth understanding what each effect actually does:<\/p>\n<table class=\"has-fixed-layout\">\n<thead>\n<tr>\n<th><strong>Effect<\/strong><\/th>\n<th><strong>What it does<\/strong><\/th>\n<th><strong>Typical use<\/strong><\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><strong>Deny<\/strong><\/td>\n<td>Blocks the non-compliant resource from being created at all<\/td>\n<td>Hard requirements: approved regions, mandatory tags, blocked VM SKUs<\/td>\n<\/tr>\n<tr>\n<td><strong>Audit<\/strong><\/td>\n<td>Allows the resource but flags it as non-compliant in reporting<\/td>\n<td>Rolling out a new standard before enforcing it, so you can see the impact first<\/td>\n<\/tr>\n<tr>\n<td><strong>Append<\/strong><\/td>\n<td>Adds fields or values to the resource request before it is created<\/td>\n<td>Automatically applying a required tag value rather than rejecting untagged resources<\/td>\n<\/tr>\n<tr>\n<td><strong>Modify<\/strong><\/td>\n<td>Updates properties on existing resources during evaluation, including adding or updating tags<\/td>\n<td>Bringing already-deployed resources into compliance without manual remediation<\/td>\n<\/tr>\n<tr>\n<td><strong>DeployIfNotExists<\/strong><\/td>\n<td>Deploys a related resource automatically when a condition is met<\/td>\n<td>Ensuring every VM gets a monitoring agent or every storage account gets diagnostic settings<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>The practical sequencing most experienced Azure teams follow: assign a new policy with the Audit effect first at the intended management group scope, review the compliance report to see what would actually be blocked, then switch it to Deny once the impact is understood. Assigning Deny directly at a high scope without that audit step is one of the more common ways a well-intentioned governance rollout turns into an afternoon of support tickets from teams whose deployments suddenly fail.<\/p>\n<h2 style=\"font-size: 24px;\">Moving Existing Subscriptions Into the Hierarchy<\/h2>\n<p>Most organizations are not designing a management group hierarchy from a blank slate; they are retrofitting one onto subscriptions that already exist and already run production workloads. Moving a subscription into a management group does not move, restart, or otherwise touch any resource inside it. The subscription itself is simply reparented in the hierarchy, and it begins inheriting whatever policy and RBAC assignments exist at its new location from that point forward.<\/p>\n<p>That inheritance is exactly why the move deserves a moment of planning rather than being treated as a purely administrative click:<\/p>\n<ul style=\"margin-bottom:20px\">\n<li style=\"margin-bottom:10px\">Review what policies are assigned at the destination management group before moving a subscription into it, since Deny-effect policies apply immediately and could block routine deployments the subscription&#8217;s team was not expecting.<\/li>\n<li style=\"margin-bottom:10px\">Move subscriptions in a deliberate order, lower-risk and non-production first, so any unexpected policy interaction surfaces on a subscription where it is cheap to fix rather than one running customer-facing production traffic.<\/li>\n<li style=\"margin-bottom:10px\">Communicate the change to the subscription&#8217;s owning team beforehand. A subscription that suddenly cannot deploy to a region it used yesterday is a support ticket waiting to happen if nobody was told why.<\/li>\n<\/ul>\n<h2 style=\"font-size: 24px;\">Common Design Mistakes That Undermine Management Groups<\/h2>\n<div style=\"margin:28px 0;\"><svg viewBox=\"0 0 940 300\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" role=\"img\" aria-label=\"Four common Azure management group design mistakes and their fixes\" style=\"font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;width:100%;height:auto;display:block;background:#ffffff;border:1px solid #e2e8f0;border-radius:8px;\"><title>Common Azure Management Group Mistakes<\/title><rect x=\"25\" y=\"30\" width=\"425\" height=\"110\" rx=\"8\" fill=\"#fdf3e4\" stroke=\"#e8871a\" stroke-width=\"1.5\"><\/rect><circle cx=\"57\" cy=\"60\" r=\"15\" fill=\"#e8871a\"><\/circle><text x=\"57\" y=\"65\" text-anchor=\"middle\" font-size=\"13\" font-weight=\"700\" fill=\"#ffffff\">1<\/text><text x=\"82\" y=\"65\" font-size=\"13.5\" font-weight=\"700\" fill=\"#0a2540\">Resources placed directly under root<\/text><text x=\"45\" y=\"95\" font-size=\"12\" fill=\"#4a5a6c\">Global policies then apply unevenly and<\/text><text x=\"45\" y=\"115\" font-size=\"12\" fill=\"#4a5a6c\">the root scope becomes hard to reason about.<\/text><text x=\"45\" y=\"133\" font-size=\"12\" font-weight=\"600\" fill=\"#c06a08\">Fix: keep root for global policy only<\/text><rect x=\"490\" y=\"30\" width=\"425\" height=\"110\" rx=\"8\" fill=\"#fdf3e4\" stroke=\"#e8871a\" stroke-width=\"1.5\"><\/rect><circle cx=\"522\" cy=\"60\" r=\"15\" fill=\"#e8871a\"><\/circle><text x=\"522\" y=\"65\" text-anchor=\"middle\" font-size=\"13\" font-weight=\"700\" fill=\"#ffffff\">2<\/text><text x=\"547\" y=\"65\" font-size=\"13.5\" font-weight=\"700\" fill=\"#0a2540\">Hierarchy mirrors the org chart<\/text><text x=\"510\" y=\"95\" font-size=\"12\" fill=\"#4a5a6c\">Reorganizations then force a governance<\/text><text x=\"510\" y=\"115\" font-size=\"12\" fill=\"#4a5a6c\">redesign every time teams change.<\/text><text x=\"510\" y=\"133\" font-size=\"12\" font-weight=\"600\" fill=\"#c06a08\">Fix: structure by environment, not org chart<\/text><rect x=\"25\" y=\"158\" width=\"425\" height=\"110\" rx=\"8\" fill=\"#fdf3e4\" stroke=\"#e8871a\" stroke-width=\"1.5\"><\/rect><circle cx=\"57\" cy=\"188\" r=\"15\" fill=\"#e8871a\"><\/circle><text x=\"57\" y=\"193\" text-anchor=\"middle\" font-size=\"13\" font-weight=\"700\" fill=\"#ffffff\">3<\/text><text x=\"82\" y=\"193\" font-size=\"13.5\" font-weight=\"700\" fill=\"#0a2540\">Hierarchy too deep<\/text><text x=\"45\" y=\"223\" font-size=\"12\" fill=\"#4a5a6c\">Six levels are technically available, but<\/text><text x=\"45\" y=\"243\" font-size=\"12\" fill=\"#4a5a6c\">deep trees make inherited policy hard to trace.<\/text><text x=\"45\" y=\"261\" font-size=\"12\" font-weight=\"600\" fill=\"#c06a08\">Fix: keep it to three or four levels<\/text><rect x=\"490\" y=\"158\" width=\"425\" height=\"110\" rx=\"8\" fill=\"#0a2540\"><\/rect><circle cx=\"522\" cy=\"188\" r=\"15\" fill=\"#e8871a\"><\/circle><text x=\"522\" y=\"193\" text-anchor=\"middle\" font-size=\"13\" font-weight=\"700\" fill=\"#ffffff\">4<\/text><text x=\"547\" y=\"193\" font-size=\"13.5\" font-weight=\"700\" fill=\"#ffffff\">Broad RBAC at high scopes<\/text><text x=\"510\" y=\"223\" font-size=\"12\" fill=\"#dcecfa\">Owner or Contributor at a top-level group<\/text><text x=\"510\" y=\"243\" font-size=\"12\" fill=\"#dcecfa\">means one mistake affects everything below.<\/text><text x=\"510\" y=\"261\" font-size=\"12\" font-weight=\"600\" fill=\"#7fc4ff\">Fix: least privilege, PIM for elevation<\/text><\/svg><\/p>\n<p style=\"margin:8px 0 0;font-size:13px;color:#667788;text-align:center;font-style:italic;\">Four mistakes that turn a governance asset into a governance liability, and the fix for each.<\/p>\n<\/div>\n<ul style=\"margin-bottom:20px\">\n<li style=\"margin-bottom:10px\"><strong>Placing subscriptions or resources directly under the root management group.<\/strong> The root applies globally by design, so anything assigned there affects the entire tenant. Reserve it strictly for organization-wide policies, such as a mandatory tagging standard or a baseline security policy that every single subscription must carry, and keep operational subscriptions in dedicated groups beneath it.<\/li>\n<li style=\"margin-bottom:10px\"><strong>Designing the hierarchy around the org chart instead of governance boundaries.<\/strong> Org charts change more often than governance requirements do. A hierarchy built around environment (production, development, sandbox) and compliance boundaries survives a reorg; one built around team names does not.<\/li>\n<li style=\"margin-bottom:10px\"><strong>Building the hierarchy as deep as the platform allows.<\/strong> Six levels are technically supported, but Microsoft&#8217;s own guidance, echoed by every experienced Azure architect, is to keep the working hierarchy to three or four levels. Every additional level makes it harder to trace where an inherited policy actually originated when someone asks why a resource is blocked.<\/li>\n<li style=\"margin-bottom:10px\"><strong>Granting broad RBAC at high scopes for convenience.<\/strong> Assigning Owner or Contributor to a platform team at a top-level management group is tempting because it removes friction, but a mistake made with that access affects every subscription beneath it. Scope access tightly and use Privileged Identity Management for time-bound elevation instead of standing broad access.<\/li>\n<\/ul>\n<h2 style=\"font-size: 24px;\">When Should Businesses Use Management Groups?<\/h2>\n<p>You likely do not need management groups if you run one or two subscriptions and your governance requirements are simple. They earn their place once your Azure footprint becomes difficult to manage as a flat list of subscriptions. Consider them when you have:<\/p>\n<ul style=\"margin-bottom:20px\">\n<li style=\"margin-bottom:10px\">Multiple Azure subscriptions<\/li>\n<li style=\"margin-bottom:10px\">Multiple departments or business units using Azure independently<\/li>\n<li style=\"margin-bottom:10px\">Separate production and development environments that need different controls<\/li>\n<li style=\"margin-bottom:10px\">Centralized security or compliance requirements that must apply everywhere<\/li>\n<li style=\"margin-bottom:10px\">Different teams managing different workloads under one tenant<\/li>\n<li style=\"margin-bottom:10px\">Enterprise-wide policies you are currently configuring subscription by subscription<\/li>\n<li style=\"margin-bottom:10px\">Complex RBAC requirements spanning multiple subscriptions<\/li>\n<li style=\"margin-bottom:10px\">A growing Azure migration program that will keep adding subscriptions over time<\/li>\n<\/ul>\n<p>The simplest way to decide: if you find yourself applying the same governance or access configuration across multiple subscriptions more than once, a management group is very likely the better scope for that configuration. This is precisely the kind of foundational decision that belongs in an <a style=\"color:#007fac;\" href=\"https:\/\/www.apps4rent.com\/blog\/azure-landing-zone\/\">Azure landing zone<\/a> design, ideally settled before workloads start migrating rather than retrofitted once dozens of subscriptions already exist. If a migration is what is driving the growth in subscriptions, our <a style=\"color:#007fac;\" href=\"https:\/\/www.apps4rent.com\/blog\/azure-migration-checklist\/\">Azure migration checklist<\/a> covers landing zone readiness as one of the pre-migration gates for exactly this reason.<\/p>\n<h2 style=\"font-size: 24px;\">How Apps4Rent Helps With Azure Management Groups and Governance<\/h2>\n<p>Apps4Rent provides Managed Azure Services for organizations that need expert help planning, deploying, monitoring, securing, and optimizing their Azure environments. As a Microsoft Solutions Partner and Tier-1 Cloud Solution Provider, SOC 2 Type II certified, serving over 10,000 businesses since 2003, our services include real-time Azure resource monitoring, infrastructure management, OS and application management, backup and disaster recovery, hybrid cloud support, and 24\/7 technical assistance by phone, chat, and email.<\/p>\n<p>On the governance side specifically, our <a style=\"color:#007fac;\" href=\"https:\/\/www.apps4rent.com\/azure-consulting-services\/\">Azure consulting services<\/a> design management group hierarchies aligned with Microsoft&#8217;s Cloud Adoption Framework, deploy them through Bicep or Terraform so the structure stays consistent and auditable, and set the Azure Policy and RBAC baseline that makes governance automatic rather than a manual checklist. We assess your existing environment, plan the target hierarchy, migrate subscriptions into it, and then keep governance current through ongoing <a style=\"color:#007fac;\" href=\"https:\/\/www.apps4rent.com\/managed-azure\/\">Azure managed services<\/a>.<\/p>\n<div style=\"border:2px solid #1565c0;border-radius:6px;padding:22px 26px;margin:32px 0;background:#f0f7ff;\">\n<p style=\"margin:0 0 8px;font-weight:bold;font-size:18px;color:#0d1f35;\">Governing Dozens of Subscriptions by Hand?<\/p>\n<p style=\"margin:0 0 12px;font-size:15px;color:#333;\">A management group hierarchy fixes that once, not every time.<\/p>\n<p style=\"margin:0 0 18px;font-size:15px;color:#333;\">Book a free consultation with an Apps4Rent Azure architect. We will review your current subscription sprawl and map a management group hierarchy that makes policy and access consistent everywhere.<\/p>\n<p style=\"margin:0;\">\n<a href=\"#form\" style=\"display:inline-block;background:#1565c0;color:#fff;text-decoration:none;padding:11px 22px;border-radius:4px;font-size:15px;font-weight:bold;\">Get My Free Governance Review \u2192<\/a>\n<\/p>\n<\/div>\n<h2 style=\"font-size: 24px;\">Frequently Asked Questions<\/h2>\n<ol style=\"margin-bottom:20px\">\n<li style=\"margin-bottom:10px\">\n<h3 style=\"font-size: 21px;\">What is an Azure management group?<\/h3>\n<p>An Azure management group is a governance-scoped container that sits above subscriptions in the Azure resource hierarchy. It lets you group subscriptions according to how your organization wants to manage them, then apply Azure Policy and role-based access control at the management group level so every subscription and resource beneath it inherits the assignment automatically.<\/p>\n<\/li>\n<li style=\"margin-bottom:10px\">\n<h3 style=\"font-size: 21px;\">How many Azure subscriptions can a management group contain?<\/h3>\n<p>A management group can contain many child management groups and subscriptions, with no fixed cap on the number of subscriptions in a single group. Microsoft documents limits on the overall hierarchy instead: up to 10,000 management groups in a single directory, and up to six levels of management group depth, excluding the root and subscription levels.<\/p>\n<\/li>\n<li style=\"margin-bottom:10px\">\n<h3 style=\"font-size: 21px;\">How many levels can an Azure management group hierarchy have?<\/h3>\n<p>Microsoft documents a maximum of six levels of management group depth, excluding the tenant root and subscription levels. Microsoft also recommends keeping the working hierarchy relatively flat, typically three to four levels, since deeper trees make it harder to trace where an inherited policy originated.<\/p>\n<\/li>\n<li style=\"margin-bottom:10px\">\n<h3 style=\"font-size: 21px;\">Can a policy assigned at a management group be overridden at a lower level?<\/h3>\n<p>No. A policy or role assignment made at a management group applies to every subscription and resource beneath it, and it cannot be loosened or overridden at a lower scope in the hierarchy. This is what makes management groups an enforcement mechanism rather than a default that individual subscription owners can opt out of.<\/p>\n<\/li>\n<li style=\"margin-bottom:10px\">\n<h3 style=\"font-size: 21px;\">Do small businesses need Azure management groups?<\/h3>\n<p>Not necessarily. A business running one or two subscriptions with simple governance requirements typically does not need this layer. Management groups become useful once an organization has multiple subscriptions, departments, workloads, or governance requirements that would otherwise require configuring the same policies and access repeatedly.<\/p>\n<\/li>\n<li style=\"margin-bottom:10px\">\n<h3 style=\"font-size: 21px;\">Are Azure management groups part of Azure landing zones?<\/h3>\n<p>Yes. The management group hierarchy is a foundational component of <a style=\"color:#007fac;\" href=\"https:\/\/www.apps4rent.com\/blog\/azure-landing-zone\/\">Azure landing zone<\/a> architecture. It provides the governance structure through which Azure Policy and other controls apply to platform and application landing zones, and it is typically one of the first decisions made when designing a landing zone.<\/p>\n<\/li>\n<li style=\"margin-bottom:10px\">\n<h3 style=\"font-size: 21px;\">Can I create Azure management groups with code instead of the portal?<\/h3>\n<p>Yes. Management groups can be created and managed through the Azure CLI, Azure PowerShell, or infrastructure-as-code tools such as Bicep and Terraform. Code-based creation is the recommended approach for building and maintaining a real hierarchy, since it is repeatable, reviewable, and keeps the structure consistent as it grows.<\/p>\n<\/li>\n<li style=\"margin-bottom:10px\">\n<h3 style=\"font-size: 21px;\">Can Apps4Rent design and manage Azure management groups for us?<\/h3>\n<p>Yes. Apps4Rent&#8217;s Azure consulting services include designing management group hierarchies aligned with Microsoft&#8217;s Cloud Adoption Framework, deploying them with infrastructure as code, and establishing the Azure Policy and RBAC baseline that governs them. Ongoing governance can then be maintained through our Azure managed services.<\/p>\n<\/li>\n<\/ol>\n<div id=\"a4r-sticky-cta\" style=\"position:fixed;bottom:-100px;left:0;right:0;z-index:9999;background:#0a2540;padding:12px 20px;box-shadow:0 -2px 12px rgba(0,0,0,0.18);transition:bottom .35s ease;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n<div style=\"max-width:960px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px;\">\n<p style=\"margin:0;font-size:14px;font-weight:600;color:#ffffff;\">Managing subscriptions one by one? There&#8217;s a better way.<\/p>\n<p><a href=\"https:\/\/www.apps4rent.com\/azure-consulting-services\/\" style=\"display:inline-block;padding:9px 20px;background:#0078d4;color:#ffffff;font-size:13px;font-weight:600;text-decoration:none;border-radius:5px;white-space:nowrap;\">Free Governance Review<\/a><a href=\"tel:18667162040\" style=\"display:inline-block;padding:7px 20px;border:1.5px solid #ffffff;color:#ffffff;font-size:13px;font-weight:600;text-decoration:none;border-radius:5px;white-space:nowrap;margin-left:5px;\">Call 1-866-716-2040<\/a><button id=\"a4r-sticky-close\" aria-label=\"Dismiss\" style=\"background:none;border:none;color:#9fb3c8;font-size:20px;line-height:1;cursor:pointer;padding:4px 8px;\">&times;<\/button><\/div>\n<\/div>\n<p><script>\n(function(){var b=document.getElementById('a4r-sticky-cta');var c=document.getElementById('a4r-sticky-close');if(!b||!c){return;}var dismissed=false;function onScroll(){if(dismissed){return;}b.style.bottom=(window.scrollY>600)?'0':'-100px';}window.addEventListener('scroll',onScroll,{passive:true});c.addEventListener('click',function(){dismissed=true;b.style.bottom='-100px';setTimeout(function(){b.remove();},400);});})();\n<\/script><\/p>\n<p><script type=\"application\/ld+json\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.apps4rent.com\/blog\/azure-management-groups\/#article\",\"headline\":\"Azure Management Groups: Structure & Governance\",\"description\":\"Azure management groups explained: hierarchy, policy inheritance, portal, CLI, PowerShell, and Bicep creation, plus the design mistakes that break governance at scale.\",\"author\":{\"@type\":\"Organization\",\"name\":\"Apps4Rent\",\"url\":\"https:\/\/www.apps4rent.com\/\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Apps4Rent\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https:\/\/www.apps4rent.com\/wp-content\/uploads\/apps4rent-logo.png\"}},\"mainEntityOfPage\":\"https:\/\/www.apps4rent.com\/blog\/azure-management-groups\/\",\"datePublished\":\"2026-09-07\",\"dateModified\":\"2026-09-07\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.apps4rent.com\/blog\/azure-management-groups\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.apps4rent.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https:\/\/www.apps4rent.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Azure Management Groups: Structure & Governance\",\"item\":\"https:\/\/www.apps4rent.com\/blog\/azure-management-groups\/\"}]},{\"@type\":\"FAQPage\",\"@id\":\"https:\/\/www.apps4rent.com\/blog\/azure-management-groups\/#faq\",\"mainEntity\":[{\"@type\":\"Question\",\"name\":\"What is an Azure management group?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"An Azure management group is a governance-scoped container that sits above subscriptions in the Azure resource hierarchy. It lets you group subscriptions according to how your organization wants to manage them, then apply Azure Policy and role-based access control at the management group level so every subscription and resource beneath it inherits the assignment automatically.\"}},{\"@type\":\"Question\",\"name\":\"How many Azure subscriptions can a management group contain?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"A management group can contain many child management groups and subscriptions, with no fixed cap on the number of subscriptions in a single group. Microsoft documents limits on the overall hierarchy instead: up to 10,000 management groups in a single directory, and up to six levels of management group depth, excluding the root and subscription levels.\"}},{\"@type\":\"Question\",\"name\":\"How many levels can an Azure management group hierarchy have?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Microsoft documents a maximum of six levels of management group depth, excluding the tenant root and subscription levels. Microsoft also recommends keeping the working hierarchy relatively flat, typically three to four levels, since deeper trees make it harder to trace where an inherited policy originated.\"}},{\"@type\":\"Question\",\"name\":\"Can a policy assigned at a management group be overridden at a lower level?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"No. A policy or role assignment made at a management group applies to every subscription and resource beneath it, and it cannot be loosened or overridden at a lower scope in the hierarchy. This is what makes management groups an enforcement mechanism rather than a default that individual subscription owners can opt out of.\"}},{\"@type\":\"Question\",\"name\":\"Do small businesses need Azure management groups?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Not necessarily. A business running one or two subscriptions with simple governance requirements typically does not need this layer. Management groups become useful once an organization has multiple subscriptions, departments, workloads, or governance requirements that would otherwise require configuring the same policies and access repeatedly.\"}},{\"@type\":\"Question\",\"name\":\"Are Azure management groups part of Azure landing zones?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes. The management group hierarchy is a foundational component of Azure landing zone architecture. It provides the governance structure through which Azure Policy and other controls apply to platform and application landing zones, and it is typically one of the first decisions made when designing a landing zone.\"}},{\"@type\":\"Question\",\"name\":\"Can I create Azure management groups with code instead of the portal?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes. Management groups can be created and managed through the Azure CLI, Azure PowerShell, or infrastructure-as-code tools such as Bicep and Terraform. Code-based creation is the recommended approach for building and maintaining a real hierarchy, since it is repeatable, reviewable, and keeps the structure consistent as it grows.\"}},{\"@type\":\"Question\",\"name\":\"Can Apps4Rent design and manage Azure management groups for us?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes. Apps4Rent's Azure consulting services include designing management group hierarchies aligned with Microsoft's Cloud Adoption Framework, deploying them with infrastructure as code, and establishing the Azure Policy and RBAC baseline that governs them. Ongoing governance can then be maintained through our Azure managed services.\"}}]}]}<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>One Azure subscription is easy to manage. Ten is manageable with discipline. Fifty, spread across departments that each spin up their own subscriptions, apply their own security practices, and deploy into whatever region is convenient that week, is not something any team manages by hand. Without a structure above the subscription, governance becomes a copy-paste [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[545],"tags":[],"class_list":["post-12129","post","type-post","status-publish","format-standard","hentry","category-azure"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO Pro 5.0.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"Azure management groups explained: hierarchy, policy inheritance, portal, CLI, PowerShell, and Bicep creation, plus the design mistakes that break governance at scale.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Editorial Team\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.apps4rent.com\/blog\/azure-management-groups\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO Pro (AIOSEO) 5.0.1\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Azure Management Groups: Structure &amp; Governance | Apps4Rent\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Azure management groups explained: hierarchy, policy inheritance, portal, CLI, PowerShell, and Bicep creation, plus the design mistakes that break governance at scale.\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/azure-management-groups\\\/#blogposting\",\"name\":\"Azure Management Groups: Structure & Governance | Apps4Rent\",\"headline\":\"Azure Management Groups: Organizing and Governing Subscriptions\",\"author\":{\"@id\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/author\\\/editorial-team\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/#organization\"},\"datePublished\":\"2026-09-05T10:25:23-04:30\",\"dateModified\":\"2026-09-07T10:27:02-04:30\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/azure-management-groups\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/azure-management-groups\\\/#webpage\"},\"articleSection\":\"Azure\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/azure-management-groups\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.apps4rent.com\\\/blog#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/category\\\/azure\\\/#listItem\",\"name\":\"Azure\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/category\\\/azure\\\/#listItem\",\"position\":2,\"name\":\"Azure\",\"item\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/category\\\/azure\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/azure-management-groups\\\/#listItem\",\"name\":\"Azure Management Groups: Organizing and Governing Subscriptions\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.apps4rent.com\\\/blog#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/azure-management-groups\\\/#listItem\",\"position\":3,\"name\":\"Azure Management Groups: Organizing and Governing Subscriptions\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/category\\\/azure\\\/#listItem\",\"name\":\"Azure\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/#organization\",\"name\":\"Apps4Rent\",\"description\":\"Hosted Software - Exchange, SharePoint, Virtual Servers, and more\",\"url\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/author\\\/editorial-team\\\/#author\",\"url\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/author\\\/editorial-team\\\/\",\"name\":\"Editorial Team\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/azure-management-groups\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f1b5fb93c08962b09f2804cf7b4b617ba1e8e1d28921a09c9df810079efeea42?s=96&r=g\",\"width\":96,\"height\":96,\"caption\":\"Editorial Team\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/azure-management-groups\\\/#webpage\",\"url\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/azure-management-groups\\\/\",\"name\":\"Azure Management Groups: Structure & Governance | Apps4Rent\",\"description\":\"Azure management groups explained: hierarchy, policy inheritance, portal, CLI, PowerShell, and Bicep creation, plus the design mistakes that break governance at scale.\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/azure-management-groups\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/author\\\/editorial-team\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/author\\\/editorial-team\\\/#author\"},\"datePublished\":\"2026-09-05T10:25:23-04:30\",\"dateModified\":\"2026-09-07T10:27:02-04:30\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/\",\"name\":\"Apps4Rent\",\"description\":\"Hosted Software - Exchange, SharePoint, Virtual Servers, and more\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.apps4rent.com\\\/blog\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO Pro -->\r\n\t\t<title>Azure Management Groups: Structure &amp; Governance | Apps4Rent<\/title>\n\n","aioseo_head_json":{"title":"Azure Management Groups: Structure & Governance | Apps4Rent","description":"Azure management groups explained: hierarchy, policy inheritance, portal, CLI, PowerShell, and Bicep creation, plus the design mistakes that break governance at scale.","canonical_url":"https:\/\/www.apps4rent.com\/blog\/azure-management-groups\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/www.apps4rent.com\/blog\/azure-management-groups\/#blogposting","name":"Azure Management Groups: Structure & Governance | Apps4Rent","headline":"Azure Management Groups: Organizing and Governing Subscriptions","author":{"@id":"https:\/\/www.apps4rent.com\/blog\/author\/editorial-team\/#author"},"publisher":{"@id":"https:\/\/www.apps4rent.com\/blog\/#organization"},"datePublished":"2026-09-05T10:25:23-04:30","dateModified":"2026-09-07T10:27:02-04:30","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/www.apps4rent.com\/blog\/azure-management-groups\/#webpage"},"isPartOf":{"@id":"https:\/\/www.apps4rent.com\/blog\/azure-management-groups\/#webpage"},"articleSection":"Azure"},{"@type":"BreadcrumbList","@id":"https:\/\/www.apps4rent.com\/blog\/azure-management-groups\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/www.apps4rent.com\/blog#listItem","position":1,"name":"Home","item":"https:\/\/www.apps4rent.com\/blog","nextItem":{"@type":"ListItem","@id":"https:\/\/www.apps4rent.com\/blog\/category\/azure\/#listItem","name":"Azure"}},{"@type":"ListItem","@id":"https:\/\/www.apps4rent.com\/blog\/category\/azure\/#listItem","position":2,"name":"Azure","item":"https:\/\/www.apps4rent.com\/blog\/category\/azure\/","nextItem":{"@type":"ListItem","@id":"https:\/\/www.apps4rent.com\/blog\/azure-management-groups\/#listItem","name":"Azure Management Groups: Organizing and Governing Subscriptions"},"previousItem":{"@type":"ListItem","@id":"https:\/\/www.apps4rent.com\/blog#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/www.apps4rent.com\/blog\/azure-management-groups\/#listItem","position":3,"name":"Azure Management Groups: Organizing and Governing Subscriptions","previousItem":{"@type":"ListItem","@id":"https:\/\/www.apps4rent.com\/blog\/category\/azure\/#listItem","name":"Azure"}}]},{"@type":"Organization","@id":"https:\/\/www.apps4rent.com\/blog\/#organization","name":"Apps4Rent","description":"Hosted Software - Exchange, SharePoint, Virtual Servers, and more","url":"https:\/\/www.apps4rent.com\/blog\/"},{"@type":"Person","@id":"https:\/\/www.apps4rent.com\/blog\/author\/editorial-team\/#author","url":"https:\/\/www.apps4rent.com\/blog\/author\/editorial-team\/","name":"Editorial Team","image":{"@type":"ImageObject","@id":"https:\/\/www.apps4rent.com\/blog\/azure-management-groups\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/f1b5fb93c08962b09f2804cf7b4b617ba1e8e1d28921a09c9df810079efeea42?s=96&r=g","width":96,"height":96,"caption":"Editorial Team"}},{"@type":"WebPage","@id":"https:\/\/www.apps4rent.com\/blog\/azure-management-groups\/#webpage","url":"https:\/\/www.apps4rent.com\/blog\/azure-management-groups\/","name":"Azure Management Groups: Structure & Governance | Apps4Rent","description":"Azure management groups explained: hierarchy, policy inheritance, portal, CLI, PowerShell, and Bicep creation, plus the design mistakes that break governance at scale.","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/www.apps4rent.com\/blog\/#website"},"breadcrumb":{"@id":"https:\/\/www.apps4rent.com\/blog\/azure-management-groups\/#breadcrumblist"},"author":{"@id":"https:\/\/www.apps4rent.com\/blog\/author\/editorial-team\/#author"},"creator":{"@id":"https:\/\/www.apps4rent.com\/blog\/author\/editorial-team\/#author"},"datePublished":"2026-09-05T10:25:23-04:30","dateModified":"2026-09-07T10:27:02-04:30"},{"@type":"WebSite","@id":"https:\/\/www.apps4rent.com\/blog\/#website","url":"https:\/\/www.apps4rent.com\/blog\/","name":"Apps4Rent","description":"Hosted Software - Exchange, SharePoint, Virtual Servers, and more","inLanguage":"en-US","publisher":{"@id":"https:\/\/www.apps4rent.com\/blog\/#organization"}}]},"twitter:card":"summary","twitter:title":"Azure Management Groups: Structure &amp; Governance | Apps4Rent","twitter:description":"Azure management groups explained: hierarchy, policy inheritance, portal, CLI, PowerShell, and Bicep creation, plus the design mistakes that break governance at scale."},"aioseo_meta_data":{"post_id":"12129","title":"Azure Management Groups: Structure &amp; Governance #separator_sa #site_title","description":"Azure management groups explained: hierarchy, policy inheritance, portal, CLI, PowerShell, and Bicep creation, plus the design mistakes that break governance at scale.","keywords":null,"keyphrases":{"focus":{"keyphrase":"","score":0,"analysis":{"keyphraseInTitle":{"score":0,"maxScore":9,"error":1}}},"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"BlogPosting","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","location":null,"local_seo":null,"seo_analyzer_scan_date":"2026-09-07 14:57:43","breadcrumb_settings":null,"limit_modified_date":false,"open_ai":null,"ai":{"faqs":[],"keyPoints":[],"schemas":[],"titles":[],"descriptions":[],"socialPosts":{"email":{"subject":"","preview":"","content":""},"linkedin":[],"twitter":[],"facebook":[],"instagram":[]}},"created":"2026-09-07 12:33:40","updated":"2026-09-07 16:32:34","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"_links":{"self":[{"href":"https:\/\/www.apps4rent.com\/blog\/wp-json\/wp\/v2\/posts\/12129","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.apps4rent.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.apps4rent.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.apps4rent.com\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.apps4rent.com\/blog\/wp-json\/wp\/v2\/comments?post=12129"}],"version-history":[{"count":10,"href":"https:\/\/www.apps4rent.com\/blog\/wp-json\/wp\/v2\/posts\/12129\/revisions"}],"predecessor-version":[{"id":12139,"href":"https:\/\/www.apps4rent.com\/blog\/wp-json\/wp\/v2\/posts\/12129\/revisions\/12139"}],"wp:attachment":[{"href":"https:\/\/www.apps4rent.com\/blog\/wp-json\/wp\/v2\/media?parent=12129"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.apps4rent.com\/blog\/wp-json\/wp\/v2\/categories?post=12129"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.apps4rent.com\/blog\/wp-json\/wp\/v2\/tags?post=12129"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}