Why is the cost of a query in SELECT different than the cost in Snowflake's Query Attribution History?
Last updated: May 22, 2026
SELECT and Snowflake use different methodologies to calculate the cost of a query, which can cause the numbers to differ — sometimes significantly.
Snowflake's Query Attribution History table has several limitations in what it accounts for:
Idle time — Snowflake does not factor in warehouse idle time when attributing cost to queries
Short-running queries — Snowflake excludes queries below a certain execution time threshold
Query Acceleration costs — Snowflake does not include query acceleration service charges
Data transfer costs — Snowflake does not include data transfer costs driven by a query
AI costs — Snowflake does not include AI-related costs (e.g., Cortex) attributed to a query
Cloud Services costs — Snowflake does not include cloud services layer costs
SELECT's cost per query calculation accounts for all of the above. We look at all queries running concurrently in a warehouse alongside granular billing data, then allocate cost to each query proportional to its execution time — including idle time, query acceleration, AI, cloud services, and data transfer costs.
As a result, SELECT will often report a higher cost per query than what you see in Snowflake's Query Attribution History.
For a deeper dive into our methodology, see Calculating cost per query in Snowflake.