Skip to content
Cloud Efficiency Hub

Missing Scheduled Shutdown for Non-Production EC2 Instances

The short version

Non-production EC2 instances are often provisioned for daytime-only usage but remain running 24/7 out of convenience or oversight.

Yulia Perlis

AWS service
AWS EC2
Category
Compute
Reference
CER-0096
Type
Inefficient Configuration

Explanation

Why the waste happens and who it affects.

This results in unnecessary compute charges, even if the workload is inactive for 16+ hours per day. AWS supports automated schedules to stop and start instances at predefined times, allowing organizations to retain data and instance configuration without paying for unused runtime. Implementing a shutdown schedule for inactive periods (e.g., nights, weekends) can reduce compute costs by up to 60% in typical non-prod environments.

Billing model

The pricing dimensions that drive this cost.

EC2 is billed per second with a 60-second minimum (Linux, Windows, RHEL and Ubuntu Pro; SLES is billed per full hour) based on:

  • Instance type and size
  • Uptime duration
  • Additional charges for associated resources (e.g., EBS volumes) continue even when the instance is stopped

How to detect

4 checks to find it in your estate.

  • Identify EC2 instances in dev/test/staging environments using tags or naming conventions
  • Analyze instance runtime patterns via CloudWatch metrics or billing data
  • Highlight instances with predictable daily usage but continuous uptime
  • Determine whether workloads require persistent availability outside working hours

How to fix

4 ways to remove the waste.

  • Implement scheduled shutdowns using Instance Scheduler on AWS or EventBridge rules
  • Ensure stateful data is retained via attached EBS volumes or AMIs
  • Set start/stop windows aligned to working hours (e.g., 8 a.m.-6 p.m. weekdays)
  • Review and optimize schedules quarterly to match evolving team usage

Documentation

Vendor references for pricing and configuration.