Tidy Your Bedroom: Identify Unused Resources
How to find unneeded cloud resources easily with AWS Resource Explorer.
- they are quick and easy to provision, use, and forget about, or
- they are supplementary resources that AWS automatically creates for me, such as an Amazon Simple Storage Service (S3) bucket for Amazon SageMaker Studio.
- your account will end up like a messy bedroom with stuff lying about everywhere (or in lots of different AWS regions),
- some of these resources will cost you money every month, even if you are not actively using them. You created them, but didn't remove them, and now you will have to cover the cost. It may not be very much, but it adds up, and wouldn't you rather spend money on things you actually need, than no longer needed resources?



- Set up AWS Resource Explorer
- Find all resources in your account
- Find specific resource types in your account
- Create a custom view
- From AWS Console, search for
AWS Resource Explorer
using the search bar or the shortcut Alt + S. - Select AWS Resource Explorer:

- On the Resource Explorer dashboard, select
Go to Resource Explorer
button:

- Select Quick set-up which indexes all the regions available to the account. This is ideal for most users, especially students and new users who may not realize exactly what regions their resources are located in.
- Select Aggregator index region, I chose the closest region to me, Europe (Ireland) eu-west-1, but you can choose any region that your account has access to. Resource Explorer indexes every region and stores the aggregate (combined) results in this region.

- Select Turn on Resource Explorer and prepare to wait a while as the indexes are set up and all the resources in each region are identified.
"Tagged resources local to the index appear in search results within a few minutes. Untagged resources typically take less than two hours to appear, but can take longer when there is heavy demand. It can also can take up to an hour to complete the initial replication to a new aggregator index from all of the existing local indexes.".
- From AWS Console for AWS Resource Explorer, use the left navigation pane to go to
Resource search
. - The default view will open, and this may show a banner at the top stating
You can start searching immediately while we begin indexing the resources in your account. You might see incomplete results until indexing is complete, especially for cross-Region searches.
- I recommend waiting for this indexing to be complete, because otherwise you may miss resources that have not been indexed yet.
- Open the list
All types
and selectDynamoDB:table
. - A filtered view will show only DynamoDB tables in all regions.
- If you have too many to manage in different regions, you can filter by region too.

- Now select each resource, and decide if it is needed. If it's no longer needed, click on the Identifier link or View in dynamodb console link and it will take you to that resource's AWS console page. You can then delete the resource. Ensure that only resources that are not needed are deleted. Backup the resource first, if unsure.
- Once completed for DynamoDB tables, repeat the steps for
S3:buckets
andlambda:functions
.
- From AWS Console for AWS Resource Explorer, use the left navigation pane to go to
View
. - Select
Create View
- Add any name (e.g.,
filtered-resources
) - Select the region. In my case, it is Europe (Ireland) eu-west-1.
- Select
Include only resources that match a specified filter
- Add the filter query, in this example,
resourcetype:lambda:function region:eu-west-1
will return only Lambda functions in the region Europe (Ireland) eu-west-1. You can check all the query syntax for more complex queries. - Select
Create View
.

- It will take some time to create each view, but once it is ready, you can see the results of the view and query by:
- selecting
Resource search
from the left navigation pane and changing theView
dropdown to your view's name or - selecting
Views
from the left navigation pane, select the view of choice and then selectExplore resources
.

Any opinions in this post are those of the individual author and may not reflect the opinions of AWS.