> For the complete documentation index, see [llms.txt](https://docs.north.cloud/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.north.cloud/docs/getting-started/quickstart/gcp-onboarding.md).

# GCP Onboarding

{% hint style="info" %}
Based on your billing account's data volume, Google Cloud may take up to 5 days to fully migrate your data during billing export. If possible, initiate the billing export before starting onboarding to speed up the process. You can resume onboarding at any time. More from the [official GCP documentation.](https://cloud.google.com/billing/docs/how-to/export-data-bigquery)\`
{% endhint %}

{% embed url="<https://www.loom.com/share/0f8c9a8094564787b729599e4ab26abf>" %}

{% hint style="info" %}
Prerequisites:

* [ ] If you don't have an account, we recommend you create a free account first at [app.north.cloud](https://app.north.cloud)
* [ ] Make sure you have the following minimum role `BigQuery Data Owner` within the billing account to create and share billing datasets.
  {% endhint %}

{% stepper %}
{% step %}

### Go to the [Billing Export](https://console.cloud.google.com/billing/export)

Select the billing account you want to add and click **Edit Settings.**

<figure><img src="https://content.gitbook.com/content/eLw7hj1pxE38VmG1sYVW/blobs/P10nzRk4KuJ5trKJDtrr/Screenshot%202025-02-18%20at%205.23.03%E2%80%AFPM.png" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}

### Enable billing export for all

You will repeat the step 3 below for all billing reports.

* [ ] Standard usage cost
* [ ] Detailed usage cost
* [ ] Pricing

{% hint style="info" %}
Pricing export is optional. If it's not enabled, North.Cloud falls back to using the pricing data already included in your detailed usage cost export. You can proceed without it.
{% endhint %}

<div data-full-width="false"><figure><img src="https://content.gitbook.com/content/eLw7hj1pxE38VmG1sYVW/blobs/K1O3aRwvpxuZRcNh6ASn/Screenshot%202025-02-18%20at%205.25.05%E2%80%AFPM.png" alt=""><figcaption></figcaption></figure></div>
{% endstep %}

{% step %}

### Select a project and billing dataset

{% hint style="info" %}
Selecting a project does not prevent other projects under your billing account from being included in your dataset. It merely serves as a storage location for the data. You can create a new project and dataset or utilize an existing one.
{% endhint %}

Choose the project where your data will be hosted. Don't worry, all projects under your billing account will be available. You can set the dataset name to whatever convention you prefer or use our recommended `north_billing_dataset`
{% endstep %}

{% step %}

### Set up the CUD export

{% hint style="info" %}
This step is optional. Skip it if you don't need commitment (CUD) coverage and utilization data in North.Cloud — everything else in this guide will still work.
{% endhint %}

Committed Use Discount (CUD) metadata export gives North.Cloud the data needed to calculate commitment coverage and utilization.

* On the same [Billing Export](https://console.cloud.google.com/billing/export) settings page from the previous step, enable **Enable committed use discounts (CUD) metadata export**.
* Use the same project as before. We recommend naming the dataset `north_cud_dataset` so it's easy to identify later.
  {% endstep %}

{% step %}

### Enable the [recommender](https://console.cloud.google.com/active-assist/export/create)

{% hint style="info" %}
When enabling the recommender, you will receive a permission request from GCP. While this request might seem confusing, rest assured it is just the Recommender service seeking access to your other GCP services to provide accurate recommendations.
{% endhint %}

{% hint style="warning" %}
If you see an error like `BigQuery Data Transfer is not enabled for <project_id>`, enable the [BigQuery Data Transfer API](https://cloud.google.com/bigquery/docs/enable-transfer-service) for that project and try again. If it still fails, the transfer service agent may need permission granted directly — see [GCP's troubleshooting guide](https://cloud.google.com/bigquery/docs/transfer-troubleshooting#authorization_and_permission_issues).
{% endhint %}

North.Cloud utilizes Google Cloud Platform (GCP) recommendations and integrates them with our internal machine learning and AI services.

* Choose the same project and billing dataset used earlier.
* Configure transfer; this will dictate the frequency at which recommendation can be generated we generally recommend the following:
  * Name: `north_config`
  * Schedule option: Daily ( Day, 1 )
  * Start: `00:00`
  * Destination settings: Previously created/selected dataset
    {% endstep %}

{% step %}

### Share the billing data set with North.Cloud

* Select your billing data set, click Share>Permissions. Add the Principal ID shared during onboarding and attach the following roles `BigQuery Data Viewer` and `BigQuery Metadata Viewer`
* If you set up the CUD export in the previous step, repeat this sharing step for `north_cud_dataset` (or whatever you named it) as well.
* Add your project id and billing dataset name to North.Cloud

{% embed url="<https://www.loom.com/share/82c307b8d45f4ca284c81a515032744d>" %}
{% endstep %}

{% step %}

### Select the corresponding datasets in North.Cloud

{% hint style="info" %}
If you have an already existing billing export with custom names for your dataset you will have to manually select them in the dropdown. If this is your first time creating the export or no naming change was made, you can leave the predefined selection.
{% endhint %}

After sharing the permissions with North.Cloud, the final step is to appropriately define the datasets associated with `Standard usage cost`, `Detailed usage cost`, `Pricing`, and `CUD` (if you set it up).

{% hint style="info" %}
Don't see a `Pricing` or `CUD` table in the dropdown? Both are optional — if you didn't enable those exports (or the tables haven't finished generating yet), leave the field blank and continue. See Troubleshooting below if a table you expect is missing.
{% endhint %}

{% embed url="<https://www.loom.com/share/f781553d05ea4dcb87d52e7a14ae3ef0>" %}
{% endstep %}

{% step %}

### Start saving

Once North.Cloud completes your savings and data analysis, we'll send you a confirmation email. You'll then have access to all our AI-powered optimization features, the same tools that help leading companies achieve top 1% cloud efficiency.
{% endstep %}
{% endstepper %}

## Troubleshooting

**`BigQuery Data Transfer is not enabled for <project_id>` when enabling the Recommender**

Enable the [BigQuery Data Transfer API](https://cloud.google.com/bigquery/docs/enable-transfer-service) for that project. If the error persists, the transfer service agent may need permission granted directly — see [GCP's authorization troubleshooting guide](https://cloud.google.com/bigquery/docs/transfer-troubleshooting#authorization_and_permission_issues).

**A dataset table (`cloud_pricing_export_*` or the CUD table) isn't showing up in the dropdown**

Standard usage cost and detailed usage cost exports are required; pricing and CUD exports are optional. If you didn't enable one, its table won't exist — leave that field blank and continue; North.Cloud falls back to pricing data from the detailed usage export. If you did enable it, new exports can take a few hours to generate their first table.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.north.cloud/docs/getting-started/quickstart/gcp-onboarding.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
