Connecting Snowflake

Last updated: April 16, 2026

With Rally's Snowflake integration, enriched participant data like company name, ARR, renewal date, customer health score, and custom properties can automatically sync data every 24 hours from Snowflake into Rally.

Rally can now send data like screener responses, last contact date, or participant properties back to Snowflake for deeper analysis, downstream workflows, and to share research insights in Snowflake automatically.

Connect Rally to up to 2 Snowflake tables and optionally set up two-way syncs with specific tables, so data flows exactly where you need it. Examples:

  • One-way sync Snowflake to Rally

  • One way sync Rally to Snowflake

  • Two-way sync between Rally and Snowflake

Configuring sync settings and property mappings can tailor the integration to your specific needs.

  • Benefits for Researchers: With enriched Snowflake data in Rally, researchers can create super targeted, niche segments of users + panels in Rally to recruit best fit customers for research on-demand — without relying on data science teams. For some of our customers, the time spent on recruiting for a study dropped from 4 weeks to just minutes after connecting Snowflake to Rally.

  • Benefits for Sales/CS team: This integration allows researchers to share valuable research insights — e.g. expansion/upsell signs or churn risk — directly into Snowflake, to support and collaborate with sales and CS reps.


How does the Snowflake integration work?

Rally connects to your Snowflake instance using a Programmatic Access Token (PAT). After setting up a connection with Snowflake, you can set configuration settings and create Property mappings between Rally Properties and Snowflake Properties. Each of these Properties can be configured per Property to either sync data from Rally → Snowflake, from Snowflake → Rally, or use a two-way sync (see below for more details).

Once your Snowflake account has been connected and the integration has been configured, Rally will automatically sync data between Rally and Snowflake every 24 hours. You can pause the automatic syncs, delete the connection, or start a manual sync at any time by managing your Snowflake integration in Rally > Settings > Integrations.

When syncing, Rally uses the Identifier Field of the person to map data between Snowflake and Rally. If a record from Snowflake is not detected in Rally, Rally will either ignore or create a new person in Rally depending on the settings configured during the integration setup or management.


Required user permissions

Before configuring your Snowflake Integration with Rally, ensure you have the correct user permissions in both accounts.

Rally user permissions

You'll need to be an Ops Manager, Developer/IT, or Admin role type in Rally.

Snowflake user permissions

The Snowflake user running the setup SQL must have the ACCOUNTADMIN role or equivalent privileges to create users, roles, authentication policies, and network policies.


Setting up the Snowflake integration

After you have the correct User Permissions, you can set up your Snowflake integration with Rally. You will connect using a Programmatic Access Token (PAT)

Step 1: Connect Snowflake to Rally

In Rally, navigate to Settings > Integrations. Find Snowflake in the list of integrations and click Connect. Follow the steps on the Setup Snowflake Connection panel.

  1. Obtain your Account URL and enter it in Rally

    • This determines the Snowflake account you are connecting to.

      SQL to get the Account URL in Snowflake

      SELECT CONCAT('https://', t.value:host::varchar) as account_url
      FROM TABLE(flatten(input => parse_json(SYSTEM$ALLOWLIST()))) as t
      WHERE t.value:type::varchar = 'SNOWFLAKE_DEPLOYMENT';
  2. In Snowflake, create a service user and role for Rally

    • This creates a dedicated "non-human" user for the sync.

      SQL to run in Snowflake

      -- Create the Role
      CREATE ROLE IF NOT EXISTS RALLY_ROLE;
      
      -- Create the Service User
      CREATE OR REPLACE USER RALLY_SYNC_USER
        TYPE = SERVICE
        DEFAULT_ROLE = RALLY_ROLE
        COMMENT = 'Dedicated service user for Rally 2-way sync';
      
      -- Link them
      GRANT ROLE RALLY_ROLE TO USER RALLY_SYNC_USER;
  3. In Snowflake, create an authentication policy for the service user

    • This restricts only the Rally service user to programmatic tokens. Your account and other users are unchanged.

      SQL to run in Snowflake

      CREATE OR REPLACE AUTHENTICATION POLICY RALLY_PAT_POLICY
        AUTHENTICATION_METHODS = ('PROGRAMMATIC_ACCESS_TOKEN');
      
      ALTER USER RALLY_SYNC_USER SET AUTHENTICATION POLICY RALLY_PAT_POLICY;
  4. Create and assign a network policy

    • Some Snowflake accounts require a network policy before creating a programmatic access token.

      SQL to run in Snowflake

      CREATE OR REPLACE NETWORK POLICY RALLY_NETWORK_POLICY
        ALLOWED_IP_LIST = ('44.196.80.52/32','107.21.141.153/32','54.226.107.60/32','98.89.199.176/32','34.204.160.35/32','52.2.175.121/32')
        COMMENT = 'Allows Rally to connect for Snowflake sync';
      
      ALTER USER RALLY_SYNC_USER SET NETWORK_POLICY = RALLY_NETWORK_POLICY;
  5. Generate the Programmatic Access Token (PAT)

    • This generates the "Secret" you will use to connect.

      SQL to run in Snowflake

      ALTER USER RALLY_SYNC_USER ADD PROGRAMMATIC ACCESS TOKEN RALLY_PAT_TOKEN
        ROLE_RESTRICTION = 'RALLY_ROLE'
        DAYS_TO_EXPIRY = 365;
  6. Enter the Programmatic Access Token (PAT) in Rally

Step 2: Linking to Snowflake table

After Snowflake is connected to Rally, follow these steps to link a Snowflake table.

We recommend creating a dedicated table in Snowflake with relevant information to simplify management and lower risk, instead of integrating the main warehouse.

  1. Add Table Information

    Provide the following details about your Snowflake table:

    • Warehouse: Enter the name of your Snowflake warehouse.

    • Database: Enter the name of your Snowflake database.

    • Schema: Enter the name of your Snowflake schema.

    • Table: Enter the name of your Snowflake table.

  2. In Snowflake, rune the following SQL to grant access to role RALLY_ROLE

    • Open your Snowflake console and run the following SQL commands to grant read-only access to your table.

    • Important: Before running these commands, ensure that the RALLY_ROLE has been created in your Snowflake environment.

      SQL to run in Snowflake

      --Grants read_only access to a single table 
      
      GRANT USAGE ON WAREHOUSE test_warehouse TO ROLE RALLY_ROLE;
      GRANT USAGE ON DATABASE test_db TO ROLE RALLY_ROLE;
      GRANT USAGE ON SCHEMA test_db.test_schema TO ROLE RALLY_ROLE;
      GRANT SELECT ON TABLE test_db.test_schema.test_table TO ROLE RALLY_ROLE;
  3. Optional: Grant write access to role in Snowflake

    • If you plan on mapping Rally → Snowflake and/or two-way sync functionality to allow Rally to write data back to your Snowflake table, you'll need to follow these steps.

    • Run the following additional SQL command in your Snowflake console to grant write access to the RALLY_ROLE.

      SQL to run in Snowflake

      -- Grant write access to table if Rally to Snowflake sync is needed
      
      GRANT INSERT, UPDATE ON TABLE test_db.test_schema.test_table TO ROLE RALLY_ROLE;

Updating an existing Snowflake connection

Switching from OAuth to a Programmatic Access Token (PAT)

  1. Go to Settings > Integrations.

  2. Find Snowflake and click Manage.

  3. Choose Programmatic access token (recommended) from the authentication options.

  4. Follow the Programmatic Access Token (PAT) steps that show within Rally, also detailed in the Setting up the Snowflake connection section above.

  5. Complete the flow to save; your connection will then use the updated token instead of OAuth.

Rotate your Programmatic Access Token

Programmatic Access Tokens expired after 365 days, it is important to rotate it before the expiration date to ensure your Snowflake connection is maintained.

If your token is expiring within the next 30 days, Rally will show a banner on the Integrations page with a link to open the rotate flow.

To rotate your Programmatic Access Token, using the following steps:

  1. Go to Settings > Integrations.

  2. Find Snowflake and click Manage.

  3. Select Rotate access token.

  4. In Snowflake, run the SQL shown in the panel to generate a new token.

  5. Paste the new token into Rally and save.


Managing your Snowflake integration

Once your Snowflake integration has been setup, it will be time to manage and configure your Snowflake settings in Rally to tailor the integration to your specific needs.

Here is our article for more learning on Managing Snowflake