TL;DR: Graviton is AWS's ARM-based silicon delivering up to 40% better price-performance than comparable x86 — same workload, less money. Because AWS designs the chip and skips Intel's margins, it passes savings to you every hour, forever. The migration is far easier than the "won't I recompile everything?" fear suggests: interpreted/JIT languages (Python, Node, Java, Ruby) run unchanged, containers swap base images, and managed services (Lambda, RDS, ElastiCache) are literally a config flip. Unlike Reserved Instances, there's no lock-in — switch back anytime.
The numbers
- Lambda arm64: one field (
architecture: arm64) for up to 19% better price-performance, zero recompile for interpreted languages — the lowest-effort win in AWS cost optimization. - EC2 like-for-like: m5.xlarge → m6g.xlarge (same specs, Graviton2) is ~20% off immediately; families cover general (M/T), compute (C), memory (R/X), storage (Im/Is), and GPU (G5g).
- Compounding: 50 m5.large ($4,380/mo) → m6g.large (~$3,504/mo) = $876/mo / >$10,500/yr on one instance type in one region.
- Graviton3 uses up to 60% less energy for the same performance — a real sustainability lever.
- Field examples: a SaaS cut $2,400/mo in under 3 weeks (Lambda → ECS → RDS replica); an enterprise saved $8,000/mo on one ML inference service (15% faster too), scaling to $500K+/yr org-wide.
Do this
- Flip one Lambda function to arm64 this week — a 5-minute config change and deploy; the savings start that day and build team confidence.
- Swap container base images to ARM64 variants — official Node/Python/nginx/postgres/redis images publish arm64; ECS/EKS run mixed clusters during transition, and you can A/B test at identical vCPU/memory.
- Migrate in phases: stateless workloads → managed services (Lambda + a Graviton RDS read replica to validate) → core app/cache/batch tiers → make Graviton the default for net-new.
- Recompile compiled-from-source binaries (Go, Rust, .NET Core) with one flag; audit dependencies for any x86-only proprietary binaries first.
- Stack with commitments — apply Compute Savings Plans on top of the Graviton discount for compounding savings.
Gotchas
- Windows is x86-only on Graviton (Linux only) — check your stack.
- x86-only proprietary binaries and hand-written x86 assembly/intrinsics are real blockers — identify them in a dependency audit before committing effort.
- Native binaries need recompiling — trivial for Go/Rust/.NET, but not zero; interpreted languages skip this entirely.
- Vendor licensing occasionally differs across architectures — confirm before migrating licensed software.
Skip this if
- The workload is Windows, depends on x86-only proprietary binaries, or is heavily hand-optimized for Intel intrinsics — leave it on x86 rather than force it.
- You haven't picked which workloads to move first — run Compute Optimizer to surface the highest-value candidates. Otherwise there's almost no downside: start with one Lambda function and let the data convince the team.