Requirements
To follow the steps in this guide, you’ll need:- Organization Admin permissions in Omni
- Permissions in Snowflake that allow you to:
- Create database users and grant permissions
- Allowlist IP addresses
- Set up key-pair authentication
Setup
1
Create a database user for Omni
- Sign in to your Snowflake account.
- Create a new worksheet.
-
Run the following to create a role and user for Omni, and grant privileges:
Create Omni role & user and grant privileges
2
Set up a table upload schema
import UploadSchemaCallout from “/snippets/connect-data/upload-schema-callout.mdx”;In this step, you’ll create a dedicated schema to use for table uploads. This schema can’t be used for other modeled tables.
- Create the schema in Snowflake. This can be in its own database or the same database as other schemas to be used in modeling.
-
Run the following commands to grant the Omni user the required privileges:
Grant Omni user permissions to upload schema
3
Allowlist Omni's IP addresses
If access to the Snowflake database is limited by IP address, you’ll need to add Omni’s IPs to the allowlist before you create the database connection.Omni’s IP addresses can be found on an individual connection’s page, accessed by navigating to Settings > Connections and clicking a connection.
4
Retrieve your Snowflake account identifier
- In Snowflake, click your user icon in the bottom left corner of the page and then hover over Account.
-
In the account selector, click the View account details link under the account:

- In the Account Details dialog, locate and copy the Account Identifier.
5
Create the connection in Omni
Snowflake connection parameters can be case sensitive and are often capitalized. If you see errors on connection, confirm your connection parameters match your Snowflake environment exactly.
- In Omni, click Settings > Connections.
- Click the Snowflake 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 Account Identifier Yes Your Snowflake account identifier Warehouse Yes The Snowflake warehouse to use for queries Database Yes The database to connect to Include Other Databases No A comma-separated list of other databases to include Offloaded Schemas No A comma-separated list of schemas to include in the connection, which will only load on demand. This setting is good for very large schemas or dbt dev schemas. Schema for Table Uploads No The name of the schema to use for table (CSV) uploads. If left blank, you can upload tables but they won’t be pushed to the database or be available for use in joins. Database Timezone Yes The timezone used by the database 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 When enabled, users can override the connection timezone with their own when querying Query Timeout No Maximum time in seconds before a query times out Authentication Type Yes The type of authentication to use -
Select an Authentication Type:
Password authentication
Password authentication uses a username and password to authenticate to Snowflake.Note: Snowflake will deprecate this type of authentication in November 2025, so we don’t recommend using it.Key-pair authentication
To use this authentication type, you’ll need to specify a Username and set up a key-pair:- Username - This is the Omni database user you created in step 1.
- Key-pair configuration - Click the link to set up keys for the connection. Refer to step 6 for more information.
- When finished, click Create connection.
6
Set up Snowflake key-pair authentication
If you selected Keypair authentication as the Authentication type, you’ll need to configure keys before you can save the connection.Omni can generate the keypair for you, or you can provide an existing private key.
Omni-generated key-pair
Let Omni generate the key-pair on your behalf
Omni-generated key-pair
Let Omni generate the key-pair on your behalf
- In the Keypairs tab, click Generate key-pair.
- Click Copy next to the public key.
-
Navigate back to your Snowflake account and run the following:
- In the Keypair tab in Omni, click the toggle in the Active column to enable the keypair.
Existing private key
Provide an existing private key
Existing private key
Provide an existing private key
- In the Keypairs tab, click Add existing key.
-
Paste the private key into the dialog. For example:
Note: Omni will automatically add
-----BEGIN PRIVATE KEY-----and-----END PRIVATE KEY-----if the key doesn’t have them. - Click Add keypair. Omni will automatically generate the public key and redirect you back to the Keypairs tab.
- Click Copy next to the newly-generated public key.
-
Navigate back to your Snowflake account and run the following:
Set key for the Omni user
- In the Keypair tab in Omni, click the toggle in the Active column to enable the keypair.
What’s next?
Now that your Snowflake is set up, you can:- Configure user permissions, schema refreshes, environments and timezone settings
- Learn how Omni generates the model associated with the connection