TLDR:When you Stopped the VM using the STOP button in the NEW AZURE PORTAL,it gets De allocated and you will not get billed for anything but charges for storage.
When a VM is provisioned it is assigned compute, storage and network resources. The storage is your Azure Storage Account and the provisioning process creates a container with the storage blob. You pay for the amount of storage you use regardless if it is a running or stopped VM, a storage file or any other type of data
If you shut down your VM from the OS itself, it will stop the VM but not deallocate it. You will need to stop if from the portal or from PowerShell. If you shut down your VM form the OS, it will continue being billed.
If you stop the VM from the management portal or through PowerShell, you won’t be billed for the VM. Please make sure that the VMs are in the status “Stopped (Deallocated)” in the Windows Azure management portal.
When you set your VM as Stop(Deallocated) status, you are not being billed the hourly compute time for the VM while it is in that state. “Deallocated” means that the VM configuration is no longer being actively associated with fabric resources, such as virtual CPUs, memory and networks. In this state, the VM will not continue to allocate compute charges, but since fabric resources are deallocated, the VM could receive a different internal IP address (called “Dynamic IPs” or “DIPs” in Windows Azure) the next time it is started.
I would recommend you could refer to the Craig’s post and the blog from the below mentioned link:
(http://blogs.technet.com/b/keithmayer/archive/2013/06/19/windows-azure-virtual-machines-there-s-more-than-1-way-to-shutdown-a-vm.aspx ) for more details.
You are charged when the VM status is Running or Stopped, but you are not charged when the VM status is Stopped (De-allocated). To put a VM in the Stopped (De-allocated) state, do one of the following:
- Shut down or delete the VM from the Azure classic portal.
- Use the Stop-AzureVM cmdlet, available in the Azure PowerShell module.
- Use the Shutdown Role operation in the Service Management REST API and specify StoppedDeallocated for the PostShutdownAction element.
Then the PowerShell module set-up is here: https://azure.microsoft.com/en-us/documentation/articles/powershell-install-configure/