How to Buy a Domain on Azure
Azure lets you buy a domain through App Service Domains (inside the Azure portal). Microsoft notes that App Service domains use GoDaddy for domain registration and Azure DNS to host the domain, and Azure DNS usage charges apply in addition to the yearly registration fee: https://learn.microsoft.com/en-us/azure/app-service/manage-custom-dns-buy-domain
This guide is written for people buying a domain primarily to use it with a branded short-link service like Snipzr.
Quick reality check (important)
Azure “buy a domain” has limitations
Microsoft documents a few constraints for App Service Domains, including:
- Limited TLD support (for example:
.com,.net,.org, etc.)
https://learn.microsoft.com/en-us/azure/app-service/manage-custom-dns-buy-domain - Subscription requirements (not supported on free trial / credit-based subscriptions; spending limit must be removed)
https://learn.microsoft.com/en-us/azure/app-service/manage-custom-dns-buy-domain
If you can’t purchase through Azure due to subscription or TLD limits, you can still buy the domain from any registrar and then follow Snipzr’s setup steps using your DNS provider of choice.
Before you start (2 minutes)
Decide: subdomain vs root domain for short links
You’ll usually choose:
- Subdomain (simplest, recommended):
go.yourbrand.com - Root/apex (shortest):
yourbrand.com
Standard DNS doesn’t allow a true CNAME at the zone apex because the apex must also have NS/SOA records. Azure DNS explicitly notes you can’t create a CNAME at the zone apex (@) for this reason:
https://learn.microsoft.com/en-us/azure/dns/dns-private-records#cname-records
Azure DNS provides Alias record sets (often casually called “ALIAS records”), but these are not a generic “CNAME flattening” feature for pointing your apex at an arbitrary third-party hostname. Alias record sets are designed to reference Azure resources (or another record set in the same zone): https://learn.microsoft.com/en-us/azure/dns/dns-alias
Recommended for Snipzr on Azure DNS: use a subdomain CNAME (e.g., go.yourbrand.com) pointing to the Snipzr target hostname.
Step-by-step: Buy the domain in Azure (App Service Domains)
Microsoft’s official walkthrough is here: https://learn.microsoft.com/en-us/azure/app-service/manage-custom-dns-buy-domain
1) Open the domain purchase flow
In the Azure portal, you can:
- Go to your App Service → Custom domains → Buy App Service domain, or
- Search for App Service Domains and choose Create
Microsoft notes that buying from an app’s Custom domains page can pre-map hostnames like the root and www, but you can also create the domain independently:
https://learn.microsoft.com/en-us/azure/app-service/manage-custom-dns-buy-domain
2) Choose subscription, resource group, and domain name
Enter the domain you want. If it’s taken, Azure will suggest alternatives.
Microsoft also lists which TLDs are supported for App Service domains: https://learn.microsoft.com/en-us/azure/app-service/manage-custom-dns-buy-domain
3) Fill contact info carefully (use an email you can access)
Microsoft notes that GoDaddy will send important transactional emails to the contact email, and these emails come from an @secureserver.net address:
https://learn.microsoft.com/en-us/azure/app-service/manage-custom-dns-buy-domain
4) Choose renewal + privacy settings
Microsoft documents:
- Domains renew in one-year increments
- Auto renewal can be enabled
- Privacy protection is enabled by default, but isn’t supported for some TLDs (listed in the doc)
https://learn.microsoft.com/en-us/azure/app-service/manage-custom-dns-buy-domain
5) Review + create
Finish the order. When it completes, Azure shows the domain resource.
After purchase: what Azure creates (and why cost can surprise people)
Microsoft states App Service domains use Azure DNS to host the domain, and Azure DNS charges apply: https://learn.microsoft.com/en-us/azure/app-service/manage-custom-dns-buy-domain
So you’ll typically see:
- an App Service Domain resource (billing/registration)
- an Azure DNS zone (where DNS records live)
Azure DNS pricing details: https://azure.microsoft.com/pricing/details/dns/
DNS for Snipzr (recommended setup on Azure DNS)
Use a subdomain like go.yourbrand.com
This is the most reliable setup with Azure DNS for short-link SaaS.
- In Azure, open your DNS zone (created with the domain)
- Add a CNAME record:
- Name:
go - Alias/Target: the Snipzr hostname target you’re given
- Name:
If you’re unfamiliar with DNS record types, Microsoft’s custom domain guidance for App Service is still a helpful conceptual reference: https://learn.microsoft.com/en-us/azure/app-service/overview-custom-domains
If you bought the domain through Azure (App Service Domains), Azure notes the registrar is GoDaddy and the DNS hosting is Azure DNS: https://learn.microsoft.com/en-us/azure/app-service/manage-custom-dns-buy-domain
That means the most reliable “works everywhere” Snipzr setup is usually a subdomain CNAME (like go.yourbrand.com).
Optional: Using the root/apex domain for short links (what’s actually possible on Azure DNS)
The key limitation
If Snipzr gives you a hostname target (CNAME-style), Azure DNS does not provide a generic apex “CNAME flattening” feature that points @ to an arbitrary external hostname.
Azure DNS alias record sets are meant to reference Azure resources (or another record set), not arbitrary external hostnames: https://learn.microsoft.com/en-us/azure/dns/dns-alias
Azure also documents the DNS standards constraint behind apex CNAME limitations: https://learn.microsoft.com/en-us/azure/dns/dns-private-records#cname-records
What does work at the apex in Azure DNS
Azure DNS alias record sets can be used at the apex when pointing to supported Azure resources, such as:
- Azure Traffic Manager (tutorial for apex + alias): https://learn.microsoft.com/en-us/azure/dns/tutorial-alias-tm
- Azure Front Door (apex onboarding using an alias record set): https://learn.microsoft.com/en-us/azure/frontdoor/front-door-how-to-onboard-apex-domain
Practical recommendation for Snipzr
- If you want the simplest, most compatible setup: use a subdomain CNAME (e.g.,
go.yourbrand.com). - If you require the apex (
yourbrand.com) to behave like it points to a third-party hostname target, you’ll usually move DNS to a provider that supports generic CNAME flattening (like Cloudflare), or you’ll put an Azure service (like Front Door) in front (more complex and typically unnecessary for a URL shortener).
Optional (recommended if you need true apex “CNAME flattening”): Move DNS to Cloudflare
Use this option if:
- you want the shortest possible branded links on the root domain (
yourbrand.com/abc), and - your Snipzr setup expects a hostname target (CNAME-style) for the apex/root.
Azure DNS alias record sets are not intended to point the apex to an arbitrary third-party hostname. They reference Azure resources (or another record set), so Cloudflare is often the simpler path when you need true generic apex CNAME-flattening behavior: https://learn.microsoft.com/en-us/azure/dns/dns-alias
Cloudflare CNAME flattening: https://developers.cloudflare.com/dns/cname-flattening/
Why Cloudflare DNS helps
Cloudflare supports CNAME flattening, which resolves the CNAME target behind the scenes and answers with A/AAAA records so the apex can behave “like a CNAME”: https://developers.cloudflare.com/dns/cname-flattening/
Cloudflare’s “full setup” (authoritative DNS) steps: https://developers.cloudflare.com/dns/zone-setups/full-setup/setup/
High-level steps
- Add your domain to Cloudflare and get the Cloudflare nameservers
- Update your domain’s nameservers at the registrar to the Cloudflare ones
- Recreate your needed DNS records in Cloudflare (including Snipzr records)
If you bought the domain through Azure App Service Domains, the registrar is GoDaddy (per Microsoft). In some cases, changing nameservers may not be exposed cleanly in the Azure UI. If you can’t change nameservers, the simplest fallback is: keep DNS in Azure and use a subdomain (go.yourbrand.com) for Snipzr.
https://learn.microsoft.com/en-us/azure/app-service/manage-custom-dns-buy-domain