Understanding Snowflake Data Transfer Billing

The data storage for a Snowflake account is located in a geographical Snowflake Region built on a cloud storage service. Snowflake supports unloading table data into an AWS S3 bucket or Microsoft Azure container via an external stage (i.e. a storage container located outside of Snowflake).

Cloud storage providers charge for data transferred between regions within their own networks. They also charge for data transferred out of their network into another cloud storage provider’s data centers, within the same geographical region or across regions. To recover these expenses, Snowflake charges a per-byte fee for unloading data into an external stage that points to a different cloud storage provider’s network or a region different from your Snowflake account. The amount charged per byte depends on your Snowflake region.

For data transfer pricing, see the pricing guide.


Note that Snowflake does not charge to load data from any external stage; however, your cloud storage provider (Amazon S3 or Microsoft Azure) might charge a separate egress fee if your data storage is located in a region or network different from your Snowflake account.

In this Topic:

Data Transfer History

The COPY INTO location command can unload data from a table (or query) into files in an external stage. This activity is available to view for 14 days.

Viewing the Data Transfer History for Your Account

Users with the ACCOUNTADMIN role can use the Snowflake web interface or SQL to view the amount of data transferred (in bytes) for your Snowflake account within a specified date range.

To view the data transfer amounts for your account:

Web Interface:Click on Account » Billing & Usage
SQL:Information Schema table function: DATA_TRANSFER_HISTORY