CASE STUDY

Azure cost optimisation and cloud modernisation for a technology business

Microsoft Azure logo for cloud cost optimisation case study

Challenge

A Microsoft-focused technology business needed to reduce Azure fixed run-rate while keeping production websites, CRM services, custom domains, HTTPS, monitoring, and business-critical workloads online. Spend had accumulated across oversized SKUs, older environments, paid hosting for static workloads, and resources that were no longer needed but still contributed to recurring cost.

Solution

The delivery team reviewed the Azure estate, separated fixed SKU cost from usage-based billing noise, identified the safest optimisation candidates, and applied staged changes only after validation. The work covered App Service right-sizing, CRM infrastructure migration, PostgreSQL resizing, static-site migration, DNS and SSL checks, obsolete-resource cleanup, and production performance testing.

Delivery scope

  • Azure inventory and fixed-cost run-rate modelling across production and legacy environments
  • CRM App Service and PostgreSQL migration to lower-cost resources
  • Production website App Service right-sizing with performance validation before final SKU selection
  • Static corporate website migration from paid App Service hosting to Azure Static Web Apps Free
  • Custom domain, DNS, managed certificate, and HTTPS validation after each infrastructure change
  • Deletion of obsolete source environments and legacy resources only after functional checks passed
  • Load testing and response-time validation to avoid under-provisioning production traffic

Key implementation challenges

  • Reducing cloud spend without interrupting production availability
  • Migrating CRM infrastructure while preserving login and domain behaviour
  • Choosing the lowest viable App Service SKU from evidence rather than guesswork
  • Converting a server-rendered website deployment into a static artifact where static hosting was sufficient
  • Maintaining apex-domain HTTPS during the move to Static Web Apps
  • Distinguishing durable run-rate savings from Month-to-Date billing values that still included already-incurred cost
  • Cleaning up old resources only after production services, SSL, and HTTP responses were verified

Technical specifications

  • Fixed Azure run-rate reduced by approximately 80%
  • Production website right-sized from a larger App Service plan to a validated mid-tier Linux SKU
  • CRM application hosting moved to a lower-cost Linux App Service SKU
  • CRM PostgreSQL moved to a smaller flexible-server configuration with preserved operational behaviour
  • Static website hosting moved from paid App Service to Azure Static Web Apps Free
  • Load testing used k6 and HTTP-level checks to validate production behaviour after right-sizing
  • Public material excludes tenant IDs, subscription IDs, resource IDs, DNS validation tokens, and internal command history

Technologies

  • Microsoft Azure
  • Azure App Service and App Service Plans
  • Azure Static Web Apps
  • Azure Database for PostgreSQL Flexible Server
  • Azure Application Insights and Log Analytics
  • Azure Service Bus, App Configuration, Functions Consumption Plan, and Storage
  • Azure CLI, k6, HTTP smoke tests, DNS validation, and TLS validation

Results

  • Fixed Azure run-rate reduced by approximately 80% without removing required production services
  • Production domains and HTTPS remained working after migration, right-sizing, and cleanup
  • Production website capacity was validated with 0% HTTP errors up to a realistic active-user test level
  • Higher concurrency testing showed response-time degradation before HTTP failure, giving the team a practical capacity boundary
  • Static hosting replaced unnecessary paid server hosting for a static corporate site
  • Old environments, source resources, and test infrastructure were removed after validation
  • Remaining Azure cost drivers became clearer for future monitoring and governance

Summary

The project turned an accumulated Azure estate into a cleaner, lower-cost operating model. By combining cost modelling, staged infrastructure changes, production validation, and load testing, the team reduced fixed run-rate by around 80% while preserving the services, domains, and HTTPS behaviour the business depended on.

Next step

See the Azure cost optimisation solution page

For the broader buyer-facing view, including the optimisation approach, FAQ, and discovery path, go to the dedicated solution page.