Resource Monitor

A resource monitor is a Snowflake object that tracks how many credits virtual warehouses use during an interval and acts when usage reaches set percentages of a quota — by sending notifications, suspending warehouses, or both. It is the built-in way to stop warehouse spending before the invoice rather than explaining it afterwards.

Product details below were checked against Snowflake’s documentation in September 2026.

How it is set up

  • Credit quota: the number of credits allocated for each interval.
  • Level: an account monitor watches every warehouse in the account, and there can be only one. Warehouse monitors watch the warehouses assigned to them; there can be many, but each warehouse belongs to at most one.
  • Schedule: by default, usage resets at the start of each calendar month. Daily, weekly, yearly, or never are also available, and resets happen at midnight UTC regardless of the start time chosen. An optional end time suspends the assigned warehouses whether or not a threshold was reached.
  • Actions at thresholds: each action fires at a percentage of the quota, and thresholds may exceed 100%.
ActionWhat happens
NotifyA notification is sent; warehouses keep running
Notify & SuspendWarehouses are suspended after the statements they are running complete
Notify & Suspend ImmediatelyWarehouses are suspended at once, and running statements are cancelled

One arrangement layers them: notify at a point that leaves time to react, suspend near the quota, and suspend immediately a little above it as a hard backstop. Suspended warehouses become usable again when the next interval starts, or when the quota or the suspend threshold is raised. Only the ACCOUNTADMIN role can create resource monitors, though it can grant other roles permission to view or modify them.

What it does not cover

The documentation’s own boundaries are the important part.

  • Warehouses only. Resource monitors cannot track spending on serverless features or AI services, which run on Snowflake-managed compute.
  • Not storage or data transfer. Those are billed on their own bases and are outside what a monitor tracks.
  • Cloud services only partly. A warehouse-level monitor can observe the cloud services credits supporting its warehouses but cannot suspend that usage.
  • Not an exact cap. After a threshold is reached, warehouses can take some time to suspend and consume additional credits in the meantime.

So a resource monitor is a guardrail on the largest and most variable part of the bill, not a limit on the bill. The parts it cannot see need a regular review instead.

The operational catch

An immediate suspension cancels running statements. A single statement is rolled back, but a pipeline made of several steps that each commit can be left half done — early steps applied, later ones not. Before relying on immediate suspension for warehouses that run loads, make sure those pipelines can be safely re-run from where they stopped, or reserve immediate suspension for warehouses that serve interactive queries.

How resource monitors fit with the other cost controls and Snowflake’s three billing layers is worked through in Snowflake Architecture: Three Layers and What Each One Bills For.

References: Snowflake Documentation, Working with resource monitors; Snowflake Documentation, Understanding overall cost.


Discover more from Insightful Data Lab

Subscribe to get the latest posts sent to your email.

Similar Posts

Questions, corrections, or additional insights?

This site uses Akismet to reduce spam. Learn how your comment data is processed.