Skip to content

Mastering Snowflake Cost Control with Snowsight’s Cost Management Dashboard

Published: at 10:00 AM

In this article we will discuss how to use the cost management dashboard available within your Snowflake instance. We will look at how to interpret and the important role that reosurce monitors can play.

Table of Contents

Open Table of Contents

Importance of Cost Management in Snowflake

Snowflake’s consumption-based pricing model offers flexibility but can lead to unforeseen expenses if not properly managed. Without adequate monitoring, organisations may encounter budget overruns due to inefficient queries, oversized warehouses, or underutilised resources. Implementing a robust cost management strategy ensures that spending aligns with organisational goals and prevents financial surprises.

Interpreting Cost Data in Snowsight

Snowsight’s Cost Management Dashboard provides insights into Snowflake usage costs. Users can access organisation-level and account-level overviews, drilling down into specific cost drivers such as compute, storage, and data transfer. The dashboard allows for filtering by usage types and time periods, enabling users to identify trends and anomalies in spending.​

Organisation-Level Overview

The Organisation Overview page displays the remaining balance of the contract, accumulated cost since the start of the contract, and monthly spend for the organisation. It also provides an overview of how much each account within the organisation has spent.

Account-Level Overview

The Account Overview page offers high-level insights into the cost of using Snowflake at the account level. It serves as a starting point for optimising spend by highlighting key cost drivers.​

Drilling Down into Incurred Costs

The Consumption page allows users to drill down into the overall cost of using Snowflake for any given day, week, or month. This granular view helps in identifying specific areas where cost optimisation is possible.

How to Use Resource Monitors

Resource monitors in Snowflake help control costs and avoid unexpected credit usage caused by running warehouses. They monitor credit usage by virtual warehouses and the cloud services needed to support those warehouses. Resource monitors can be configured to send alerts or suspend operations when specified thresholds are reached.

Creating a Resource Monitor

To create a resource monitor, use the following SQL command:

CREATE RESOURCE MONITOR my_monitor WITH CREDIT_QUOTA=1000
  TRIGGERS ON 80 PERCENT DO NOTIFY
           ON 100 PERCENT DO SUSPEND;

This monitor will send a notification when 80% of the credit quota is used and suspend the warehouse when 100% is reached.

Assigning a Resource Monitor to a Warehouse

After creating a resource monitor, assign it to a warehouse using:

ALTER WAREHOUSE my_warehouse SET RESOURCE_MONITOR = my_monitor;

This links the warehouse to the resource monitor, enabling cost control measures.

Best Practices for Snowflake Cost Optimisation

Implementing best practices ensures efficient use of Snowflake resources:​

Conclusion

Effective cost management in Snowflake is essential for maintaining financial control and optimising resource utilisation. By leveraging Snowsight’s Cost Management Dashboard and implementing resource monitors, organisations can gain visibility into their spending, enforce cost controls, and make informed decisions to optimise their Snowflake environment.