EC2 instance uses a previous-generation instance type
- Severity
- Low
- Service
- EC2
- Check ID
- EC2_PREVIOUS_GENERATION
What this check finds
Previous-generation instance types (T1, M1, M2, M3, C1, C3, I2, R3, etc.) offer worse price-performance ratios than current-generation equivalents. AWS no longer optimises these types and they may be retired. Migrating to current-generation instances (T3/T4g, M6i, C6i, R6i) typically delivers 10–40% better performance at the same or lower cost.
Passing looks like: EC2 uses current-generation instance types.
How to fix it
Stop the instance, change the instance type to a current-generation equivalent, and start it.
AWS CLI
aws ec2 stop-instances --instance-ids INSTANCE_ID && aws ec2 modify-instance-attribute --instance-id INSTANCE_ID --instance-type VALUE && aws ec2 start-instances --instance-ids INSTANCE_ID
Names in capitals are placeholders for your own resource. Review a command before you run it.
AWS console
EC2 → Instances → select instance → Actions → Instance settings → Change instance type.
Compliance
This is a cost check. It flags spend that buys nothing, which no compliance framework asks about, so it is not mapped to a control.
Checked on every scan
KloudLytics runs this check each time it scans a connected AWS account, through a read-only role, and lists every affected resource with its region. On Pro and Business a fix is written for the specific resource rather than the general case above. The exact access it needs
More EC2 checks
- HighAccount does not block public sharing of EBS snapshots
- HighAMI is publicly shared
- HighEBS snapshot is public
- HighEC2 instance CPU spiked abnormally — possible compromise or runaway process
- HighEC2 instance has an IAM role with admin privileges
- MediumAccount default for instance metadata does not require IMDSv2
- MediumEBS default encryption is not enabled for this region
- MediumEBS volume is not encrypted at rest