KLOUDCAREConfidential · Report KC-20260923-E55FF2
AWS Assessment Report
Prepared by KloudCare for AWS account 123456789012 · Assessed 2026-09-23T10:00:00Z ·
Observation window 14 days (2026-09-09T10:00:00Z → 2026-09-23T10:00:00Z)
This assessment was read-only. No AWS resources were changed. Savings figures are estimates;
review the limitations below before acting on them.
Jump to: Cost Backup Security Governance and operations
Executive summary
2Regions assessed
29Resources discovered
37Findings
9Critical / high
USD 882–1,219Est. monthly savings
USD 4,211Last month spend
Results by area
Regions assessed: eu-west-2, ap-southeast-1
Resources by service: ebs: 4, ec2: 8, ecs: 2, elb: 3, lambda: 4, nat-gateway: 2, rds: 2, s3: 4
Savings range covers 9 finding(s) with a price estimate;
3 cost-related finding(s) have no estimate.
High-priority findings
Need help acting on these findings? Book a free 30-minute review
with KloudCare (hello@kloudcare.co.uk).
Important limitations
- Utilisation is based on a 14-day observation window (2026-09-09T10:00:00Z to 2026-09-23T10:00:00Z). Monthly or seasonal peaks outside this window are not represented.
- Configuration is a point-in-time snapshot taken at the assessment date.
- Savings are estimates. Approximate on-demand list price for each resource's region; excludes discounts, Savings Plans and Reserved Instances. Confirm against the bill before acting.
- EC2 memory and disk utilisation require the CloudWatch agent and are not assessed.
- Security checks cover common high-risk settings. They are not a full security audit or compliance assessment; AWS Security Hub provides broader continuous checks.
- Not assessed in this version: Classic Load Balancers, Aurora clusters, EKS, DynamoDB, EFS, EBS snapshot storage costs and data transfer costs.
- 6 signal(s) could not be evaluated and are listed as data gaps. Missing metrics are treated as unknown, not zero.
All findings
Cost (12 finding(s))
Unused, underutilised and oversized resources, and other ways to reduce your AWS bill.
Estimated savings: USD 882–1,219 per month across 9 finding(s) with a price estimate.
Last month's spend: USD 4,210.55 (2026-08-01 to 2026-09-01, end exclusive; Cost Explorer GetCostAndUsage (UnblendedCost, MONTHLY, grouped by SERVICE))
Unused resources (5)
KC-011 medium RDS instance with no database connections
rds · db-idle · eu-west-2
- Check
RDS-IDLE (Unused resources)
- Confidence
- high
- Recommended action
- Confirm with the owner, take a final snapshot, then stop or delete the instance.
- Risk
- Medium; confirm no batch or disaster-recovery use before removal.
- Effort
- Low
- Owner
- platform-team
- Estimated monthly cost
- USD 144.80
- Estimated monthly savings
- USD 115.84 – 173.76 (Approximate eu-west-2 on-demand list price; excludes discounts, Savings Plans and Reserved Instances)
Evidence
Current configuration
{
"instance_class": "db.m5.large",
"status": "available",
"multi_az": false,
"backup_retention_days": 0,
"publicly_accessible": false,
"deletion_protection": false,
"storage_encrypted": false
}
KC-014 medium Unattached EBS volume
ebs · vol-unattached · eu-west-2
- Check
EBS-UNATTACHED (Unused resources)
- Confidence
- high
- Recommended action
- Confirm with the owner, take a snapshot if the data may be needed, then delete the volume.
- Risk
- Low if a snapshot is retained; data is lost if deleted without one.
- Effort
- Low
- Owner
- platform-team
- Estimated monthly cost
- USD 58.00
- Estimated monthly savings
- USD 46.40 – 69.60 (Approximate eu-west-2 on-demand list price; excludes discounts, Savings Plans and Reserved Instances)
Evidence
Current configuration
{
"size_gb": 500,
"volume_type": "gp2",
"state": "available",
"attached_to": [],
"encrypted": false,
"latest_snapshot": ""
}
KC-030 low Load balancer with no registered targets
elb · alb-empty · eu-west-2
- Check
ELB-NO-TARGETS (Unused resources)
- Confidence
- high
- Recommended action
- Confirm with the owner and DNS records, then delete the load balancer.
- Risk
- Low; check DNS and listeners do not route live traffic before deletion.
- Effort
- Low
- Owner
- platform-team
- Estimated monthly cost
- USD 19.05
- Estimated monthly savings
- USD 15.24 – 22.86 (Hourly charge only; approximate eu-west-2 on-demand list price; excludes discounts, Savings Plans and Reserved Instances)
Evidence
Current configuration
{
"type": "application",
"target_groups": 1,
"targets_total": 0,
"targets_healthy": 0
}
KC-031 low Elastic IP address not associated
ec2 · eipalloc-unused · eu-west-2
- Check
EIP-UNUSED (Unused resources)
- Confidence
- high
- Recommended action
- Release the address unless it is reserved for allow-listing or planned use.
- Risk
- Low; a released address cannot always be recovered, so check external allow-lists first.
- Effort
- Low
- Owner
- platform-team
- Estimated monthly cost
- USD 3.65
- Estimated monthly savings
- USD 2.92 – 4.38 (Public IPv4 address charge, the same in every region; excludes discounts, Savings Plans and Reserved Instances)
Evidence
Current configuration
{
"public_ip": "203.0.113.10",
"associated": false
}
KC-033 low Lambda function with very low invocation volume
lambda · rarely-used · eu-west-2
- Check
LAMBDA-LOW-INVOCATIONS (Unused resources)
- Confidence
- medium
- Recommended action
- Confirm whether the function is still required (it may be scheduled monthly or used for incidents). Remove unused functions to reduce attack surface and maintenance.
- Risk
- Low; confirm triggers and dependencies before removal.
- Effort
- Low
- Owner
- platform-team
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{
"runtime": "python3.12"
}
Underutilised resources (2)
KC-002 high RDS instance with low utilisation signals
rds · db-quiet · eu-west-2
- Check
RDS-LOW-UTILISATION (Underutilised resources)
- Confidence
- medium
- Recommended action
- Review memory (FreeableMemory) and IOPS before downsizing one instance size; consider stopping non-production databases outside working hours.
- Risk
- Medium; resizing causes a short outage (longer for single-AZ).
- Effort
- Medium
- Owner
- platform-team
- Estimated monthly cost
- USD 846.80
- Estimated monthly savings
- USD 338.72 – 423.40 (One size smaller (~50%); approximate eu-west-2 on-demand list price; excludes discounts, Savings Plans and Reserved Instances)
Evidence
Current configuration
{
"instance_class": "db.r5.xlarge",
"status": "available",
"multi_az": true,
"backup_retention_days": 3,
"publicly_accessible": true,
"deletion_protection": true,
"storage_encrypted": true
}
KC-012 medium EC2 instance with sustained low CPU utilisation
ec2 · i-idle · eu-west-2
- Check
EC2-LOW-CPU (Underutilised resources)
- Confidence
- high
- Recommended action
- Confirm the workload with the owner. If it is not needed, stop or decommission it; if it is needed only at certain times, schedule it; otherwise downsize it. CPU alone does not show memory or network needs, so check those before resizing.
- Risk
- Medium; resizing or stopping causes downtime and may affect memory-bound workloads.
- Effort
- Medium
- Owner
- platform-team
- Estimated monthly cost
- USD 162.59
- Estimated monthly savings
- USD 81.30 – 162.59 (50% (downsize) to 100% (stop) of approximate eu-west-2 on-demand list price; excludes discounts, Savings Plans and Reserved Instances)
Evidence
Current configuration
{
"instance_type": "m5.xlarge",
"state": "running"
}
Overprovisioned resources (3)
KC-010 medium EC2 instance type larger than observed CPU demand
ec2 · i-oversized · eu-west-2
- Check
EC2-OVERSIZED (Overprovisioned resources)
- Confidence
- medium
- Recommended action
- Test the workload on m5.xlarge in a non-production environment, check memory utilisation (requires the CloudWatch agent), then resize during a maintenance window.
- Risk
- Medium; resizing requires a stop/start and may affect memory-bound workloads.
- Effort
- Medium
- Owner
- platform-team
- Estimated monthly cost
- USD 325.17
- Estimated monthly savings
- USD 130.06 – 195.10 (Difference to m5.xlarge; approximate eu-west-2 on-demand list price; excludes discounts, Savings Plans and Reserved Instances)
Evidence
Current configuration
{
"instance_type": "m5.2xlarge",
"state": "running"
}
KC-013 medium Compute Optimizer: EC2 instance over-provisioned
ec2 · i-co-over · eu-west-2
- Check
CO-EC2-OVER (Overprovisioned resources)
- Confidence
- high
- Recommended action
- Move to c6i.xlarge after testing
- Risk
- Medium; resizing requires a stop/start.
- Effort
- Medium
- Owner
- platform-team
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- USD 121.40 (AWS Compute Optimizer estimate)
Evidence
Current configuration
{
"instance_type": "c5.2xlarge",
"state": "running"
}
KC-019 medium ECS service running more task capacity than it uses
ecs · main/api · eu-west-2
- Check
ECS-EXCESS-CAPACITY (Overprovisioned resources)
- Confidence
- high
- Recommended action
- Reduce the desired count or task size, or configure target-tracking Service Auto Scaling with a minimum that meets availability needs.
- Risk
- Low to medium; keep at least two tasks across AZs for production availability.
- Effort
- Low
- Owner
- platform-team
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{
"cluster": "main",
"desired_count": 6,
"running_count": 6
}
Cost opportunities (2)
KC-028 medium S3 bucket without lifecycle rules
s3 · logs-archive · eu-west-2
- Check
S3-NO-LIFECYCLE (Cost opportunities)
- Confidence
- high
- Recommended action
- Agree retention requirements with the owner, then add lifecycle rules to expire old data, clean up incomplete multipart uploads and transition infrequently accessed data (or enable S3 Intelligent-Tiering).
- Risk
- Low if retention requirements are confirmed first; expiry permanently deletes objects.
- Effort
- Low
- Owner
- platform-team
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{
"lifecycle_rules": 0,
"tags_readable": true,
"versioning": "Disabled",
"public_by_policy": false
}
KC-029 low NAT Gateway with low traffic relative to its fixed cost
nat-gateway · nat-quiet · eu-west-2
- Check
NAT-LOW-TRAFFIC (Cost opportunities)
- Confidence
- high
- Recommended action
- Check whether private subnets still need internet egress. Consider consolidating NAT Gateways in the VPC, using VPC endpoints for AWS services, or removing the gateway.
- Risk
- Medium; removing egress breaks workloads that need outbound internet access.
- Effort
- Medium
- Owner
- platform-team
- Estimated monthly cost
- USD 38.11
- Estimated monthly savings
- USD 30.49 – 45.73 (Hourly charge only; approximate eu-west-2 on-demand list price; excludes discounts, Savings Plans and Reserved Instances)
Evidence
Current configuration
{
"vpc_id": "vpc-1"
}
Cost checks performed
Backup (7 finding(s))
Whether your servers, databases and files can be recovered after a mistake, failure or attack.
KC-004 high EBS volume never backed up
ebs · vol-attached · eu-west-2
- Check
EBS-NO-RECENT-BACKUP (Backup and recovery)
- Confidence
- high
- Recommended action
- Add the volume (or its instance) to an AWS Backup plan, or schedule snapshots with Data Lifecycle Manager.
- Risk
- None; snapshots are incremental and do not affect the running instance.
- Effort
- Low
- Owner
- platform-team
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{
"size_gb": 100,
"volume_type": "gp3",
"state": "in-use",
"attached_to": [
"i-busy"
],
"encrypted": true,
"latest_snapshot": ""
}
KC-007 high RDS instance has automated backups disabled
rds · db-idle · eu-west-2
- Check
RDS-NO-BACKUPS (Backup and recovery)
- Confidence
- high
- Recommended action
- Enable automated backups with a retention period that meets recovery requirements.
- Risk
- Low; enabling backups may cause a brief I/O suspension on single-AZ instances.
- Effort
- Low
- Owner
- platform-team
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{
"instance_class": "db.m5.large",
"status": "available",
"multi_az": false,
"backup_retention_days": 0,
"publicly_accessible": false,
"deletion_protection": false,
"storage_encrypted": false
}
KC-015 medium No AWS Backup plan in a region with running workloads
account · 123456789012 · eu-west-2
- Check
BACKUP-NO-PLAN (Backup and recovery)
- Confidence
- high
- Recommended action
- Create an AWS Backup plan covering EC2, EBS and RDS with retention that meets your recovery requirements, and test a restore.
- Risk
- None
- Effort
- Low
- Owner
- Account owner
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{}
KC-018 medium EBS volume without a recent backup
ebs · vol-stale-backup · eu-west-2
- Check
EBS-NO-RECENT-BACKUP (Backup and recovery)
- Confidence
- high
- Recommended action
- Add the volume (or its instance) to an AWS Backup plan, or schedule snapshots with Data Lifecycle Manager.
- Risk
- None; snapshots are incremental and do not affect the running instance.
- Effort
- Low
- Owner
- platform-team
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{
"size_gb": 50,
"volume_type": "gp3",
"state": "in-use",
"attached_to": [
"i-oversized"
],
"encrypted": true,
"latest_snapshot": "2026-08-01T00:00:00Z"
}
KC-034 low RDS instance without deletion protection
rds · db-idle · eu-west-2
- Check
RDS-NO-DELETION-PROTECTION (Backup and recovery)
- Confidence
- high
- Recommended action
- Enable deletion protection on production databases to prevent accidental deletion.
- Risk
- None
- Effort
- Low
- Owner
- platform-team
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{
"instance_class": "db.m5.large",
"status": "available",
"multi_az": false,
"backup_retention_days": 0,
"publicly_accessible": false,
"deletion_protection": false,
"storage_encrypted": false
}
KC-035 low RDS backup retention shorter than recommended
rds · db-quiet · eu-west-2
- Check
RDS-SHORT-RETENTION (Backup and recovery)
- Confidence
- high
- Recommended action
- Increase the backup retention period to match your recovery requirements.
- Risk
- None; longer retention increases backup storage cost slightly.
- Effort
- Low
- Owner
- platform-team
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{
"instance_class": "db.r5.xlarge",
"status": "available",
"multi_az": true,
"backup_retention_days": 3,
"publicly_accessible": true,
"deletion_protection": true,
"storage_encrypted": true
}
KC-036 low S3 bucket without versioning
s3 · logs-archive · eu-west-2
- Check
S3-NO-VERSIONING (Backup and recovery)
- Confidence
- high
- Recommended action
- Enable versioning on buckets holding important data so deleted or overwritten objects can be recovered, with a lifecycle rule to expire old versions.
- Risk
- None; old versions add storage cost unless expired.
- Effort
- Low
- Owner
- platform-team
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{
"lifecycle_rules": 0,
"tags_readable": true,
"versioning": "Disabled",
"public_by_policy": false
}
Backup checks performed
Security (13 finding(s))
Common high-risk settings: account access, internet exposure, public data, encryption and threat detection.
KC-001 critical Root user has access keys
account · 123456789012 · global
- Check
IAM-ROOT-KEYS (Security)
- Confidence
- high
- Recommended action
- Delete root access keys and use IAM roles or IAM Identity Center instead.
- Risk
- Low
- Effort
- Low
- Owner
- Account owner
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{}
KC-003 high No active multi-region CloudTrail trail
account · 123456789012 · global
- Check
CLOUDTRAIL-MISSING (Security)
- Confidence
- high
- Recommended action
- Create a multi-region trail (or organisation trail) delivering to a protected S3 bucket.
- Risk
- Low
- Effort
- Low
- Owner
- Account owner
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{}
KC-005 high Root user does not have MFA enabled
account · 123456789012 · global
- Check
IAM-ROOT-NO-MFA (Security)
- Confidence
- high
- Recommended action
- Enable MFA (preferably hardware or passkey) on the root user.
- Risk
- Low
- Effort
- Low
- Owner
- Account owner
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{}
KC-006 high IAM user can sign in to the console without MFA
iam · alice · global
- Check
IAM-USER-NO-MFA (Security)
- Confidence
- high
- Recommended action
- Require MFA for this user, or move people to IAM Identity Center.
- Risk
- None
- Effort
- Low
- Owner
- Account owner
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{
"console_access": true,
"mfa_devices": 0,
"access_keys": []
}
KC-008 high S3 bucket policy makes the bucket public
s3 · public-website · eu-west-2
- Check
S3-PUBLIC-BUCKET (Security)
- Confidence
- high
- Recommended action
- Confirm the bucket is meant to be public (for example a website). If not, remove the public statement; for websites, serve through CloudFront with origin access control instead.
- Risk
- Medium; public consumers of the bucket will lose access.
- Effort
- Low
- Owner
- platform-team
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{
"lifecycle_rules": 1,
"tags_readable": true,
"versioning": "Enabled",
"public_by_policy": true
}
KC-009 high Security group allows internet access to sensitive ports
ec2 · sg-open-ssh · eu-west-2
- Check
SG-OPEN-TO-WORLD (Security)
- Confidence
- high
- Recommended action
- Restrict the rule to known IP ranges or a VPN. Use AWS Systems Manager Session Manager instead of opening SSH or RDP, and keep databases in private subnets. Delete the group if unused.
- Risk
- Medium; confirm which clients need access before narrowing the rule.
- Effort
- Low
- Owner
- Account owner
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{
"group_name": "legacy-admin",
"vpc_id": "vpc-1",
"open_rules": [
{
"protocol": "tcp",
"from_port": 22,
"to_port": 22,
"sources": [
"0.0.0.0/0"
],
"exposed": [
"SSH (22)"
]
}
]
}
KC-017 medium EBS encryption by default is off
account · 123456789012 · eu-west-2
- Check
EBS-DEFAULT-ENCRYPTION-OFF (Security)
- Confidence
- high
- Recommended action
- Turn on EBS encryption by default in this region so every new volume is encrypted.
- Risk
- None; existing volumes are not affected.
- Effort
- Low
- Owner
- Account owner
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{}
KC-021 medium GuardDuty threat detection is not enabled
account · 123456789012 · eu-west-2
- Check
GUARDDUTY-OFF (Security)
- Confidence
- high
- Recommended action
- Enable GuardDuty (it has a 30-day free trial) and route its findings to email or chat.
- Risk
- None
- Effort
- Low
- Owner
- Account owner
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{}
KC-022 medium Active access key older than 90 days
iam · deploy-bot · global
- Check
IAM-OLD-ACCESS-KEYS (Security)
- Confidence
- high
- Recommended action
- Rotate the key, or better, replace long-term keys with IAM roles or IAM Identity Center.
- Risk
- Low; update every application using the key before deactivating it.
- Effort
- Low
- Owner
- Account owner
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{
"console_access": false,
"mfa_devices": 0,
"access_keys": [
{
"id_suffix": "ABCD",
"status": "Active",
"created": "2025-01-15T00:00:00Z"
},
{
"id_suffix": "EFGH",
"status": "Inactive",
"created": "2024-01-15T00:00:00Z"
}
]
}
KC-024 medium RDS instance is publicly accessible
rds · db-quiet · eu-west-2
- Check
RDS-PUBLIC (Security)
- Confidence
- high
- Recommended action
- Disable public accessibility unless required and restrict security group ingress.
- Risk
- Medium; clients connecting over the internet will lose access.
- Effort
- Low
- Owner
- platform-team
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{
"instance_class": "db.r5.xlarge",
"status": "available",
"multi_az": true,
"backup_retention_days": 3,
"publicly_accessible": true,
"deletion_protection": true,
"storage_encrypted": true
}
KC-025 medium RDS storage is not encrypted
rds · db-idle · eu-west-2
- Check
RDS-UNENCRYPTED (Security)
- Confidence
- high
- Recommended action
- Encryption cannot be enabled in place: restore an encrypted copy from a snapshot and switch applications over during a maintenance window.
- Risk
- Medium; requires a migration and a short outage.
- Effort
- Medium
- Owner
- platform-team
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{
"instance_class": "db.m5.large",
"status": "available",
"multi_az": false,
"backup_retention_days": 0,
"publicly_accessible": false,
"deletion_protection": false,
"storage_encrypted": false
}
KC-027 medium S3 Block Public Access is not fully enabled for the account
account · 123456789012 · global
- Check
S3-ACCOUNT-BPA-OFF (Security)
- Confidence
- high
- Recommended action
- Turn on all four account-level S3 Block Public Access settings unless a bucket must be public.
- Risk
- Medium; check no bucket intentionally serves public content first.
- Effort
- Low
- Owner
- Account owner
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{}
KC-032 low EBS volume is not encrypted
ebs · vol-unattached · eu-west-2
- Check
EBS-UNENCRYPTED (Security)
- Confidence
- high
- Recommended action
- Create an encrypted copy from a snapshot and replace the volume during maintenance.
- Risk
- Medium; replacing a volume needs a short outage.
- Effort
- Medium
- Owner
- platform-team
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{
"size_gb": 500,
"volume_type": "gp2",
"state": "available",
"attached_to": [],
"encrypted": false,
"latest_snapshot": ""
}
Security checks performed
Governance and operations (5 finding(s))
Monitoring, reliability and tagging that keep the account manageable.
Monitoring and reliability (3)
KC-016 medium Compute Optimizer: EC2 instance under-provisioned
ec2 · i-busy · eu-west-2
- Check
CO-EC2-UNDER (Monitoring and reliability)
- Confidence
- high
- Recommended action
- Consider moving to t3.large to reduce performance risk
- Risk
- Medium; resizing requires a stop/start.
- Effort
- Medium
- Owner
- platform-team
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{
"instance_type": "t3.medium",
"state": "running"
}
KC-020 medium Load balancer with no healthy targets
elb · alb-broken · eu-west-2
- Check
ELB-NO-HEALTHY-TARGETS (Monitoring and reliability)
- Confidence
- medium
- Recommended action
- Investigate target health checks, or remove the load balancer if it is no longer used.
- Risk
- Low
- Effort
- Low
- Owner
- platform-team
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{
"type": "application",
"target_groups": 1,
"targets_total": 2,
"targets_healthy": 0
}
KC-023 medium Region with running workloads but no CloudWatch alarms
account · 123456789012 · eu-west-2
- Check
MONITORING-NO-ALARMS (Monitoring and reliability)
- Confidence
- high
- Recommended action
- Add alarms for instance status checks, CPU, storage and database health.
- Risk
- None
- Effort
- Low
- Owner
- Account owner
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{}
Tagging and governance (2)
KC-026 medium Resource in an unexpected region
lambda · singapore-fn · ap-southeast-1
- Check
REGION-UNEXPECTED (Tagging and governance)
- Confidence
- high
- Recommended action
- Confirm the resource is intended. Consider an SCP that restricts unused regions.
- Risk
- Low
- Effort
- Low
- Owner
- asia-team
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{
"runtime": "python3.12"
}
KC-037 low Resource missing required tags
lambda · singapore-fn · ap-southeast-1
- Check
TAGS-MISSING (Tagging and governance)
- Confidence
- high
- Recommended action
- Add the Environment tag(s) and enforce them with Tag Policies or IaC checks.
- Risk
- None
- Effort
- Low
- Owner
- asia-team
- Estimated monthly cost
- not estimated
- Estimated monthly savings
- —
Evidence
Current configuration
{
"runtime": "python3.12"
}
Governance and operations checks performed
Data gaps (6)
Signals that could not be evaluated. These are unknown, not zero, and no utilisation claim is made for them.
Resource inventory (29)
Recommended next steps
- Address 8 critical/high security and backup finding(s) first: KC-001, KC-003, KC-004, KC-005, KC-006….
- Confirm ownership of 4 unused resource(s) and remove them after snapshots where relevant.
- Review 5 sizing finding(s) with workload owners and test changes outside production.
- Agree a tagging standard and enforce it through IaC and AWS Organizations Tag Policies.
- Agree an owner and target date for each accepted finding, then re-run the assessment to confirm.
Get help from KloudCare
This report estimates USD 882–1,219 of potential monthly savings. It also found 9 critical or high-priority issue(s). KloudCare can go through these findings with you and carry out the changes safely.
- Free findings review: a 30-minute call to go through this report and agree priorities.
- AWS Health Check (from £395): an expert review of what an automated report cannot see, including
architecture, disaster recovery, access design and cost strategy, with a prioritised roadmap. The fee is deducted
if you go ahead with the fixes within 30 days.
- Implementation: fixed-price work to remove waste, right-size resources and close security gaps,
tested outside production first.
- AWS Cost Watch (£300/month): a monthly re-run of this assessment, a review call and up to 2 hours
of small fixes each month, so the savings last.
Book a free review
Email hello@kloudcare.co.uk · www.kloudcare.co.uk
Methodology
Approximate on-demand list price for each resource's region; excludes discounts, Savings Plans and Reserved Instances. Price-table estimates are shown as +/-20% ranges.
Required tags: Owner, Environment ·
Expected regions: eu-west-2 ·
Compute Optimizer: Active
Collection errors (0)
None.
Confidentiality and copyright. This report is confidential and intended for the owner of AWS account
123456789012. You may share it within your organisation and with your advisers.
© 2026 KloudCare. All rights reserved. The report format, checks and methodology are the property of
KloudCare and may not be copied, resold or republished without written permission.
Report KC-20260923-E55FF2 · Generated by kloudcare-assessment 0.3.6
· www.kloudcare.co.uk