CostMonStart free

Azure cost monitoring

Catch Azure overspend before it reaches the invoice

CostMon connects to Azure Cost Management's Query API. It turns the cost of each subscription into one daily view. A jump in one service is visible within days, before the invoice.

Azure Cost Management, live today

Azure spend spreads across subscriptions. Cost Management shows one subscription at a time. Nobody sees the total until finance reconciles the invoice, weeks later. Reservations lapse without notice. Disks and public IPs from deleted VMs keep billing. A rise in cost has no early signal.

Cost anatomy

What actually drives your Azure bill

Reservations lapse unnoticed
When an Azure reservation or Savings Plan ends, or usage drifts off it, the resources return to pay-as-you-go pricing. Nothing forces a renewal decision first. CostMon does not track reservation end dates.
Orphaned disks and public IPs
Managed disks and public IP addresses bill on their own meter. They keep billing after you delete the VM, until someone removes them.
Missing tags hide the owner
Without a naming or tagging rule in Azure, cost has no clear owner. In CostMon, allocation rules match on source, service or connector. They group Azure spend by those fields.
Bandwidth and inter-region transfer
Outbound data transfer, and transfer between regions, bill on their own per-GB meter, separate from compute and storage.

Alerts

How CostMon warns you about Azure spend

CostMon's default rule watches every service on your account from the day you connect it. An alert always shows up in your CostMon feed. Add an email, Slack, or webhook channel to send it somewhere else too.

Anomaly rulesource = azure, service = Virtual Machines

A VM scale set left scaled out after a load test, holding VM spend well above its baseline.

Budgetsource = azure

A monthly Azure budget alerts you when the month passes its cap. When a reservation lapses, usage returns to pay-as-you-go pricing and pushes the total up.

Sample alert, illustrative

From
alerts@costmon.com
Subject
CostMon alert: Anomaly: azure / Virtual Machines spend spike
Anomaly: azure / Virtual Machines spend spike

azure / Virtual Machines was $260.00 on 2026-08-03 — 73% above its 14-day average of $150.00.

Severity: warning
Occurred on: 2026-08-03

To find what to cut, the recommendations list flags idle spend and commitment gaps to review.

Why CostMon

Built for Azure spend, from day one

Every subscription, one normalized total

CostMon pulls daily cost from the Azure Cost Management Query API for each subscription you connect. Costs from many subscriptions roll up into one number.

Service and region, day by day

Each cost row keeps its service name and region. A jump on one line, such as Virtual Machines, points you to where to look in the Azure portal.

Joins Azure spend to AWS and GCP

Teams on Azure and AWS compare both clouds on one chart. A subscription that grows while its AWS twin stays flat stands out without a spreadsheet.

Read-only, Cost Management-scoped credentials

CostMon connects via an Azure AD app registration granted Cost Management Reader only. That role reads cost data. It has no rights to change a VM, a disk, or a resource group.

  • On expirya lapsed reservation reverts to full pay-as-you-go pricing
  • ~16 daysearlier than the invoice
  • Cost ManagementAzure Query API pull, daily

Getting started

From API key to first alert, for Azure

  1. 01

    Register a read-only Azure AD app

    Grant a service principal Cost Management Reader on the subscription. CostMon never requests write access to your resources.

  2. 02

    CostMon syncs and normalizes

    CostMon calls the Query API on a schedule. Each result row becomes a CostMon cost entry with the fields every source shares.

  3. 03

    See the subscription, then get the alert

    Open a daily view of Azure spend by service and region. A scale set left scaled out after a load test lifts the Virtual Machines line, and a rule fires.

FAQ

Common questions about the Azure connector

How does CostMon connect to Azure?

Through an Azure AD app registration (service principal) granted Cost Management Reader on the subscription, read-only and scoped to billing data. CostMon never requests access to your VMs, storage, or resource configuration.

Does CostMon replace Azure Cost Management?

No. CostMon reads from the Cost Management Query API. Azure spend then appears on the same chart as AWS, GCP and the rest of your stack.

How often does Azure cost data sync?

CostMon's background scheduler syncs Azure Cost Management data on a regular cadence, so the dashboard reflects a daily view rather than a monthly statement.

Can I see Azure costs broken down by service or region?

Yes. Every Azure row carries a service name and a region. To roll spend up by team, match an allocation rule on the Azure source, a service name or the connector.

What does the Azure connector cost?

A flat monthly rate per plan. It's never a cut of your Azure bill or the savings CostMon helps you find. Free includes 2 connectors; Professional and Enterprise include unlimited connectors.

Connectors

Cloud, AI, and SaaS: all in one place

AWS, GCP, and Azure for cloud. Anthropic, OpenAI, Amazon Bedrock, Vertex AI / Gemini, and Helicone for AI and LLM spend. Snowflake and Databricks for the data cloud. Datadog, GitHub, and Vercel for the rest of the stack. Add CSV import for any tool without a native connector. That's 14 connectors, all normalized into the same unified view.

Connect it. Get the first alert.

Connect a provider and CostMon builds a daily baseline for it. From there, a spike reaches your team as an alert.

Esc