Main VM struccture

a2z mc 0 Reputation points
2026-06-15T12:08:44.42+00:00

this my first vm, I believe that I have few resource not used and I have been charged for them.

I need help to eliminate these not needed resources, please..

Azure Advisor
Azure Advisor

An Azure personalized recommendation engine that helps users follow best practices to optimize Azure deployments.


2 answers

Sort by: Most helpful
  1. Lakshma Reddy Vattijonnala 1,005 Reputation points Microsoft External Staff Moderator
    2026-06-15T12:33:58.79+00:00

    Hi @a2z mc When you create a Virtual Machine in Azure, several additional resources are deployed alongside it. Some of these continue to incur charges even if the VM is stopped, unless the VM is properly Stopped (deallocated) from the Azure portal. Common resources tied to a VM that may be charged include:

    • Managed Disks (OS disk + any data disks) — billed even when the VM is deallocated.
    • Public IP address (especially Standard SKU / Static) — billed hourly.
    • Network Interface (NIC) — typically free, but tied to other billable resources.
    • Recovery Services Vault / Backup — charged per protected instance and storage used.
    • Snapshots — billed based on size.
    • Log Analytics workspace / Diagnostic Storage Account — billed on ingestion and retention.
    • Bastion / Load Balancer / NAT Gateway / VPN Gateway (if configured).

    Please follow the below process to Identify what is being charged:

    1. Sign in to the Azure portal.
    2. Navigate to Cost Management + Billing → Cost analysis.
    3. Set the timeframe to Last 30 days.
    4. Group by Resource to see exactly which resources are generating charges.
    5. Sort by Cost (descending) to identify the top contributors.

    Please refer the document for more details https://learn.microsoft.com/en-us/azure/cost-management-billing/costs/quick-acm-cost-analysis.

    Stop (deallocate) the VM when not in use:

    Simply shutting down the VM from inside the OS does not stop compute charges. You must Stop it from the Azure portal so the status shows Stopped (deallocated).

    Please refer the document for more details https://learn.microsoft.com/en-us/azure/virtual-machines/states-billing

    Delete unused resources:

    Once you confirm a resource is no longer needed, you can delete it from the Azure portal:

    • Virtual Machine → Delete from the VM overview page.
    • Disks → Identify unattached disks under Disks blade (state = Unattached) and delete them.
    • Public IPs → Delete any that aren't associated with a NIC or load balancer.
    • Network Interfaces / NSGs → Remove leftover NICs not bound to a VM.
    • Recovery Services Vault → Stop backup → Delete backup data → Delete the vault.
    • Resource Group → If everything inside is unused, deleting the entire Resource Group removes all child resources in one action.

    Please refer the document for more details

    Prevent future surprises:

    Please refer the document for more details https://learn.microsoft.com/en-us/azure/cost-management-billing/costs/tutorial-acm-create-budgets?tabs=psbudget

    If you need any further assistance kindly help us to share the following details:

    1. What resource types do you see on the bill (for example: Compute/VM, Managed Disks, Public IP, Load balancer, Network, Backup, Azure Monitor/Logs, etc.)?
    2. Are you running this VM 24/7, or only during certain hours?
    3. What OS and approximate workload (web app, database, just testing, etc.)?
    4. Do you have any additional disks attached, and do you know their sizes/types?
    5. Do you currently have Azure Monitor / VM Insights or the Azure Monitor Agent installed?

    If you have further questions regarding this answer, feel free to click "Comment". If you find the answer helpful, please click "upvote" and accept it. This helps the community by allowing others with similar queries to easily find the solution.

    Was this answer helpful?

    0 comments No comments

  2. AI answer

    2026-06-15T12:09:11.4533333+00:00

    To stop being charged for unused Azure VM resources and safely remove them, follow these steps:

    1. Deallocate or delete unused virtual machines
      • Deallocating a VM stops compute charges but keeps disks and networking resources:
        Use Azure portal, CLI, or PowerShell to stop the VM so it enters the Deallocated state. Deallocated VMs do not incur compute charges, but disks and other components still incur costs.
      • If the VM is no longer needed at all, delete it. This removes the VM resource but can leave supporting resources (disks, networks, etc.) behind, so continue with the next steps.
    2. Identify and remove unused or orphaned resources
      After deleting or deallocating VMs, some resources can remain and keep accruing charges:
      • Managed disks (OS and data disks):
        • OS disks are usually deleted with the VM by default, but this can be disabled at creation time. Any remaining OS or data disks continue to incur storage costs until deleted.
        • In the portal, go to Disks, filter by resource group or subscription, and delete disks not attached to any VM and not needed for backup.
      • Virtual networks and IP addresses:
        • Virtual networks themselves can incur bandwidth-related charges, and public IP addresses can be billable.
        • Check for virtual networks, NICs, and public IPs that are no longer used by any VM and delete them if they are not required for other workloads.
      • Load balancers and other networking components:
        • Load balancers, if present, can incur charges based on rules and data processed. Remove unused load balancers and related resources.
    3. Delete entire resource groups when appropriate
      If a VM and all its supporting resources were created in a dedicated resource group for testing or learning, the simplest way to clean up is to delete the whole resource group:
      • Deleting the resource group removes the VM and all associated resources (disks, networks, IPs, etc.) in one operation, which stops all charges for those resources.
      • This is recommended when the group contains only resources that are safe to remove.
    4. Regularly inventory and clean up unused resources
      • Take an inventory of all resources in the subscription and identify those that are idle, orphaned, or no longer needed (for example, test environments, demo builds, old snapshots, unused IPs, and storage accounts).
      • Remove idle components rather than leaving them deployed but unused. If data is needed, back it up first, then delete the resource.
    5. Understand what is billed for a VM
      To avoid unexpected charges in the future, be aware that a VM’s cost is not just the VM itself:
      • Virtual machine compute: billed per hour, varies by size and region, and depends on the VM state.
      • Storage: OS and data disks are billed based on disk type and size.
      • Networking: bandwidth, public IPs, and load balancers can incur charges.
      • Other services: Azure Monitor, Bastion, DNS, and premium marketplace software have their own meters.
    6. Use cost-optimization practices
      • Deallocate VMs when not in use instead of just shutting them down inside the OS.
      • Periodically review cost reports to detect idle or underutilized resources.
      • Remove unused resources promptly to avoid ongoing charges.

    If unsure which specific resources are safe to delete, start by identifying VMs that are no longer needed, then trace and remove their associated disks, networks, and IPs, or delete the entire resource group they reside in.


    References:

    AI-generated content may be incorrect. Read our transparency notes for more information.

    Was this answer helpful?

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.