We've been experiencing monthly costs of around $300 on our Azure SQL database, running Umbraco v13 and v12 on Azure Web Apps. We're currently using the Azure SQL DB - General Purpose - Serverless: Gen5, 1 vCore tier, and our Azure Web App is configured as S1 pricing plan.
After investigating the database queries, it seems that Umbraco is executing certain queries, like cached instructions sorting, on a 1-minute interval. For example, we've noticed the following query running about 700 times per hour:
(@0 int)
SELECT TOP 100 *
FROM [umbracoCacheInstruction]
WHERE (([umbracoCacheInstruction].[id] > @0))
ORDER BY ([umbracoCacheInstruction].[id])
We temporarily set the Web App setting "Always On" to off, but we're still looking for a more permanent solution.
Has anyone else encountered this issue? Is there a way to reduce the number of queries while keeping the application fully functional and available?
Thank you in advance for any insights or suggestions!
Why don't you try the standard S0 which gives you up to 250GB size and 10 DTU? and cost only $14 / month
I'm using it for a magazine website, Umbraco 14, thousands of posts and works ok.
Another way to save is the number of instances. For few months I noticed that I pay over $300 / month. Apparently I used 4 instances - which I didn't really need (I have automatic scale, so if I have spike in traffic it will scale up automatically) .
Now I'm using only 1 instance which is ok for "regular" days and I pay much less.
I’m curious—are you using the DTU or vCore pricing model? I’m still learning my way around the cloud and trying to understand the differences between these options.
At first, I assumed the vCore plan would be cheaper since it seems more flexible, with you only paying for what you use. But now I’m wondering if Umbraco might work differently with these plans because of how it uses the database.
I wonder is there any official Umbraco recommendation on this topic?
I'm using DTU.
If you don't have 100k visitors / day just use the DTU. You get 10 DTU's for $14 / month and up to 250GB
See, Azure is very tricky when it comes to cost. Small things can cost you lot of money. For example, the number of instances.
Most of the basic plans anyway probably going to be "overkill" for you.
I think the best tactic is start with the basic and see if it's meets your needs. If your website is too slow, etc. add more. But only based on a need.
Also, use the automatic scale option, in case you have spike in visitors to your website.
As far as I know Umbraco team is not recommend specific plan or DB on Azure.
We did try the vCore but we also noticed high db costs. I'm assuming umbraco will be running tasks etc, so that will cause alot of db usage, hence the higher costs.
We use dtu for all databases. For context, the largest tier we have is an S4 that runs umbraco 13 with umbraco commerce and is a high transaction site (>2mil gbp pcm), the dtu spikes to 100% only during data import, otherwise it rarely gets over 20%, but we cache heavily.
Reducing Azure DB costs
We've been experiencing monthly costs of around $300 on our Azure SQL database, running Umbraco v13 and v12 on Azure Web Apps. We're currently using the Azure SQL DB - General Purpose - Serverless: Gen5, 1 vCore tier, and our Azure Web App is configured as S1 pricing plan.
After investigating the database queries, it seems that Umbraco is executing certain queries, like cached instructions sorting, on a 1-minute interval. For example, we've noticed the following query running about 700 times per hour:
We temporarily set the Web App setting "Always On" to off, but we're still looking for a more permanent solution.
Has anyone else encountered this issue? Is there a way to reduce the number of queries while keeping the application fully functional and available?
Thank you in advance for any insights or suggestions!
Do you really need the Serverless: Gen5 ?
Why don't you try the standard S0 which gives you up to 250GB size and 10 DTU? and cost only $14 / month
I'm using it for a magazine website, Umbraco 14, thousands of posts and works ok.
Another way to save is the number of instances. For few months I noticed that I pay over $300 / month. Apparently I used 4 instances - which I didn't really need (I have automatic scale, so if I have spike in traffic it will scale up automatically) .
Now I'm using only 1 instance which is ok for "regular" days and I pay much less.
Hi Meni,
Thanks for your reply!
I’m curious—are you using the DTU or vCore pricing model? I’m still learning my way around the cloud and trying to understand the differences between these options.
At first, I assumed the vCore plan would be cheaper since it seems more flexible, with you only paying for what you use. But now I’m wondering if Umbraco might work differently with these plans because of how it uses the database.
I wonder is there any official Umbraco recommendation on this topic?
I'm using DTU. If you don't have 100k visitors / day just use the DTU. You get 10 DTU's for $14 / month and up to 250GB
See, Azure is very tricky when it comes to cost. Small things can cost you lot of money. For example, the number of instances.
Most of the basic plans anyway probably going to be "overkill" for you.
I think the best tactic is start with the basic and see if it's meets your needs. If your website is too slow, etc. add more. But only based on a need.
Also, use the automatic scale option, in case you have spike in visitors to your website.
As far as I know Umbraco team is not recommend specific plan or DB on Azure.
Hi
We did try the vCore but we also noticed high db costs. I'm assuming umbraco will be running tasks etc, so that will cause alot of db usage, hence the higher costs.
We use dtu for all databases. For context, the largest tier we have is an S4 that runs umbraco 13 with umbraco commerce and is a high transaction site (>2mil gbp pcm), the dtu spikes to 100% only during data import, otherwise it rarely gets over 20%, but we cache heavily.
Regards.
is working on a reply...