Snowflake warehouse cost: AUTO_SUSPEND, idle warehouses and sizing
Short answer: a warehouse bills credits for every second it runs, whether or not a query is running. Most avoidable spend is idle tail after queries finish, warehouses nobody uses, and sizes bigger than the queries need.
What it costs (illustrative)
Credits per hour double with each size: X-Small 1, Small 2, Medium 4, Large 8, X-Large 16, and so on.
Price per credit depends on edition and contract; this tool assumes $3.00 and lets you change it.
Resume minimum: each resume bills at least 60 seconds.
Where the money is
Long AUTO_SUSPEND: every wake-up idles for the whole setting before suspending. Hundreds of dashboard wake-ups a month multiply it.
Always-on warehouses: AUTO_SUSPEND off keeps the meter running 24/7, 730 hours a month.
Idle warehouses: a retired pipeline or sandbox that still bills.
Oversized for short queries: a Large averaging 3-second queries.
Measure and fix
Credits: SELECT warehouse_name, SUM(credits_used) FROM snowflake.account_usage.warehouse_metering_history WHERE start_time >= DATEADD(day, -30, CURRENT_TIMESTAMP()) GROUP BY 1;
Size and AUTO_SUSPEND: SHOW WAREHOUSES;. Queries and average runtime from query_history, resumes from warehouse_events_history.
Paste rows into the advisor or run node cli.mjs analyze warehouses.csv. It prints an ALTER WAREHOUSE command per fix.
Change one warehouse at a time and watch query latency for a week before rolling out.
Questions
What AUTO_SUSPEND should a Snowflake warehouse use?
60 seconds is the practical minimum, because every resume bills at least 60 seconds anyway. Longer settings pay for idle time after each burst of queries. Keep a longer value only for a warehouse whose warm cache you rely on and that wakes up rarely.
Why is my Snowflake bill high when queries are fast?
Usually idle time and size, not query work: an AUTO_SUSPEND of 600 seconds on a Large warehouse that wakes 500 times a month bills about 78 hours of idle tail, around 620 credits. Warehouses with AUTO_SUSPEND off run around the clock; a Small is 1,460 credits a month.
Does a smaller warehouse always cost less?
No. Credits per hour halve with each size, but a query that does not scale down can take more than twice as long. Short queries are the safe candidates; try one size down on one warehouse and compare runtimes before rolling it out.