Free AWS Waste Finder — read-only script | CloudBudgetMaster
Free tool · no signup<br>Find your wasted AWS spend in 2 minutes<br>A read-only script you run in your own terminal — nothing leaves your machine , no credentials shared, no signup. It lists the four most common AWS money leaks:<br>• Unattached EBS volumes (billed while idle)<br>• Unassociated Elastic IPs (~$3.65/mo each)<br>• Stopped EC2 instances (you still pay for their storage)<br>• Idle RDS databases (zero connections)<br>waste-finder.shCopy script<br>#!/usr/bin/env bash<br># CloudBudgetMaster — free AWS waste finder (read-only; nothing leaves your machine)<br># Requires the AWS CLI, configured with read access. Run: bash waste-finder.sh<br>set -uo pipefail<br>REGION="${AWS_REGION:-us-east-1}"<br>echo "Scanning AWS ($REGION) — read-only..."
echo -e "\n== Unattached EBS volumes (billed while 'available') =="<br>aws ec2 describe-volumes --filters Name=status,Values=available --region "$REGION" \<br>--query 'Volumes[].{Volume:VolumeId,GiB:Size,Type:VolumeType}' --output table
echo -e "\n== Unassociated Elastic IPs (~\$3.65/mo each) =="<br>aws ec2 describe-addresses --region "$REGION" \<br>--query 'Addresses[?AssociationId==`null`].{IP:PublicIp,Alloc:AllocationId}' --output table
echo -e "\n== Stopped EC2 (you still pay for attached EBS) =="<br>aws ec2 describe-instances --filters Name=instance-state-name,Values=stopped --region "$REGION" \<br>--query 'Reservations[].Instances[].{Instance:InstanceId,Type:InstanceType}' --output table
echo -e "\n== RDS with 0 connections in the last 24h (likely idle) =="<br>for db in $(aws rds describe-db-instances --region "$REGION" --query 'DBInstances[].DBInstanceIdentifier' --output text); do<br>sum=$(aws cloudwatch get-metric-statistics --region "$REGION" --namespace AWS/RDS \<br>--metric-name DatabaseConnections --dimensions Name=DBInstanceIdentifier,Value="$db" \<br>--start-time "$(date -u -d '1 day ago' +%Y-%m-%dT%H:%M:%S 2>/dev/null || date -u -v-1d +%Y-%m-%dT%H:%M:%S)" \<br>--end-time "$(date -u +%Y-%m-%dT%H:%M:%S)" --period 86400 --statistics Sum \<br>--query 'Datapoints[0].Sum' --output text 2>/dev/null)<br>[ "$sum" = "0.0" ] || [ "$sum" = "None" ] && echo " IDLE: $db"<br>done
echo -e "\nDone. Want this automatically + the exact \$/month, tracked over time?"<br>echo "→ https://cloudbudgetmaster.com (free, read-only)"
Requires the AWS CLI configured with read access (e.g. ReadOnlyAccess). Scans one region — set AWS_REGION to change it.<br>Want this automatically — with the exact $/month?<br>CloudBudgetMaster connects read-only to AWS & GCP and tracks waste across all regions, with real prices and monthly trends.<br>Try it free — no card<br>← CloudBudgetMaster