Skip to main content
Snowflake configuration is available for ‘Datasets’ delivery and not available for data collectors (Web Scraper).

How to get started

In order to allow efficient delivery of Datasets to your Snowflake environment, we provide a step-by-step guide to set it up. Just follow these steps:
1

Select or Create a Database

Firstly, decide if you will use an existing database or create a new one. If you opt for a new database, here’s the command you need:
Remember to replace <database> with the name you want for your database.
2

Select or Create a Schema

Decide if you will use an existing schema or create a new one. By default every database has a PUBLIC schema. If you wish to use a different schema, here’s the command you need:
Replace <schema> with your own schema name.
3

Select or Create a Warehouse

Choose an existing warehouse or create a new one. When creating a new warehouse, consider Snowflake’s recommendations for configuring a warehouse specifically for data loading. Use the following command to create a warehouse:
Replace <warehouse> with your desired warehouse name.
4

Select or Create an Internal Named Stage

Next, choose an existing internal named stage or create a new one. To create a new stage, use this command:
Don’t forget to replace <stage> with your preferred stage name.
5

Create a Role

You’ll need a role that can write to your chosen stage. To create one, use:
Change <role_name> to your chosen role name.
6

Grant Warehouse Rights to the Role

Now, grant your new role the necessary rights to operate on your chosen warehouse using:
Remember to replace <warehouse> and <role_name> with your specific warehouse and role name respectively.
7

Enable Write Operations on the Stage for the Role

To enable your role to write on the stage, use the command:
Again, replace <stage> and <role_name> with your chosen stage and role names.
8

Create a Snowflake service user for Bright Data

Next, create a service user that Bright Data will use to deliver datasets to your Snowflake environment. Service users use key-pair authentication rather than a password.
Replace <user_name> with the Snowflake service user name and <login_name> with its login name. Use the same login name in your Bright Data Snowflake delivery settings. No password is needed.
9

Generate a private and public key

Generate an RSA key pair in a secure environment managed by your organization. The private key is used by Bright Data to connect to Snowflake; the matching public key is assigned to your Snowflake service user. Keep the private key secret.The following example creates an unencrypted private key in PEM/PKCS#8 format and derives its public key:
This creates rsa_key.p8 (private key) and rsa_key.pub (public key). Protect the private-key file and share it only through your organization’s approved secure process.
10

Assign the public key to your Snowflake user

A Snowflake administrator must assign the public key to the service user. Copy the key content only from rsa_key.pub. Exclude the -----BEGIN PUBLIC KEY----- and -----END PUBLIC KEY----- lines and line breaks.
Replace <user_name> with the user created above. Never put the private key in this SQL command. Snowflake also supports named key pairs; see Snowflake’s key-pair authentication and rotation guide if your organization uses that approach.
11

Grant Role Privileges to the New User

Finally, grant your new user the privileges of the role you created:
Replace <role_name> and <user_name> with your role and user names.
12

Allowlist IPs

If you have an active Network Policy applied in your Snowflake account you need to whiltelist following IPs:
Replace <policy_name> with your network policy name.
Replace <existing_whiltelisted_ips> with the list of existing allowlisted IPs.
And that’s it! You have now configured your Snowflake environment to receive data from Bright Data.If you have any issues or need further assistance, please contact our support team.If you want to learn more about Data Loading Performance and Warehouse Size Considerations click here.
13

Configure Snowflake delivery in Bright Data

In the Bright Data Control Panel, open your dataset’s Delivery Settings and select Snowflake. Choose Key-pair authentication, then enter your Snowflake account identifier, service-user login name, and the private key from rsa_key.p8. Complete the other Snowflake delivery settings shown in the form, test the connection if the option is available, and save.Do not paste the public key into the private-key field. The public key belongs on the Snowflake user; the private key belongs in the Bright Data connection settings.Already using a password-based Snowflake delivery? Update its authentication settings to use a key pair before Snowflake enforces the restriction for your account. Snowflake’s Phase 3 enforcement is rolling out across accounts during August to October 2026; your account’s enforcement date may differ. Follow your Snowflake administrator’s migration plan and test the updated delivery before relying on it.