Skip to content

EC2 Instance Types — Family Codes & Meanings

Type Meaning Use for Families
General Balanced CPU/mem/net Web servers, dev, small DB t3, m5, m7g
Compute Optimized CPU-intensive Transcoding, batch, gaming, ML inference c5, c7g
Memory Optimized RAM-intensive In-memory caches (Redis), in-memory DB, SAP HANA r5, x2gd, u-*, z1d
Accelerated GPU/FPGA/AI chips ML training, rendering, simulation p4, g5, inf2, trn1
Storage Optimized I/O-bound, FAST disk (not just big) NoSQL (Cassandra/Mongo), data warehouse, ElasticSearch i3, d2, h1

Storage Optimized ≠ “more storage” — it’s low-latency high-I/O (NVMe SSD), for random read/write heavy workloads.

[family][generation][g?].[size] e.g. c5.large, m7g.xlarge, t3.micro

Letter Meaning
t Burstable (CPU credits) — cheap, low avg load
m General purpose
c Compute
r Memory (RAM)
x Extra-large memory
z High-frequency (high clock speed)
u Ultra-high memory (up to 24TB)
p GPU (Tesla)
g GPU (graphics)
inf Inferentia (ML inference chip)
trn Trainium (ML training chip)
i Storage / I/O optimized
d Dense storage (HDD, throughput)
h High disk throughput
f FPGA
a ARM (first-gen Graviton)
mac Mac instances
  • Number = generation (5 = 5th gen)
  • g suffix = Graviton (AWS ARM chip): m5 → m6g → m7g. ~20% better price/performance
  • No g = x86 (Intel/AMD)

nano → micro → small → medium → large → xlarge → 2xlarge → ... → 16xlarge → 24xlarge → metal

  • Each step ≈ doubles vCPU/RAM
  • metal = bare metal (no virtualization)
  • Free tier = t3.micro (1 vCPU, 1GB RAM, 750h/mo first 12 months)
t3.micro → t (burstable) gen3, micro size
c7g.2xlarge → c (compute) gen7 + g (Graviton ARM), 2xlarge
r5.large → r (memory) gen5, large
p4d.24xlarge → p (GPU) gen4, 24xlarge
  • t = burstable cheap, c = compute, r = memory, m = general
  • g suffix = Graviton/ARM (cheaper)
  • Scenario → match type (compute-intensive → c, RAM-heavy → r, GPU → p/g)
  • [[aws/index]]
  • [[aws/compute-map/index]]