Requirements
To follow the steps in this guide, you’ll need:- Organization Admin permissions in Omni
- Google Cloud admin permissions, which are required to create a service account and private key.
-
The following details about the default dataset in your BigQuery project:
- The name of the default dataset
- Its data location
- Its timezone
Need help locating the dataset?
- Navigate to your BigQuery console.
- Select the project your dataset resides in. Use the top middle drop-down menu to toggle between projects.
-
Select a dataset and the info will appear in the Dataset info menu. In this example:
- The dataset name is
products - The Data location is
US - The timezone is
UTC-7, as indicated in the Last modified field
- The dataset name is

Setup
1
Create a BigQuery service account & grant project access
- Open the credentials page in the Google Cloud Platform API Manager and, if necessary, select your project.
- Click Create credentials, located near the top center of the page, then Service account.
-
In the Service account details section:
- Enter a name and description for the new service account, such as
Omni BigQuery. - Click Create and continue.
- Enter a name and description for the new service account, such as
-
In the Grant this service account access to project section, grant the service account access to the following BigQuery roles:
- BigQuery Job User
- BigQuery Data Viewer

- After adding both roles, click Done. You’ll be redirected to the Credentials page.
2
Create a service account private key
- In the Service Accounts section, click the service account you just created in step 1.
- On the service account details page, click the Keys tab near the top of the page.
- Click Add Key > Create new key.
- When prompted, select JSON as the key type and then click Create:

- The JSON key will be saved to your computer. After noting where the key was downloaded, click Close.

3
Set up a table upload dataset
This step is optional. However, we recommend completing it as part of the initial set up or you won’t be able to use CSV uploads in joins.
- This dataset can’t be used for other modeled tables
- This dataset must be in the same region as other projects and schemas in the connection, or you may encounter cross-region errors
- Navigate to your BigQuery project.
- Create the dataset.
- After the dataset is created, open it so that its details display.
- Click Sharing > Permissions, located next to the Copy option near the top right corner of the page.
- In the dialog that displays, click Add principal.
-
Fill in the fields as follows:
- New principals - Add the service account you created in step 1
- Role - Add the BigQuery Data Editor role

- Click Save.
4
Create the connection in Omni
- In Omni, click Settings > Connections.
- Click the BigQuery option.
-
On the connection setup page, fill in the connection details:
Name Required? Description Display Name Yes A user-friendly name for the connection, which will be used throughout Omni Default Dataset Yes The default dataset for the connection Include Other Projects No A comma-separated list of other Google Cloud projects to include Include Datasets No A comma-separated list of datasets to include in the connection Offloaded Datasets No A comma-separated list of datasets to include in the connection, which will only load on demand. This setting is good for very large datasets or dbt dev datasets. Dataset for CSV Upload No The name of the dataset to use for table (CSV) uploads, which you created in step 3. If left blank, you can upload tables but they won’t be pushed to the database or be available for use in joins. Service Account JSON Yes The JSON private key you created in step 2 Region Yes The region the dataset resides in. Refer to the Requirements section if you need help finding this information. Database Timezone Yes The timezone used by the dataset. Refer to the Requirements section if you need help finding this information. Query Timezone Yes The timezone to use for Omni queries. If a timezone is specified, data will be converted from the Database timezone to the selected timezone. Allow User-Specific Timezones No Allow users to override the connection timezone with their own when querying Max Billing Bytes No The maximum bytes billed for queries run on this connection. Defaults to 1TB. - When finished, click Create connection.
What’s next?
Now that your BigQuery is set up, you can:- Configure user permissions, schema refreshes, environments and timezone settings
- Learn how Omni generates the model associated with the connection