Skip to main content

Suspend and Resume Snowflake Warehouses on a Schedule

AUTO_SUSPEND handles idle time, a cron task handles the hard stop, and AUTO_RESUME brings the warehouse back when the first query arrives.

A Snowflake virtual warehouse bills credits only while its compute resources are running, per second after a one-minute minimum each time it starts. Suspending it removes all compute nodes; databases, tables and stages are storage and are not touched. This guide sets the idle timeout, adds a scheduled suspend for the evening, and shows how to confirm the state.

Privileges

To suspend, resume or change a warehouse, the role needs OPERATE (suspend and resume) and MODIFY (change properties) on it, or the account-level MANAGE WAREHOUSES privilege, which Snowflake defines as equivalent to MODIFY, MONITOR and OPERATE on every warehouse.

Terminal window
GRANT OPERATE, MODIFY ON WAREHOUSE analytics_dev_wh TO ROLE platform_ops;

1. Set a sensible AUTO_SUSPEND

AUTO_SUSPEND is in seconds. The default is 600. Snowflake’s suspend process polls roughly every 30 seconds, so use multiples of 30. A value of 0 or NULL means the warehouse never suspends, which Snowflake warns can consume significant credits.

Terminal window
ALTER WAREHOUSE analytics_dev_wh SET
AUTO_SUSPEND = 300
AUTO_RESUME = TRUE;

With AUTO_RESUME = TRUE, the warehouse resumes when a new query is submitted, so there is usually no need to schedule a morning start at all.

2. Suspend on a timetable

Auto-suspend never fires while something keeps querying: a BI dashboard on a refresh loop, a monitoring probe. A scheduled suspend is the backstop. Snowflake tasks accept a cron schedule with a time zone:

Terminal window
CREATE TASK ops.suspend_dev_wh_evening
SCHEDULE = 'USING CRON 0 20 * * 1-5 Europe/London'
AS ALTER WAREHOUSE analytics_dev_wh SUSPEND;
ALTER TASK ops.suspend_dev_wh_evening RESUME;

New tasks are created suspended, hence the ALTER TASK ... RESUME. The owning role needs EXECUTE TASK on the account, plus EXECUTE MANAGED TASK if the task uses serverless compute (no WAREHOUSE = clause) or USAGE on the warehouse that runs it. Make sure the task does not run on the warehouse it is suspending.

If AUTO_RESUME is FALSE on a warehouse, add a matching morning task with ALTER WAREHOUSE analytics_dev_wh RESUME IF SUSPENDED;. The IF SUSPENDED clause stops the statement failing when the warehouse is already running.

3. What happens to running queries

Suspending is allowed at any time. Snowflake shuts idle compute down immediately, lets compute that is still executing statements finish them, and only then marks the warehouse Suspended (the resources in between are in “quiesce” mode). Suspend also drops the warehouse cache, so the first queries after resuming can be slower until it rebuilds. There is no benefit to suspending within the first 60 seconds after a start, because that minute is already billed.

4. Verify

Terminal window
SHOW WAREHOUSES LIKE 'analytics_dev_wh';

The state column reads SUSPENDED, STARTED or RESIZING, and running and queued show the statement counts. Task outcomes are in the task history.

ZopNight for Snowflake

ZopNight connects Snowflake as a standalone account using a key-pair JWT or a personal access token, discovers warehouses alongside databases, tables and resource monitors, and can suspend and resume warehouses on the same cron schedules, groups and overrides it uses for cloud resources. Its Snowflake recommendations cover idle warehouses, resizing, auto-suspend and resource-monitor guardrails. See Snowflake warehouse scheduling and the Snowflake cost optimization guide.

Stop watching the waste.
Start cutting it.

See. Find. Fix. Automatic.

Connect your first cloud account in under 5 minutes. See your first remediation in under 7. No credit card required.

CDCR connect detect classify remediate
full audit every action traceable
read-only default access
Multi-cloud automation· Production-ready in 30 min· SOC 2 · ISO 27001· 20–60% off the bill, first month· 4 platforms · 1 console· Multi-cloud automation· Production-ready in 30 min· SOC 2 · ISO 27001· 20–60% off the bill, first month· 4 platforms · 1 console·