# Unnecessary EC2 Detailed Monitoring | Cloud Efficiency Hub

Canonical: https://www.pointfive.co/efficiency-hub/inefficiencies/unnecessary-ec2-detailed-monitoring

EC2 basic monitoring publishes instance metrics to CloudWatch at 5-minute granularity at no charge.

By: PointFive

Updated: 2026-09-28

[Cloud Efficiency Hub](https://www.pointfive.co/efficiency-hub) 

The short version

EC2 basic monitoring publishes instance metrics to CloudWatch at 5-minute granularity at no charge.

PointFive Research

Cloud cost research at PointFive

AWS service

[AWS CloudWatch](https://www.pointfive.co/efficiency-hub/cloud-services/aws-cloudwatch)

Category

[Other](https://www.pointfive.co/efficiency-hub/service-category/other)

Reference

CER-0382

Type

Inefficient Configuration

## Explanation

Why the waste happens and who it affects.

Detailed monitoring switches those metrics to 1-minute granularity, and each metric EC2 sends is then billed at the CloudWatch custom metric rate for every instance, prorated by the hour. It is often switched on fleet-wide through launch templates, legacy launch configurations, AMI-baking pipelines or IaC modules, including for development, batch and test instances where nobody looks at 1-minute data.

The per-instance cost is small, but it applies to every instance for every hour it runs, so large or high-churn fleets pay a steady premium. Launch configurations created with the AWS CLI enable detailed monitoring by default, which is one way it spreads unnoticed. AWS's CloudWatch cost guidance says to enable detailed monitoring only when necessary. The main legitimate need is Auto Scaling groups with scaling policies, where AWS recommends 1-minute metrics for faster response to load.

## Billing model

The pricing dimensions that drive this cost.

Basic monitoring

5-minute EC2 metrics (1-minute status checks) sent to CloudWatch at no charge

Detailed monitoring metrics

Each 1-minute EC2 metric is billed as a custom metric per metric-month, in the same volume tiers as other custom metrics

Hourly proration

Detailed monitoring charges accrue only for hours in which the instance sends metrics

No storage charge

EC2 detailed monitoring is charged per metric sent, with no separate data storage charge

## How to detect

4 checks to find it in your estate.

- Run describe-instances and list running instances with Monitoring.State set to enabled, grouped by account, environment tag and Auto Scaling group

- Check launch templates (Monitoring.Enabled) and launch configurations (InstanceMonitoring.Enabled) for detailed monitoring turned on, remembering that CLI-created launch configurations default to enabled

- Use the Cost and Usage Report query from the CloudWatch cost guide filtering line\_item\_operation MetricStorage:AWS/EC2 to list instances generating detailed monitoring charges

- For each group with detailed monitoring, confirm whether a scaling policy, alarm or dashboard actually uses 1-minute EC2 metrics

## How to fix

4 ways to remove the waste.

- Turn off detailed monitoring with unmonitor-instances (or Manage detailed monitoring in the console) on instances where 5-minute metrics are enough, such as non-production, batch and steady-state instances

- Update launch templates to Monitoring Enabled false and move Auto Scaling groups off launch configurations with detailed monitoring; existing instances keep their setting until replaced, for example by instance refresh

- Keep detailed monitoring for Auto Scaling groups whose step or simple scaling policies need 1-minute data, and when switching a group to basic monitoring update its alarms to a 300-second period

- Set the default to basic monitoring in IaC modules and AMI launch tooling so detailed monitoring becomes an explicit opt-in

## Documentation

Vendor references for pricing and configuration.

- [Amazon CloudWatch Pricing  aws.amazon.com](https://aws.amazon.com/cloudwatch/pricing/)

- [Analyzing, optimizing, and reducing CloudWatch costs  docs.aws.amazon.com](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_billing.html)

- [Manage detailed monitoring for your EC2 instances  docs.aws.amazon.com](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/manage-detailed-monitoring.html)

- [Configure monitoring for Auto Scaling instances  docs.aws.amazon.com](https://docs.aws.amazon.com/autoscaling/ec2/userguide/enable-as-instance-metrics.html)

## Related inefficiencies

[Browse the library](https://www.pointfive.co/efficiency-hub)

- AWS CloudWatch  CER-0224

### [Suboptimal Log Class Configuration in CloudWatch](https://www.pointfive.co/efficiency-hub/inefficiencies/suboptimal-log-class-configuration-in-cloudwatch)

By default, CloudWatch Log Groups use the Standard log class, which has a higher per-GB ingestion price. AWS also offers an Infrequent Access (IA) log class designed for logs that are rarely queried - such as audit trails, debugging...

Other

- AWS CloudWatch  CER-0090

### [Excessive CloudWatch Log Volume from Persistently Enabled Debugging](https://www.pointfive.co/efficiency-hub/inefficiencies/excessive-cloudwatch-log-volume-from-persistently-enabled-debugging)

Engineers often enable verbose logging (e.g., debug or trace-level) during development or troubleshooting, then forget to disable it after deployment. This results in elevated log ingestion rates - and therefore costs - even when the...

Other

- AWS CloudWatch  CER-0233

### [Overly Permissive VPC Flow Log Filters Sent to CloudWatch Logs](https://www.pointfive.co/efficiency-hub/inefficiencies/overly-permissive-vpc-flow-log-filters-sent-to-cloudwatch-logs)

VPC Flow Logs configured with the ALL filter and delivered to CloudWatch Logs often result in unnecessarily high log ingestion volumes - especially in high-traffic environments. This setup is rarely required for day-to-day monitoring or...

Other

---
Source: the public page above. Product screenshots and illustrative interfaces are examples, not live customer data.

