Lambda Functions
AWS Lambda functions can accumulate hidden costs when running on suboptimal configurations. Two common issues are x86 functions that could run cheaper on Arm (Graviton2), and functions with significantly over-provisioned memory.
Implementation Effort: Medium - Estimated time: 1-4 hours. Arm migration requires testing for compatibility. Memory right-sizing should be validated against peak usage patterns.
What We Detect
- x86 to Arm migration candidates -- Functions running on x86_64 in regions where Graviton2 is available, with potential for ~20% cost reduction
- Memory over-provisioning -- Functions consistently using a fraction of their allocated memory, where reducing the configuration yields direct savings
Why It Matters
Lambda pricing is based on memory allocated multiplied by execution duration. Over-provisioned memory increases the per-invocation cost, and x86 pricing is ~20% higher than Arm. For high-volume functions, these savings compound quickly.
Recommendations
- Arm migration -- Test your function on arm64 architecture. Most runtimes (Python, Node.js, Java 11+) work without changes
- Memory right-sizing -- Reduce memory allocation to match actual peak usage with a safety margin. Use AWS Lambda Power Tuning for precise optimization
Keep on chasing 🧡