Keebo | How Does Snowflake Pricing Work?

How Does Snowflake Pricing Work?

Snowflake pricing isn’t particularly complex. But it can be tricky to figure out exactly how many credits you really need. This article will help.

Unlike other cloud infrastructure platforms, Snowflake doesn’t charge on a flat monthly basis, but based on usage. As such, Snowflake pricing varies by configuration and use case. 

So how do you know whether you’re over- or under-spending? 

Optimizing Snowflake costs requires a clear understanding of those costs. This article will break down Snowflake’s pay-as-you-go pricing model and how to get the most value out of the platform.

Why it’s important to understand Snowflake pricing

Snowflake is famous for its scalable architecture, minimal latency, advanced analytics, and simplified data handling. But equally appealing is its flexible pricing model, for a number of reasons: 

  • Pay for actual usage
  • Saving costs through start/stop resource consumption
  • Scalable data storage, computer, and cloud services
  • Flexible options (Capacity or On-Demand)

Yet there are downsides to this model that often get papered over. Users can purchase Snowflake credits in two ways: Capacity or On-Demand. Capacity involves pre-purchasing a set number of credits at a discount, while On-Demand is true pay-as-you-go. 

However, if you go over your set number of credits, you’ll face a steep penalty. What’s more, if you reduce those credits in a future billing cycle, you’ll potentially lose your discount. 
As such, figuring out the Snowflake pricing model is critical not only in that initial purchase, but also ensuring you’re not incurring unnecessary costs over time. While Snowflake does feature built-in cost monitoring and optimization tools, they’re limited in what they offer. As such, it’s important to choose the right pricing tier from the get-go.

How does Snowflake pricing work? 

Snowflake pricing is determined by aggregating three usage categories: data storage, data transfer, and compute resources. Let’s look at each in detail. 

Data storage

Snowflake charges for data storage on a flat rate per terabyte (TB) of both compressed and uncompressed data used for bulk unloading or loading, historical data maintained for File-safe, and database tables.

Snowflake storage costs are calculated monthly based on the average number of on-disk bytes stored each day in your Snowflake account. The exact rate depends on whether your account is Capacity or On-Demand, and also varies by region (e.g. US vs. EU) and platform (e.g. AWS vs. GCP). 

Data transfer

While Snowflake doesn’t charge to bring data into your account, it does charge to transfer data from a Snowflake account to a different region, whether on the same or a different cloud platform. It’s important to account for your Snowflake data transfer cost when considering your overall pricing structure. 

Compute resources

In Snowflake, using compute resources—for performing queries, loading data, or other DML operations—consumes Snowflake credits. There are three types of said resources: virtual warehouses, serverless, and cloud services. 

Virtual Warehouse Compute

These user-managed compute resources consume Snowflake credits per second spent loading data, executing queries, and performing other DML operations. Warehouses are available in ten sizes, each specifying the amount of computing power a warehouse can use per cluster. 

When considering Snowflake warehouse costs, keep in mind that each subsequent warehouse size doubles in price, as you can see in the chart below. 

Warehouse sizeCredits per hour (cost)
X-small1
Small2
Medium4
Large8
X-large16
2X-large32
3X-large64
4X-large128
5X-large256
6X-large512

A few things to keep in mind when considering Snowflake warehouse costs: 

  • Warehouses only consume Snowflake credits while running, not while suspended or idle
  • Credit usage per hour directly correlates to the number of servers in a warehouse cluster, charged per second with a minimum of 60 seconds
  • Snowflake performance is typically linear, so doubling a warehouse’s size usually results in a 50% reduction in a given task’s processing time for the same cost

READ MORE: How PayJoy Cuts Snowflake Data Warehousing Costs by 21% with Keebo

Serverless Compute

Certain features like Search Optimization and Snowpipe use Snowflake-managed compute resources instead of virtual warehouses. These resources are automatically scaled up or down for each workload. 

Cloud Services Compute

The cloud services layer of Snowflake architecture consumes credits for tasks like authentication, metadata management, API, SQL, query parsing and access control—if daily consumption of cloud services resources exceeds 10% of daily warehouse usage. 

What are the four Snowflake pricing tiers?

Snowflake organizes its pricing into four primary tiers, called Snowflake Editions, offering increasingly robust and sophisticated features. 

Standard Edition

Snowflake Standard Edition features a complete SQL data warehouse and fully managed cloud-based service. 

  • Dedicated virtual warehouses for scaling resources and optimizing performance identities
  • Database replication to increase availability and aid in disaster recovery
  • Enterprise-grade encryption in transit and at rest

Enterprise Edition

Snowflake Enterprise Edition includes everything in the Standard plan, plus:

  • Multi-cluster warehouses for increased scalability
  • 90 days of time travel for robust data recovery
  • Dynamic data masking
  • External data tokenization
  • Materialized views to help improve performance and reduce workloads 

Business Critical Edition

Snowflake’s Business Critical Edition includes both Standard and Enterprise capabilities, as well as:

  • HIPAA and PCI DSS compliance
  • Tri-Secret Secure to allow customers to use self-managed keys to encrypt data
  • Support for AWS + Azure Private Link and Google Cloud Private Service Connect Database failover and failback
  • AWS API Gateway Private Endpoints support

Virtual Private Snowflake (VPS) Edition

Snowflake VPS Edition offers all the features of the previous three tiers, as well as customer-dedicated virtual servers accessible only by authorized team members. Encryption keys remain only in memory, allowing for greater security and control over data.

How to know you’ve picked the right Snowflake pricing configuration?

For many Snowflake customers, the day-to-day reality will be very different from their initial plans. Since Snowflake is so easy to get running and add users and data, costs can quickly exceed your initial plans. This is why you need to proactively monitor its usage. 

As you monitor Snowflake usage, you’ll get a clearer idea of whether you’re over- or under-using the platform—or whether you’re in that Goldilocks zone. You can do this by measuring seven primary metrics: 

  1. Bytes Scanned. The amount of data read from storage during query execution. This is the most important metric to optimize compute costs.
  2. Compilation/Execution Times. The time taken for query compilation and execution, which can help identify performance bottlenecks.
  3. Spillage. Intermediate results of a query exceeding the memory allocated for processing. When a query gets too big for memory, it “spills” over to disk, which can result in unacceptably slow performance for your users. 
  4. Query Throughput. The number of queries executed over a given period, which can help you understand usage patterns. 
  5. Concurrency. The number of concurrent queries running on the system. Excessive concurrency could indicate you need a larger warehouse.
  6. Warehouse Utilization. The usage of compute resources (warehouses) over time, which helps in scaling resources on demand. 
  7. Data Loading Performance. The time taken to load data into Snowflake tables, which can help optimize data ingestion processes and ensure timely availability of data.

So what’s the secret to optimizing Snowflake pricing?

Managing and optimizing Snowflake pricing is no different than any other pay-as-you-go platform: use only what you need, when you need it. Rather than upgrade your capacity, you need to become more efficient at using the resources you’ve already incurred. 
For a real-world example of how this can help you manage your costs, see how Barstool Sports cut Snowflake costs by 70% through AI-powered Snowflake observability and performance optimization.

Keebo | How Does Snowflake Pricing Work?
Skye Callan
Articles: 4