Lesson Overview

In this lesson, we will learn about the Snowflake billing model and credit system. We will also look into the various cost visiblity and cost control features of Snowflake, and touch upon ways to minimise costs.

Consumption Based Pricing

Snowflake offers a genuinely consumption based pricing model where you pay for the compute that you use by the second, and the data storage that you use by the byte.

When consuming Snowflake, there are three classes of resource which you will use and pay for:

Compute

When you execute queries or updates, you need processing power to carry out the requests. It is this compute which you pay for, and which is charged on a per second basis.

Storage

The data in your Snowflake instance will need to be saved on some persistent store which exists even when you are not running any compute resources. You will pay for this storage on a per byte basis.

Cloud Services

In order to run your account, you will need to do various activities such as login, adminster users and run scheduled jobs. These are billed by Snowflake as a seperate line item.

Credit System

As discussed in the last lesson, Snowflake is billed using a credit system. As you use Snowflake you will be accruing credits for your compute, storage and cloud service usage. These will then be billed at a per credit cost at month end.

As we touched on in a previous lesson, there is a per credit cost which is a function of the tier you are on, the cloud provider and the cloud provider region.

For instance, at the time of writing, an Enterprise user in AWS us-east region would be paying the following:

TierCredit Cost
Standard$2.60
Enterprise$3.90
Business Critical$5.20

Whereas the same deployment in GCP London region would cost:

SyntaxDescription
Standard$2.70
Enterprise$4.00
Business Critical$5.40

Making GCP slightly more expensive with regards to your Snowflake credits if you need to host in London.

Virtual Warehouse Costs

Your compute costs will likely be the largest part of your Snowflake deployment. This is because storage is cheap, and because Snowflake pass along their storage costs without making a significant profit.

Snowflake has a number of different tiers of data warehouse which are structured on a T-Shirt size basis, each of which has a credit-per-hour associated cost.

SyntaxCredits Per Hour
X-Small1
Small2
Medium4
Large8
X-Large16
2X-Large32
3X-Large64
4X-Large128
5X-Large256
6X-Large512

Combining the two tables above, we can work out our costs per hour of running in AWS eu-west:

TierCredit CostWarehouse SizeWarehouse Credits Per HourWarehouse Cost Per Hour
Standard$2.602X-Large3283.20
Enterprise$3.902X-Large32124.80
Business Critical$5.202X-Large32166.40

And the same for GCP:

TierCredit CostWarehouse SizeWarehouse Credits Per HourWarehouse Cost Per Hour
Standard$2.602X-Large3283.20
Enterprise$3.902X-Large32124.80
Business Critical$5.202X-Large32166.40

The math is not too complex to work out, but hopefully shows that it is a function of the choices you make. The eventual bill is also highly consumption based based on the credits you actually use, and the price could be unpredictable depending on how your users are using Snowflake.

Bespoke Arrangements

For larger deployments, it is possible to achieve discounts through direct negotiation with Snowflake. This will likely require pre-payment or agreements for compute and storage consumption.

Snowflake Tables For Billing

Snowflake makes available a lot of information about accured bills through internal tables. We will now take a quick tour of these to highlight the main ones:

Begin by logging into your Snowflake instance if not already:

snowsql -u foo

Table 1

select * from billing

Table 2

select * from billing

Table 3

select * from billing

Table 4

select * from billing

Table 5

select * from billing

Summary

In this lesson we looked at the Snowflake billing model.

We described how everything is based around credits, and how the cost per credit is based on the cloud provider, the region and the tier which you select.

We demonstrated how the actual price you pay will be a function of this per credit cost and your actual consumption levels.

Prev LessonNext Lesson

© 2022 Timeflow Academy.