Migrating Google Cloud Projects between Organisations: A Step-by-Step Guide

Within Google Cloud organisations, projects are base level organising entities. Projects can be created directly under organisations or organised under folders within the organisation. There may be a number of reasons you might need to migrate projects to another organisation e.g. project acquisitions, separation between business units, a transfer from a software developer to a client etc.


The following step-by-step guide includes screenshots to explain how to move a Google Cloud project from a source organisation to a destination organisation. If you’d like a more detailed technical guide, click here for the official Google Cloud Guide. Think of this as a ‘Google Cloud Migration for Dummies’.

Before you get started, make sure you have the following handy:

  1. The project ID of the project you want to migrate.

  2. The destination organisation’s organisation ID.

  3. The source organisation’s organisation ID.

Note: If you don’t know where to find the organisation/project IDs, simply click on the project selector in the top left hand corner of your google cloud platform dashboard. A modal will pop up with the organisations and projects you have access to. The ID will appear in the right hand column of the table next to the name of the respective organisation or project.

Screen Shot 2021-10-15 at 1.53.42 pm.png

Assigning Permissions in the Source Organisation

1) In the google cloud platform dashboard of the source organisation, search ‘IAM and Admin’.

Screen Shot 2021-10-15 at 1.29.37 pm.png

2) Ensure your Google account is listed as a principal in your organisation and assign yourself the following roles: ‘Project Mover’, ‘Billing Account Administrator’, ‘Owner’ (you only have to be the owner for the project that you are migrating but if you are the owner of the organisation you will inherit the permissions for the project while it is still in your organisation) and ‘Organisation Policy Administrator’.

Screen Shot 2021-10-15 at 2.15.58 pm.png

Assigning Permissions in the Destination OrganiSation

1) In the google cloud platform dashboard of the destination organisation, search ‘IAM and Admin’.

Screen Shot 2021-10-15 at 1.29.37 pm.png

2) In the ‘IAM’ page of the ‘IAM and Admin’ section, you’ll find a list of principals and orgs for the destination organisation. Click on the ‘Add’ button next to the ‘IAM’ title. 

Screen Shot 2021-10-15 at 1.41.07 pm.png

3) Using the email address of the person in charge of the project migration, create a new principal and assign them the following roles: ‘Project Creator’, ‘Billing Account Administrator’ and ‘Organisation Policy Administrator’. 

Configuring Organisation Policies for Exporting in the Source Organisation

1) In the cloud platform dashboard of the source organisation, search ‘Organisation policies’. Click on the page labelled ‘Organisation policies (IAM and admin)’.

Screen Shot 2021-10-15 at 1.45.24 pm.png

2) In the organisation policies click on ‘allowed destinations for exporting resources’.

Screen Shot 2021-10-15 at 1.46.31 pm.png

3) Click on the ‘edit’ button next to ‘policy details’. Note: If you don’t see the ‘edit’ option, it’s because you haven’t been assigned the ‘Organisation Policy Administrator’ role in the source organisation. Check that you have been assigned this role and try again.

4) Click the ‘customise’ option, ‘merge with parent’. Then ‘add rule’. For policy values select ‘custom’ and policy type ‘allow’. For the custom values enter ‘under:organizations/SOURCE_ORG_ID’ and click ‘Done’. This will grant the permissions for your project to be exported to the destination organisation.

Screen Shot 2021-10-15 at 1.50.54 pm.png

Configuring Organisation Policies for Importing in the Destination Organisation

1) In the cloud platform dashboard of the destination organisation, search ‘organisation policies’. Click on the page labelled ‘organisation policies (IAM and admin).

2) In the organisation policies of the destination organisation click on ‘allowed sources for importing resources’.

Screen Shot 2021-10-15 at 2.07.59 pm.png

3) Click on the ‘edit’ button next to ‘policy details’. Ensure you have the ‘Organisation Policy Administrator’ role assigned to your account.

Screen Shot 2021-10-15 at 2.09.34 pm.png

4) Click the ‘customise’ option, ‘merge with parent’. Then ‘add rule’. For policy values select ‘custom’ and policy type ‘allow’. For the custom values enter ‘under:organizations/SOURCE_ORGANIZATION_ID’.

Screen Shot 2021-10-15 at 2.10.42 pm.png

Changing the Billing Account for the Project

1) To change the billing account for an existing project, you must have the roles/owner role on the project, and the roles/billing.admin role on the destination billing account.

2) In the cloud platform dashboard of the source organisation, search ‘billing’.

Screen Shot 2021-10-15 at 2.18.15 pm.png

3) Navigate to the ‘My Projects’ tab of the ‘Billing’ page.

Screen Shot 2021-10-15 at 2.20.11 pm.png

4) Click on the ‘Change Billing’ option of the Actions menu for the relevant project.

5) If you have been granted the relevant permissions, you should be able to see the billing account of the destination organisation. Select the destination organisation’s billing account and click ‘Set Account’.

Screen Shot 2021-10-15 at 2.25.45 pm.png

Performing the Migration USING Cloud SDK

1) Install Cloud SDK on your machine.

2) Ensure you are logged into Cloud SDK using the email address that has been granted all the relevant permissions for project migration. 

3) To migrate a project under an organisation, run the following command:

gcloud beta projects move PROJECTID --organization DESTINATION_ORGANIZATION_ID

4) You can also specify a folder as the target resource, with the following command:

gcloud beta projects move PROJECTID --folder DESTINATION_FOLDER_ID

5) Once you’ve run the command, you should find that the project is now located in the specified location in the destination organisation’s resource hierarchy. The migration is now complete!

Need help with building your next cloud based application? Browse Olive Link’s list of services or simply send us a message. Whether it’s MVP development or a fully integrated cross-platform application that you’re after, we’re here to chat!