Installing Snowflake CLI

Snowflake CLI is how you develop on Snowflake from the command line, from running SQL to building Snowpark, Streamlit, DCM and Native App projects. Run the Snowflake installer, and use snow upgrade to move to the latest release of the same major version.

Snowflake CLI runs on all supported platforms.

Install the CLI

  1. Run the standalone installer:

    curl -LsS https://sfc-repo.snowflakecomputing.com/snowflake-cli/install.sh | sh
    
  2. In the terminal where you ran the installer, run:

    export PATH="$HOME/.local/share/snowflake-cli/bin:$PATH"
    

    The installer asks before it adds ~/.local/share/snowflake-cli/bin to your shell profile. After you accept, open a new terminal and skip this export.

  3. Check the installation:

    snow --version
    
  4. Configure the Snowflake connection.

Upgrade an installation

snow upgrade updates a standalone install to the latest release of the same major version. It doesn’t install the next major version.

snow upgrade
Upgraded 3.12.0 → 3.13.1.

Homebrew, pip, pipx, uv, and the package installers are left unchanged. The command prints the standalone installer command instead.

See snow upgrade for --revert and --dry-run.

Enable automatic upgrades

Add this to config.toml:

[cli]
auto_upgrade = true

Automatic upgrades apply only to a standalone install. For the environment variable and other options, see Enable automatic upgrades.

Install with an OS tool

Install with Homebrew or the macOS package installer.

Homebrew

Homebrew formula

The community formula builds from source.

  1. Install Snowflake CLI:

    brew install snowflake-cli
    
  2. Upgrade later with:

    brew upgrade snowflake-cli
    

Snowflake tap

The Snowflake tap installs the official binary.

  1. Add the tap:

    brew tap snowflakedb/snowflake-cli
    
  2. Trust the cask:

    brew trust --cask snowflakedb/snowflake-cli/snowflake-cli
    
  3. Install Snowflake CLI:

    brew install --cask snowflake-cli
    
  4. Upgrade later with:

    brew upgrade --cask snowflake-cli
    

Install the macOS package

  1. Check which package matches this Mac:

    uname -m
    

    arm64 is Apple silicon. x86_64 is Intel.

  2. Download the package from the Snowflake CLI repository. Open darwin_arm64 or darwin_x86_64, then the highest version:

    darwin_arm64/<version>/snowflake-cli-<version>-darwin-arm64.pkg
    darwin_x86_64/<version>/snowflake-cli-<version>-darwin-x86_64.pkg
    
  3. Open the .pkg and follow the installer.

  4. Open a new terminal and check the installation:

    snow --version
    

If the shell can’t find snow after you installed for your account, add this line to your shell configuration and open a new terminal:

export PATH="$HOME/Applications/SnowflakeCLI.app/Contents/MacOS:$PATH"

Install with Python

Requires Python 3.11 or later.

  1. Install uv.

  2. Install Snowflake CLI:

    uv tool install snowflake-cli
    
  3. Upgrade later with:

    uv tool upgrade snowflake-cli
    

Install for FIPS

Install Snowflake CLI from source in a container whose Python is linked against a FIPS-enabled OpenSSL. The image also needs a C compiler, Python development headers, and access to PyPI or your internal package index.

  1. Create and activate a virtual environment:

    python -m venv .venv
    source .venv/bin/activate
    
  2. Install the packages from source:

    pip install -U setuptools pip
    pip install cryptography==44.0.3 --no-binary cryptography
    pip install -U snowflake-connector-python[secure-local-storage] --no-binary snowflake-connector-python[secure-local-storage]
    pip install -U snowflake-cli --no-binary snowflake-cli
    
  3. Confirm the OpenSSL build:

    python -c "import ssl; print(ssl.OPENSSL_VERSION)"
    

Enable command auto-completion

  1. Install completion:

    snow --install-completion
    
  2. Restart the shell. Completion is available for bash, zsh, fish, and PowerShell.