How to Create an App Service Plan in Microsoft Azure (Free F1 Tier)

Every web app, API or bot you host on Azure App Service runs on an App Service plan. This guide creates an App Service plan on the Free F1 tier in the Microsoft Azure portal, step by step with real screenshots, and shows the paid tier the form picks by default, so you don’t create one by accident.

What is an Azure App Service plan?

An App Service plan defines the compute resources your apps run on. Every App Service app runs in a plan, and all the apps in one plan share its resources. Each plan defines:

  • the operating system: Windows or Linux
  • the region, such as Central India or West US 3
  • the number of virtual machine (VM) instances and their size
  • the pricing tier, which decides what you pay and which features you get
CategoryTiersWhat it means
Shared computeFree, SharedYour apps run on VMs shared with other customers and get a CPU quota. Meant for development and testing, with no financially backed SLA.
Dedicated computeBasic, Standard, Premium v2, v3 and v4Your apps run on VMs dedicated to your plan. You pay for every instance in the plan.
IsolatedIsolated v2Dedicated VMs inside a dedicated virtual network (an App Service Environment).

This guide uses Free F1. It costs nothing, but it has limits: each app gets 60 CPU minutes per day and 1 GB of storage, and an app that uses up its CPU quota is stopped until the quota resets (App Service limits). Free apps also can’t use custom domains: they’re reached at their *.azurewebsites.net address.

What you’ll have at the end

A Linux App Service plan named asp-jdbots-demo on the Free F1 tier, in the resource group rg-jdbots-demo in Central India, ready to host its first app.

Prerequisites

Step 1: Open App Service plans in the Azure portal

Sign in to the Azure portal. In the search box at the top of the page, type App Service plans, then select App Service plans under Services.

The Azure portal search box with App Service plans typed in, showing the App Service plans service at the top of the Services results.
Type App Service plans in the portal search box, then select the App Service plans service.

Step 2: Select + Create

The App Service plans page lists the plans you can access. Select + Create at the start of the toolbar.

The App Service plans page in the Azure portal with the blue + Create button at the start of the toolbar.
On the App Service plans page, select + Create.

Step 3: Check the defaults before you type anything

The Create App Service Plan form opens on the Basics tab. Before you fill it in, look at what it already selected. In this run it chose:

  • Resource Group: (New) Resource group, a brand-new group instead of an existing one
  • Region: West US 3
  • Pricing plan: Premium V3 P1V3 (8 GB memory, 2 vCPU), a paid production tier
The Create App Service Plan form before any changes, defaulting to a new resource group, an empty name, Linux, the West US 3 region and the paid Premium V3 P1V3 pricing plan.
The defaults: a new resource group, West US 3 and Premium V3 P1V3, which is a paid tier.

Watch the pricing plan. If you fill in only the name and select Review + create, you create a Premium V3 plan, which is billed for every hour it exists, even with no apps in it. Your defaults can differ by account and region, which is exactly why you set every field yourself.

Step 4: Fill in the project and plan details

FieldWhat it meansValue used in this guide
SubscriptionThe subscription that pays for the plan.Your subscription (shown as My Subscription in the screenshots)
Resource GroupThe group the plan belongs to. Pick an existing group, or select Create new.rg-jdbots-demo
Name1 to 60 characters: letters, digits and hyphens, unique within the resource group. Start it with asp-, the abbreviation used for App Service plans in Microsoft’s naming conventions.asp-jdbots-demo
Operating SystemLinux or Windows. Pick what your app stack needs: an app can only move between plans with the same operating system.Linux
RegionWhere the plan’s compute runs. Pick the region closest to your users: you can’t change a plan’s region later.Central India

Step 5: Choose the Free F1 pricing plan

Open the Pricing plan list. It shows popular plans with an estimated monthly price in your billing currency, which is Indian rupees (INR) for this account. In this run, Free F1 showed 0.00 INR per month, Basic B1 1,093.18 INR per month, and the default Premium V3 P1V3 9,960.07 INR per month.

The open Pricing plan list in the Create App Service Plan form, showing Free F1 at 0.00 INR per month, Basic B1 at 1,093.18 INR per month, and Premium V4 and Premium V3 plans with higher estimated monthly prices.
The Pricing plan list shows the estimated monthly price of each tier in your billing currency.

Select Free F1. The field now reads Free F1 (1 GB memory), and the form looks like this:

The Create App Service Plan form filled in with resource group rg-jdbots-demo, name asp-jdbots-demo, operating system Linux, region Central India and pricing plan Free F1 (1 GB memory).
Basics filled in: rg-jdbots-demo, asp-jdbots-demo, Linux, Central India and Free F1.

Tip: select Explore pricing plans under the list to see more details about each tier before you choose.

Step 6: Leave zone redundancy disabled

Scroll down to Zone redundancy. Zone redundancy spreads a plan’s instances across availability zones so your apps survive a zone failure, and it needs a Premium v2, v3 or v4 plan with at least two instances (Reliability in Azure App Service). On the Free tier, the portal says so and keeps Disabled selected.

The Zone redundancy section of the Create App Service Plan form with a notice that zone redundancy is not available on the selected pricing tier, and the Disabled option selected.
On the Free tier, zone redundancy is not available and stays Disabled.

The Tags tab is optional, so select Review + create at the bottom of the form.

The blue Review + create button with the Previous and Next : Tags buttons at the bottom of the Create App Service Plan form.
Select Review + create.

Step 7: Review and create the plan

The Review + create tab summarizes the plan. Check that SKU says Free and Memory says 1 GB memory.

The Review + create tab summarizing the App Service plan: subscription My Subscription, resource group rg-jdbots-demo, name asp-jdbots-demo, operating system Linux, region Central India, SKU Free and 1 GB memory.
Check the summary: SKU Free with 1 GB memory.

Select Create. The Download a template for automation link next to it gives you the same plan as a template you can deploy again later.

The blue Create button next to Previous, a disabled Next button and a Download a template for automation link at the bottom of the Review + create tab.
Select Create to deploy the App Service plan.

Step 8: Wait for the deployment to complete

Azure deploys the plan and opens the deployment page. When it shows Your deployment is complete, select Go to resource.

The deployment overview page in the Azure portal reading Your deployment is complete, for the resource group rg-jdbots-demo, with a Go to resource button.
When the deployment completes, select Go to resource.

Step 9: Check your new App Service plan

The plan’s Overview page confirms every choice: Status Ready, Location Central India, Pricing plan F1, Instance count 1, App(s) / Slots 0 / 0, Operating System Linux and Zone redundant Disabled. The banner at the top notes that plan metrics aren’t available on the Free and Shared tiers.

The overview page of the asp-jdbots-demo Linux App Service plan, showing status Ready, location Central India, pricing plan F1, instance count 1, zero apps and zone redundancy disabled.
The new plan is Ready on the F1 tier, with no apps yet.

Step 10: Change the pricing tier later (optional)

You can move a plan to another tier at any time from Scale up (App Service plan) in its left menu (Scale up an app in Azure App Service). The page lists every tier with its vCPUs, memory, storage, instance limit, SLA, and price per hour and per month. Free F1 is ticked as the current tier.

The Scale up (App Service plan) page listing pricing tiers with vCPU, memory, storage, scale, SLA and cost per hour and per month in INR, with Free F1 selected under Dev/Test.
Scale up lists every tier with its price. Free F1 is the current tier.

To change the tier, select a row and then Select. Any tier other than Free is billed, so move up only when you need something Free doesn’t have, such as a custom domain, more CPU or an SLA. This guide stops here without changing the tier.

Do It with the Azure CLI

The Azure CLI command az appservice plan create creates the same plan: give it the resource group, the name, the location and --sku F1. In current versions of the CLI, new plans are Linux unless you pass --is-linux false. See Microsoft’s az appservice plan reference for every parameter.

Clean Up When You’re Done

A Free F1 plan costs nothing, but each subscription can have only 10 Free plans per region (App Service limits), so delete practice plans you no longer need:

  1. Open the plan and select Delete in its toolbar (you can see it in the Step 9 screenshot).
  2. Confirm the deletion.

Or delete the whole resource group, which removes the plan and everything else in it: see the clean-up steps in How to Create a Resource Group in the Microsoft Azure Portal.

Warning: deleting is permanent. Delete only the plans and resource groups you created for practice.

Common Mistakes

MistakeWhat happensDo this instead
Keeping the default Premium V3 P1V3You create a paid plan that’s billed for every hour it exists.Set Pricing plan to Free F1, or the tier you actually need, before Review + create.
Leaving Region on the defaultYour apps run far from your users, and you can’t change a plan’s region later.Pick the region closest to your users in Step 4.
Choosing the wrong operating systemAn app can only move between plans with the same operating system.Match the OS to your app stack before you create the plan.
Expecting production features on FreeNo custom domains, no SLA, and 60 CPU minutes per app per day.Use Free for learning and testing, and scale up for production.

Troubleshooting

ProblemLikely causeFix
The pricing tier is not allowed in this resource group or <SKU_NAME> workers are not available in resource group <RESOURCE_GROUP_NAME>The resource group already holds plans or apps whose region, OS or tier combination doesn’t support the tier you picked.Create the plan in a new resource group, as Microsoft recommends.
The zone redundancy options are greyed outThe selected tier doesn’t support zone redundancy.Use Premium v2, v3 or v4 with at least two instances, if you need it.
An app on the plan returns HTTP 403The app used up its Free CPU quota for the day.Wait for the daily reset or scale the plan up (quotas and metrics).

FAQ

Is the Free F1 tier really free?

Yes. The portal showed 0.00 per month for Free F1. Every other tier is charged for the compute it uses (cost of App Service plans).

Can I change the pricing tier later?

Yes, up or down, from Scale up (App Service plan). Moving down can remove features your apps use, such as TLS/SSL bindings for custom domains.

Can I change the region or operating system later?

No. A plan’s region is fixed, and an app can’t move to a plan with a different operating system. To change either, create a new plan and redeploy the app (Manage an App Service plan).

Can several apps share one plan?

Yes. All the apps in a plan share its compute, which is a cheap way to run test environments. Give an app its own plan when it needs resources that other apps can’t take away.

Do I pay for a plan with no apps in it?

On Basic and higher tiers, yes: you pay for every instance in the plan whether or not it hosts apps. Free costs nothing either way.

Conclusion

You created a Free F1 Linux App Service plan in Central India, avoided the paid default, and saw where to change the tier later. The plan is ready to host your first web app, API or bot.

Additional Resources

Leave a Reply

Up ↑