Metrics represent time-ordered sets of data points published to CloudWatch: they're variables to be monitored, with each data point serving as a historical value. They exist only within the region in which they're created.

Many AWS resources make available free metrics (EC2 instances), and for some services additional metrics can be made available for a fee. Custom metrics can be pushed from applications either via the agent or via use of the SDKs within an application.


  • Namespaces group metrics into containers, providing context and avoiding collisions between similarly named metrics in different product families.
  • Dimensions are name-value pairs that contain contextual information used to identify metrics. They're used for filtering (e.g. by EC2 InstanceType = t2.micro). There can be up to 10 of these per-metric.
  • Metrics are samples of timeseries data identified by a metric name and namespace.
  • Dashboards allow visualising and sharing metrics alongside explanatory text.

Custom metrics

Custom metrics allow ingesting an application's metrics into CloudWatch. No creation is necessary: the metric will be created from the first PutMetricData call.


Metrics collected at 5 minute intervals are free. This frequency can be increased up to 1 minute intervals for an additional cost.