Understanding Snowflake Data Transfer Billing

Cloud providers apply data egress charges in either of the following use cases:

  • Data is transferred from one region to another within the same cloud platform.

  • Data is transferred out of the cloud platform.

To recover these expenses, Snowflake charges a per-byte fee when users transfer data from your Snowflake account (hosted on AWS, Google Cloud Platform, or Microsoft Azure) into cloud storage in another region on the same cloud platform, or into cloud storage in another cloud platform.

The amount charged per byte depends on the region where your Snowflake account is hosted. For data transfer pricing, see the pricing guide (on the Snowflake website):


Note that Snowflake does not charge data ingress fees; however, contact your cloud storage provider (Amazon S3, Google Cloud Storage, or Microsoft Azure) to determine whether they apply data egress charges to transfer data from their network and region of origin to the cloud provider’s network and region where your Snowflake account is hosted.

In this Topic:

Data Transfer Billing Use Cases

Snowflake currently applies data egress charges only in the following use cases:

Unloading Data from Snowflake

Using COPY INTO <location> to unload data to cloud storage in a region or cloud platform different from where your Snowflake account is hosted.

Database Replication

Replicating data to a Snowflake account in a region or cloud platform different from where your primary (origin) Snowflake account is hosted.

External Functions
  • AWS:

    • Data transfers sent from your Snowflake account are billed at the cross-cloud platform rate regardless of the cloud platform that hosts your Snowflake account or the region in which your account is located.

    • Data sent via API Gateway Private Endpoints incurs PrivateLink charges for both ingress and egress.

  • Azure:

    • Data transfers within the same region are free, and therefore there are no charges for Snowflake to pass on to the account.


Snowflake does not apply data egress charges when any Snowflake client or driver retrieves query results across regions within the same cloud platform or across different cloud platforms.

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:

New Web Interface

Click on Account » Usage.

Classic Web Interface

Click on Account Account tab » Billing & Usage


Query either of the following:

Note that regardless of the method used to access this information, the data transfer numbers for both ingress and egress flows are provided. The current Snowflake account is charged only for data egress.