Deploys the AVD landing zone step by step.
Run each command in Azure Cloud Shell (PowerShell),
paste the output back here, and the portal tells you what to run next. Everything happens in your browser: pasted output is never sent anywhere.
Personal project, not for production. Provided as is, without warranty of any kind (MIT License). Not affiliated with, endorsed by or supported by the author's employer, and not an official Microsoft product. Use a lab subscription.
Deployment settings
Used to build the commands. Values from pasted output fill these in automatically; they are kept only in this browser.
Clears the saved progress and settings.
Choose a region ·
Ranks Azure regions by round-trip time from this browser. Run it from where your users work, not from Cloud Shell or a VPN. Under 100 ms is good for AVD, 100–150 ms is usable, above 150 ms feels sluggish.
About 20 seconds: each region gets a warm-up request and 5 timed ones.
#
Region
Geography
Median
Rating
Size the host pool ·
Starts from the minimum viable kit: one memory-optimized E4as_v5 host and a 100 GiB profile share. Choose the number of hosts, or Automatic to size them from how many people use them and how they work (Microsoft's multi-session guidance: light 6, medium 4, heavy 2, power 1 user per vCPU). It suggests memory-optimized E-series sizes, because hosts shared by many users run out of memory before CPU, and every host gets a Premium SSD OS disk. Once you apply a sizing, the commands carry it: the pre-deployment preflight checks quota and availability for it, and deploy.sh deploys it. The next step prices it.
One pooled host pool for now; the sizing is kept per host pool so more can be added later.
Cost ·
Most of the cost is the hours the session hosts run, and two settings decide those hours. They are deployed with the landing zone. The pre-deployment preflight prices the plan at Azure list prices for your region; after that, changing a setting here reprices it without running anything.
Pre-deployment preflight
Deploy the landing zone
Post-deployment setup
Sign in
Verify access · not checked
Checks access to the desktop from this device and network, signed in as yourself. Run it where people will connect from. Each check says what it proves and what it doesn't.
Can this device reach AVD?
A few seconds: each host gets a warm-up request and 5 timed ones. Nothing you paste or measure leaves this browser.
Sign in as a member of the users group. Expect a one-time prompt to allow the remote desktop connection the first time you reach each session host (Microsoft Entra single sign-on): choose Yes. A stopped host starts on the first connection, which then takes a few minutes and isn't representative. To test the Windows App and its RDP path, open the Windows App and choose the same desktop. There's no direct Windows App link: its parameters aren't confirmed yet.
Next step
Copy a block, paste it into Cloud Shell, then paste the output below. Keep the Cloud Shell tab in front while it runs.
Wrong advice, or stuck?
Paste Cloud Shell output
Report a problem
Opens an issue on GitHub with the output you pasted and what the portal made of it. The report is redacted here, in your browser: email addresses and UPNs, IDs, subscription, tenant, storage and key vault names, public IP addresses, your name prefix and group names, and anything that looks like a password, key or token. Nothing is sent until you submit the issue on GitHub (you need a GitHub account), and issues are public, so read the report first.