Pro · Lesson 7 of 13
Size, multi-cluster scale-out, auto-suspend, resource monitors, and query acceleration.
Sign in to save your place.
A warehouse is a rented reading room. A bigger room has more desks and a higher hourly rate. Auto-suspend locks the room when everyone leaves. Auto-resume unlocks it when the next person arrives, and the first minute is always billed. A resource monitor is a prepaid card that can lock the room when the card runs out. Query acceleration is borrowing extra desks only for the one hard question.
Snowflake's warehouse-size page documents Generation 1 credits per hour as 1, 2, 4, 8, 16, 32, 64, 128, 256, and 512 from X-Small through 6X-Large. X-Small is the default for CREATE WAREHOUSE. Credits are billed per second with a 60-second minimum each time compute is provisioned. 5X-Large and 6X-Large are generally available on AWS and Azure, and the same page marks them as preview in US Government regions. Do not assume Google Cloud has those two sizes.
Generation 2 warehouses can use a different credit rate. Read the current credit table before you put a number in a budget. This lesson's meter stops at Large so it stays readable. It shows the doubling. It is not an invoice.
A larger warehouse can finish a heavy query sooner. If it finishes twice as fast at twice the credit rate, the query cost can stay flat. If the query was already pruning well, the larger size mostly burns credits. Compare the query profile, then resize back.
Multi-cluster warehouses require Enterprise Edition or higher. MIN_CLUSTER_COUNT and MAX_CLUSTER_COUNT set the range. SCALING_POLICY = STANDARD starts clusters sooner. ECONOMY waits longer to save credits. Clusters do not copy your data.
Snowflake recommends a short auto-suspend, for example 5 or 10 minutes, because billing is per second. If queries arrive every two minutes, a 60-second suspend will resume constantly and pay the 60-second minimum each time. Match the setting to the gaps you actually have.
A resource monitor watches warehouse credits, including cloud services that support those warehouses, over an interval. It can notify, suspend a standard warehouse, or disable an Adaptive Warehouse. It can monitor cloud-services credits and still cannot suspend them. Creating a monitor is an account-level job. Use ACCOUNTADMIN or a role that was granted the privilege. A warehouse monitor does not, by itself, cap serverless features such as query acceleration.
CREATE WAREHOUSE IF NOT EXISTS ANALYTICS_WH
WAREHOUSE_SIZE = SMALL
MIN_CLUSTER_COUNT = 1
MAX_CLUSTER_COUNT = 2
SCALING_POLICY = ECONOMY
AUTO_SUSPEND = 300
AUTO_RESUME = TRUE
INITIALLY_SUSPENDED = TRUE;
Query acceleration is an Enterprise feature. It leases serverless compute for parts of eligible queries, especially outliers on a mixed warehouse. Queries that do not need it do not pay the serverless rate. The scale factor is a multiplier of the warehouse's consumption rate. A factor of 8 means serverless acceleration cannot run at more than eight times the warehouse rate. Setting the factor to 0 removes that cap. Snowflake says to do that only when you are choosing speed over cost.
Acceleration credits show up apart from warehouse metering. QUERY_HISTORY includes QUERY_ACCELERATION_BYTES_SCANNED and related columns so you can see which queries used it. SYSTEM$ESTIMATE_QUERY_ACCELERATION is the documented way to preview a scale factor before you leave it on.
ALTER WAREHOUSE LEARN_WH SET
ENABLE_QUERY_ACCELERATION = TRUE
QUERY_ACCELERATION_MAX_SCALE_FACTOR = 8;
When queries feel slow, the fix depends on whether one query is big or many people are waiting.
Step 1 of 3An X-Small warehouse uses 1 credit per hour, billed per second. Each size up doubles both the power and the credits per hour.
CREATE WAREHOUSE wh WAREHOUSE_SIZE = XSMALL AUTO_SUSPEND = 60;
Step 2 of 3When many people query at once, a multi-cluster warehouse (Enterprise edition) starts another cluster of the same size instead of making the queue wait, then stops it when the rush ends.
ALTER WAREHOUSE wh SET MIN_CLUSTER_COUNT = 1 MAX_CLUSTER_COUNT = 3;
Step 3 of 3When one query scans far more than the rest, the Query Acceleration Service lends it serverless compute so you don't have to upsize the whole warehouse. It is billed separately.
ALTER WAREHOUSE wh SET ENABLE_QUERY_ACCELERATION = TRUE;
The warehouse statements need a role that can create warehouses. The resource monitor needs a role that can create monitors, often ACCOUNTADMIN. Skip the monitor if your trial role cannot create one, and still set auto-suspend. The credit quota of 5 is a learning cap, not a recommended production budget.
ALTER WAREHOUSE LEARN_WH SET
WAREHOUSE_SIZE = XSMALL
AUTO_SUSPEND = 300
AUTO_RESUME = TRUE
ENABLE_QUERY_ACCELERATION = FALSE;
USE ROLE ACCOUNTADMIN;
CREATE OR REPLACE RESOURCE MONITOR LEARN_MONITOR
WITH CREDIT_QUOTA = 5
FREQUENCY = MONTHLY
START_TIMESTAMP = IMMEDIATELY
TRIGGERS
ON 80 PERCENT DO NOTIFY
ON 100 PERCENT DO SUSPEND
ON 110 PERCENT DO SUSPEND_IMMEDIATE;
ALTER WAREHOUSE LEARN_WH SET RESOURCE_MONITOR = LEARN_MONITOR;
Generation 1 credits per hour double with each step up from X-Small. This meter shows that shape. It is not a bill.
X-Small · 1 credit per hour on a Generation 1 warehouse
Checked against Snowflake documentation in October 2026. Product behavior still depends on your edition, cloud, and region.