Signal · · 2 min read

How to move an AWS EC2 instance from Account A to Account B

Transferring an EC2 instance between AWS accounts is possible, and the best way is to create a snapshot and share it. It's the best way to work through the AWS Management Console (the web interface).

How to move an AWS EC2 instance from Account A to Account B

Transferring an EC2 instance between AWS accounts is possible, and the best way is to create a snapshot and share it. It's the best way to work through the AWS Management Console (the web interface). Here's a step-by-step breakdown to move your EC2 instance (volume and AMI) to another AWS account.

🛠️ STEP-BY-STEP GUIDE (using AWS Console)

🔹 Step 1: Prepare the Instance in Account A

  1. Stop the EC2 Instance (optional, but safer)
    • Go to EC2 > Instances
    • Select the instance
    • Click Instance state > Stop instance
⚠️
Stopping the instance will change your instance's IP addres if it is not static (Elastic IP)
  1. Create an AMI (Amazon Machine Image) from the instance
    • Select your instance
    • Click Actions > Image and templates > Create image
    • Name your image, select the volume(s) to include
    • Click Create image
  2. Wait until the AMI is created
    • Go to AMIs in the EC2 menu
    • Check the status (you can monitor it under “Status” column)

🔹 Step 2: Share the AMI with Account B

  1. Go to EC2 > AMIs
  2. Select your AMI
  3. Click Actions > Edit AMI permissions
  4. Change the permission to Private
  5. Under Add account ID, enter Account B's AWS Account ID
  6. Click Share AMI
📝 Note: If the AMI is based on an EBS volume, you also need to share the snapshot that backs the AMI.

🔹 Step 3: Share the EBS Snapshot (behind the AMI)

  1. Go to EC2 > Snapshots
  2. Find the snapshot associated with your AMI
    • Filter by AMI ID or check Description
  3. Select it and click Actions > Snapshot settings > Modify permissions
  4. Add Account B's AWS Account ID
  5. Click Add

🔹 Step 4: Launch the Instance from Account B

  1. Sign in to Account B
  2. Go to EC2 > AMIs
  3. In the Region where the AMI was shared, change Filter: Owned by me → Private images
  4. You should now see the shared AMI
If it doesn't show up, double-check snapshot permissions and region.
  1. Select the AMI and click Launch instance from image
  2. Pick instance type, key pair, VPC, etc., and launch like any regular EC2 instance.

🔄 Optional: Copy AMI to Make It Fully Yours

Once it's visible in Account B:

Read next

Lost? Good. Let’s fix it.

Whether you’re building a product or building a career, I help founders make smarter moves and engineers grow beyond just coding.