aws-cost-optimizer
Comprehensive AWS cost analysis and optimization recommendations using AWS CLI and Cost Explorer
Best use case
aws-cost-optimizer is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Comprehensive AWS cost analysis and optimization recommendations using AWS CLI and Cost Explorer
Teams using aws-cost-optimizer should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/aws-cost-optimizer/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How aws-cost-optimizer Compares
| Feature / Agent | aws-cost-optimizer | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Comprehensive AWS cost analysis and optimization recommendations using AWS CLI and Cost Explorer
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# AWS Cost Optimizer Analyze AWS spending patterns, identify waste, and provide actionable cost reduction strategies. ## When to Use This Skill Use this skill when you need to analyze AWS spending, identify cost optimization opportunities, or reduce cloud waste. ## Core Capabilities **Cost Analysis** - Parse AWS Cost Explorer data for trends and anomalies - Break down costs by service, region, and resource tags - Identify month-over-month spending increases **Resource Optimization** - Detect idle EC2 instances (low CPU utilization) - Find unattached EBS volumes and old snapshots - Identify unused Elastic IPs - Locate underutilized RDS instances - Find old S3 objects eligible for lifecycle policies **Savings Recommendations** - Suggest Reserved Instance/Savings Plans opportunities - Recommend instance rightsizing based on CloudWatch metrics - Identify resources in expensive regions - Calculate potential savings with specific actions ## AWS CLI Commands ### Get Cost and Usage ```bash # Last 30 days cost by service aws ce get-cost-and-usage \ --time-period Start=$(date -d '30 days ago' +%Y-%m-%d),End=$(date +%Y-%m-%d) \ --granularity MONTHLY \ --metrics BlendedCost \ --group-by Type=DIMENSION,Key=SERVICE # Daily costs for current month aws ce get-cost-and-usage \ --time-period Start=$(date +%Y-%m-01),End=$(date +%Y-%m-%d) \ --granularity DAILY \ --metrics UnblendedCost ``` ### Find Unused Resources ```bash # Unattached EBS volumes aws ec2 describe-volumes \ --filters Name=status,Values=available \ --query 'Volumes[*].[VolumeId,Size,VolumeType,CreateTime]' \ --output table # Unused Elastic IPs aws ec2 describe-addresses \ --query 'Addresses[?AssociationId==null].[PublicIp,AllocationId]' \ --output table # Idle EC2 instances (requires CloudWatch) aws cloudwatch get-metric-statistics \ --namespace AWS/EC2 \ --metric-name CPUUtilization \ --dimensions Name=InstanceId,Value=i-xxxxx \ --start-time $(date -u -d '7 days ago' +%Y-%m-%dT%H:%M:%S) \ --end-time $(date -u +%Y-%m-%dT%H:%M:%S) \ --period 86400 \ --statistics Average # Old EBS snapshots (>90 days) aws ec2 describe-snapshots \ --owner-ids self \ --query 'Snapshots[?StartTime<=`'$(date -d '90 days ago' --iso-8601)'`].[SnapshotId,StartTime,VolumeSize]' \ --output table ``` ### Rightsizing Analysis ```bash # List EC2 instances with their types aws ec2 describe-instances \ --query 'Reservations[*].Instances[*].[InstanceId,InstanceType,State.Name,Tags[?Key==`Name`].Value|[0]]' \ --output table # Get RDS instance utilization aws cloudwatch get-metric-statistics \ --namespace AWS/RDS \ --metric-name CPUUtilization \ --dimensions Name=DBInstanceIdentifier,Value=mydb \ --start-time $(date -u -d '30 days ago' +%Y-%m-%dT%H:%M:%S) \ --end-time $(date -u +%Y-%m-%dT%H:%M:%S) \ --period 86400 \ --statistics Average,Maximum ``` ## Optimization Workflow 1. **Baseline Assessment** - Pull 3-6 months of cost data - Identify top 5 spending services - Calculate growth rate 2. **Quick Wins** - Delete unattached EBS volumes - Release unused Elastic IPs - Stop/terminate idle EC2 instances - Delete old snapshots 3. **Strategic Optimization** - Analyze Reserved Instance coverage - Review instance types vs. workload - Implement S3 lifecycle policies - Consider Spot instances for non-critical workloads 4. **Ongoing Monitoring** - Set up AWS Budgets with alerts - Enable Cost Anomaly Detection - Tag resources for cost allocation - Monthly cost review meetings ## Cost Optimization Checklist - [ ] Enable AWS Cost Explorer - [ ] Set up cost allocation tags - [ ] Create AWS Budget with alerts - [ ] Review and delete unused resources - [ ] Analyze Reserved Instance opportunities - [ ] Implement S3 Intelligent-Tiering - [ ] Review data transfer costs - [ ] Optimize Lambda memory allocation - [ ] Use CloudWatch Logs retention policies - [ ] Consider multi-region cost differences ## Example Prompts **Analysis** - "Show me AWS costs for the last 3 months broken down by service" - "What are my top 10 most expensive resources?" - "Compare this month's spending to last month" **Optimization** - "Find all unattached EBS volumes and calculate savings" - "Identify EC2 instances with <5% CPU utilization" - "Suggest Reserved Instance purchases based on usage" - "Calculate savings from deleting snapshots older than 90 days" **Implementation** - "Create a script to delete unattached volumes" - "Set up a budget alert for $1000/month" - "Generate a cost optimization report for leadership" ## Best Practices - Always test in non-production first - Verify resources are truly unused before deletion - Document all cost optimization actions - Calculate ROI for optimization efforts - Automate recurring optimization tasks - Use AWS Trusted Advisor recommendations - Enable AWS Cost Anomaly Detection ## Integration with Kiro CLI This skill works seamlessly with Kiro CLI's AWS integration: ```bash # Use Kiro to analyze costs kiro-cli chat "Use aws-cost-optimizer to analyze my spending" # Generate optimization report kiro-cli chat "Create a cost optimization plan using aws-cost-optimizer" ``` ## Safety Notes - **Risk Level: Low** - Read-only analysis is safe - **Deletion Actions: Medium Risk** - Always verify before deleting resources - **Production Changes: High Risk** - Test rightsizing in dev/staging first - Maintain backups before any deletion - Use `--dry-run` flag when available ## Additional Resources - [AWS Cost Optimization Best Practices](https://aws.amazon.com/pricing/cost-optimization/) - [AWS Well-Architected Framework - Cost Optimization](https://docs.aws.amazon.com/wellarchitected/latest/cost-optimization-pillar/welcome.html) - [AWS Cost Explorer API](https://docs.aws.amazon.com/cost-management/latest/APIReference/Welcome.html)
Related Skills
seo-meta-optimizer
Creates optimized meta titles, descriptions, and URL suggestions based on character limits and best practices. Generates compelling, keyword-rich metadata. Use PROACTIVELY for new content.
cost-optimization
Optimize cloud costs through resource rightsizing, tagging strategies, reserved instances, and spending analysis. Use when reducing cloud expenses, analyzing infrastructure costs, or implementing c...
database-optimizer
Expert database optimizer specializing in modern performance tuning, query optimization, and scalable architectures.
database-cloud-optimization-cost-optimize
You are a cloud cost optimization expert specializing in reducing infrastructure expenses while maintaining performance and reliability. Analyze cloud spending, identify savings opportunities, and ...
dx-optimizer
Developer Experience specialist. Improves tooling, setup, and workflows. Use PROACTIVELY when setting up new projects, after team feedback, or when development friction is noticed.
aws-cost-cleanup
Automated cleanup of unused AWS resources to reduce costs
firecrawl
Official Firecrawl CLI skill for web scraping, search, crawling, and browser automation. Returns clean LLM-optimized markdown. USE FOR: - Web search and research - Scraping pages, docs, and articles - Site mapping and bulk content extraction - Browser automation for interactive pages Must be pre-installed and authenticated. See rules/install.md for setup, rules/security.md for output handling.
super-search
Search your coding memory. Use when user asks about past work, previous sessions, how something was implemented, what they worked on before, or wants to recall information from earlier sessions.
super-save
Save important project knowledge to memory. Use when user wants to preserve architectural decisions, significant bug fixes, design patterns, or important implementation details for team reference.
zustand-store-ts
Create Zustand stores with TypeScript, subscribeWithSelector middleware, and proper state/action separation. Use when building React state management, creating global stores, or implementing reacti...
web-quality-audit
Comprehensive web quality audit covering performance, accessibility, SEO, and best practices. Use when asked to "audit my site", "review web quality", "run lighthouse audit", "check page quality", or "optimize my website".
web-performance-optimization
Optimize website and web application performance including loading speed, Core Web Vitals, bundle size, caching strategies, and runtime performance