5 Ways You Can Save Money Using Azure App Service Plans

Image for post
Image for post

So you’re thinking of hosting your site on Azure, but you don’t want to wake up one morning with a hefty bill to pay and some tears to cry :)

Here are some tips you can use to manage your Azure App Service plan on a tight budget:

1. Use Linux as OS Type

Now the first thing that comes to your mind when setting up an app service plan is to choose “Windows” as an OS type such as:

Image for post
Image for post

The reason you might want to do this is that you have a .NET framework application, could be your company’s website or a legacy application that you might want to host on Azure. However, if you are going to be using .Net Core you can still publish your web app in a Linux app service plan! Hurray!

BUT WAIT, Let’s check the pricing tiers!

Image for post
Image for post

There’s a 41.61 USD per month difference between windows and linux plan! So if you were to host your simple site on a windows app service plan you would be paying $41.61 more.

We’re choosing B1 tier here assuming that:

  • Your site has low to medium traffic (1000 users streching it to 50k users more or less).
  • There’s not much computing going on, we’re just serving our users some content.
  • We need SSL and a custom domain.
Image for post
Image for post
B1 tier supports SSL and custom domain & it’s cheap

Most likely you will need to setup SSL with your site so choosing B1 tier will provide most of our site’s needs while paying an affordable price. There are other ways you can configure SSL with Cloudflare for free (yes, free SSL) by using Cloudflare as a reverse proxy like this one.

2. Host Multiple Web Apps on the Same Plan

This one is pretty straightforward. App service plans are designed to host multiple web apps and even azure functions on the same plan that you purchased.

So if you’re anticipating that more web apps will be hosted on Azure, it’s more cost-effective to purchase an app service plan.

An example of hosting multiple web apps could like this:

Image for post
Image for post

You could implement a .Net Core company site, integrate it with a wordpress site for blogging or content management, and use azure functions for simple compute operations like email subscriptions.

The point is: try not to underuse your app service plan.

3. Disable or Remove Application Insights

Now this one is not directly related to App Service Plans but rather web apps. When you create a new web app such as:

Image for post
Image for post

By default, Microsoft will highlight “Yes” for enabling application insights in the monitoring tab. You might be tempted to proceed to the review screen thinking that it’s going to be fine only to wake up one day with budget alerts firing and a painful bill to pay at the end of the month. In other words, Application Insights costs money.

Application Insights is useful if you want to monitor your application performance, run ping tests from different regions, or maybe analyze your user engagement with funnels and user flows.

Since our pockets are empty and we’re trying to save money just click “No” before proceeding to the next step.

4. Use Free SSL Managed Certificate

This one is also related to Web Apps. In simple terms, if you have a “www.” domain name, you can use a free certificate managed by Azure. Here’s the link to the microsoft article : LINK

The limitations to this is that it doesn’t support the below:

  • Wildcard Domains : *.mysite.com
  • Naked Domains : mysite.com
  • You cannot export the certificate as it is managed by Azure

5. Experiment with Static Sites & Serverless Architectures

This is by far the most cost effective way to manage your consumption on Azure: Going Serverless.

For this to work, we need to make sure that our site is either a static site or an SPA-Single Page Application like Angular.
You can’t use .Net for your client app !

The backend might include some Azure functions which will take care of all the processing. In addition, you can add storage like SQL in case you want to persist your data.
This would look something like this:

Image for post
Image for post

In this case, you can use Azure CDN as entry point for you users by setting your site’s domain name in the custom domain names of the content delivery network.

For more information on this type of approach, check out these folks: https://medium.com/bb-tutorials-and-thoughts/how-to-host-an-angular-static-website-on-azure-1257eed9d47e

https://medium.com/@harrish/static-hosting-angular-project-in-azure-blob-storage-with-azure-devops-integration-ce73bd6a51b9

That’s it! High Five !

Comments & feedbacks are most welcomed :)

Azure, .Net & SharePoint Developer. Basically a Microsoft tech guy.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store