Discover how CloudZero helps engineering and finance get on the same team — and unlock cloud cost intelligence to power cloud profitability
Learn moreDiscover the power of cloud cost intelligence
Give your team a better cost platform
Give engineering a cloud cost coach
Learn more about CloudZero and who we are
Learn more about CloudZero's pricing
Take a customized tour of CloudZero
Explore CloudZero by feature
Build fast with cost guardrails
Drive accountability and stay on budget
Manage all your discounts in one place
Organize spend to match your business
Understand your cloud unit economics and measure cost per customer
Discover and monitor your real Kubernetes and container costs
Measure and monitor the unit metrics that matter most to your business
Allocate cost and gain cost visibility even if your tagging isn’t perfect
Identify and measure your software COGS
Decentralize cost decisions to your engineering teams
Automatically identify wasted spend, then proactively build cost-effective infrastructure
CloudZero ingests data from AWS, GCP, Azure, Snowflake, Kubernetes, and more
View all cost sourcesDiscover the best cloud cost intelligence resources
Browse webinars, ebooks, press releases, and other helpful resources
Discover the best cloud cost intelligence content
Learn how we’ve helped happy customers like SeatGeek, Drift, Remitly, and more
Check out our best upcoming and past events
Gauge the health and maturity level of your cost management and optimization efforts
Compare pricing and get advice on AWS services including EC2, RDS, ElastiCache, and more
Learn moreDiscover how SeatGeek decoded its AWS bill and measures cost per customer
Read customer storyLearn how Skyscanner decentralized cloud cost to their engineering teams
Read customer storyLearn how Malwarebytes measures cloud cost per product
Read customer storyLearn how Remitly built an engineering culture of cost autonomy
Read customer storyDiscover how Ninjacat uses cloud cost intelligence to inform business decisions
Read customer storyLearn Smartbear optimized engineering use and inform go-to-market strategies
Read customer storySnowflake pricing reflects your usage of its three distinct layers. Here’s how to better calculate and understand your Snowflake spend.
Snowflake’s scalable architecture, minimal latency, advanced analytics, simplified data handling, flexible pay-as-you-go model, and always-on security make the data cloud a top choice for many businesses. You can also purchase Snowflake resources on-demand or upfront.
But if you struggle to control your Snowflake costs, you’re not alone. With the help of this guide, you’ll know how to better manage your Snowflake costs.
Table Of Contents
Snowflake pricing is usage-based, billed per second. You pay for the storage capacity, compute (for query processing), and data transfer you actually use.
Meanwhile, pricing for Snowflake is divided into four pricing plans, each with unique capabilities, and thus different pricing.
Additionally, you can pay for Snowflake usage on a month-to-month basis (Snowflake On-Demand). Alternatively, you can reserve capacity ahead of time (Snowflake Pre-Purchase).
Credit: Snowflake pricing plans
Let’s dive deeper …
In practice, Snowflake charges for data storage, compute, and cloud services. These are the three components of Snowflake pricing.
This is in line with the Snowflake architecture, which consists of three major layers: data storage, compute (virtual warehouses), and cloud services like data transfer and serverless capabilities.
Snowflake pricing reflects your usage of these distinct layers. In addition, you don't pay cash directly for Snowflake compute. Instead, you use Snowflake credits.
A Snowflake credit is the unit used to measure how much billable compute (virtual warehouses) you consume. A Snowflake credit is used only when resources are active, such as when a virtual warehouse is currently running, when loading data with Snowpipe, or serverless features are in use.
Each Snowflake layer uses credits differently. Also, the credit pricing rate depends on the Snowflake edition you use: Standard, Enterprise, or Business-Critical. Each edition offers a different set of features.
You'll notice this when we discuss Snowflake pricing at each of its architectural layers below (data storage, compute, and cloud services).
The cost for Snowflake data storage is based on the daily average data volume (in bytes) you store in its system. This includes compressed or uncompressed files you stage for bulk unloading or loading, historical data you maintain for File-safe, and data you keep in database tables.
Snowflake automatically compresses to shrink and optimize all table data. It then calculates how much storage an account uses based on this compressed file size.
Also, the monthly charge for data storage in Snowflake is set at a flat rate per terabyte (TB). However, the precise cost per TB of storage is based on the factors mentioned below.
With the On-Demand option, you get the flexibility to use as much or as little storage capacity as you want. No commitments are necessary.
But this flexibility comes at a price because this is the most expensive way to use Snowflake data storage. For example, Snowflake On-Demand costs $40 per TB per month when you deploy the service within the AWS (US East (Northern Virginia) Region).
In contrast, the Pre-Purchase option works a lot like using Reserved Instances on AWS; you commit to spending a certain amount of storage capacity upfront to get a discount, and you use that capacity over the course of a fixed contract period.
For example, Snowflake Pre-Purchase costs $23 per TB per month when you deploy it in the US East (Northern Virginia) Region of AWS.
Deploying your Snowflake workload in a particular region will affect how much you are charged. For example, Snowflake On-Demand in the US East (Northern Virginia) Region of AWS charges $40 per TB while it costs $46 per TB in the AWS Canada (Central) Region.
Note that data transfer fees vary by region as well. Transfers within the same region and same cloud are not charged. Data transfers to a different region but the same cloud costs between $20 per TB in the US and $140 per TB in the Asia Pacific (Sydney) Region.
Transfers to a completely different cloud provider or to the internet cost between $90 and $150 per TB. Check this out:
Credit: Snowflake data transfer charges by AWS region
The Snowflake platform works natively on AWS, Azure, and Google Cloud Platform. However, each platform offers Snowflake features at a slightly different price. Take data transfer fees for example.
Transfers from an AWS US East (Northern Virginia) Region to the internet cost $90 per TB. In comparison, transferring data from a Microsoft Azure (East US 2 - Virginia) Region to the internet costs $87.50 per TB.
Transfers from a Google Cloud (US East 4 - N. Virginia) source to the internet costs $120-$190 per TB.
A virtual warehouse contains one or more computing clusters for performing queries, loading data, and other DML operations.
Virtual warehouses use Snowflake credits as payment for the processing time they use. How many credits you use depends on the virtual warehouse’s size, running duration, and how many they are.
Warehouses are now available in ten sizes. Each size specifies the amount of computing power a warehouse can access per cluster. By expanding a warehouse to the next larger size, its computing power and credit usage doubles per full operational hour.
Check this out:
Table: Snowflake virtual warehouse sizes and credit usage per full hour of operation
Sizes 5X-Large and 6X-Large are still in preview (AWS in Ireland (EU)), so you have to contact Snowflake first before provisioning either option.
Also, note that:
There’s more. With Snowflake, performance is linear. So, doubling a warehouse’s size will usually reduce processing time for a task in half, maintaining the same cost.
Operations, such as suspending, resuming, increasing, and decreasing are nearly instantaneous, so, you can precisely match your Snowflake spending to your actual usage, never worrying about capacity planning or unexpected usage.
Snowflake cloud services comprise a set of tools that support the main data storage and compute functions. The services include metadata and infrastructure management, SQL API, access control and authentication, and query parsing.
These services are, in turn, powered by compute resources, meaning cloud services consume Snowflake credits, just like virtual warehouses.
However, Snowflake only bills cloud services that exceed 10% of your daily compute resource usage. Thus, the 10% adjustment automatically applies on each day, based on that day’s credit price.
For example, if you’ve used 120 compute credits and 20 cloud services credits on a particular day, the adjustment will automatically subtract 10% off the compute credits (120 X 10% = 12) for that day. So, your billable credits will be:
Total used cloud services credits for the day (20) – adjusted amount (12) = 8 credits billed.
If your cloud services amount is less than 10% of your daily compute credits amount, Snowflake charges you based on that day’s cloud services credits.
For example, if you’ve used 100 compute credits and 8 cloud services credits, you’ll have used 8% of your compute credits in cloud services credits. In this case, Snowflake will automatically count 8 cloud services credits as the day’s cloud services usage.
So, how do you apply these Snowflake cost insights to your data cloud requirements? How do you decide between On-Demand and Pre-Purchased plans?
For new users, the rule of thumb is to start out with Snowflake On-Demand for a month or two. The goal is to monitor your Snowflake usage and associated costs so you can switch to Snowflake Pre-Purchased later when you know how many resources to provision.
Pre-Purchase offers greater savings for long-term commitment vs. On-Demand’s month-to-month usage.
You can use a Snowflake resource monitor to track usage. Snowflake’s own resource monitor can be quite handy.
However, like many native resource monitoring tools, you might need a solution that's more comprehensive, or that calculates more than just Snowflake costs.
Here is the thing. Depending on your data cloud usage, you may incur other Snowflake charges, including data transfer, serverless computing, and Snowpipe usage fees.
Costs also depend on whether you use managed services (Snowpipe, Tasks, Streams,) and how real-time the data is (batch vs. streaming). So, measuring exact pricing for Snowflake may still prove challenging in some circumstances.
So what should you do?
You’ll want to use a robust Snowflake cost intelligence platform, that can help you to better understand your spend and break out your costs into meaningful insights.
With CloudZero’s Cost Intelligence For Snowflake, you can:
to see how CloudZero can help you better understand your Snowflake spend and make informed decisions about where to optimize costs.
Here are answers to some frequently asked questions about Snowflake pricing.
How much a single credit costs depends on the Snowflake Edition you select (Standard Edition, Enterprise Edition, Business-Critical Edition, and Virtual Private Snowflakes Edition).
For example, while Snowflake Standard Edition costs $0.00056 per second per credit consumed, the Enterprise Edition costs $0.0011 per second.
Benefits of the Snowflake pricing model include:
Monthly billing is based on the cost of data storage and compute resources you consume, accrued daily.
Data storage is charged per compressed terabyte per month. Compute resources use up Snowflake credits, the unit of measure for compute usage (query processing), and cloud services (supporting services like SQL API and infrastructure management) in the Snowflake environment.
Snowflake’s best feature is that it separates compute, data storage, and cloud services on three separate layers, enabling it to be faster, highly scalable on-demand, and cost-efficient than most data clouds.
Read our Snowflake vs. AWS Redshift guide for an in-depth comparison of the two.
Yes. Snowflake offers a 30-day free trial with $400 worth of credits. Your trial ends when you finish up your credits or the trial period ends and you haven’t upgraded to a paid account. You can still log into the suspended account (to upgrade from within) but cannot use any Snowflake feature.
No. Snowflake calculates charges while resources are running. However, you’ll want to set up user-defined rules to automate resource suspension, such as “suspend after 3 minutes inactive”.
The Snowflake Data Cloud costs $0.01 per unit in AWS, according to the AWS Marketplace.
Snowflake is worth it for companies looking to reduce data cloud bottlenecks with Snowflake’s three-layered architecture and pay-as-you-go pricing model.
Cody Slingerland, a FinOps certified practitioner, is an avid content creator with over 10 years of experience creating content for SaaS and technology companies. Cody collaborates with internal team members and subject matter experts to create expert-written content on the CloudZero blog.
CloudZero is the only solution that enables you to allocate 100% of your spend in hours — so you can align everyone around cost dimensions that matter to your business.