Skip to main content
orphan · snowflake

Warehouses carrying none of the three cost-allocation tag keys

resource types
1
rule IDs covered
1
severity
low

What does ZopNight detect here?

Warehouses missing all 3 canonical tag keys (team, cost_center, and environment) cannot be attributed in showback reporting. Snowflake meters credits per warehouse, which makes the warehouse the natural chargeback unit, so an untagged one is a blind line item. A single present key keeps this rule quiet.

Signal and threshold

How ZopNight evaluates Warehouses carrying none of the three cost-allocation tag keys.
Field Value
Rule IDssnowflake_wh_missing_cost_allocation_tags
Categoryorphan
Severitylow
Metricnone — pure configuration read
Sourcesignals/hygiene/snowflake-wh-apply-tags.yaml

Per-warehouse metering deserves per-warehouse owners

Snowflake hands you unusually clean cost data: WAREHOUSE_METERING_HISTORY attributes every credit to a named warehouse, hour by hour. That makes the warehouse the natural unit of chargeback, but only if something maps warehouse names to organizational owners. Tags are that mapping. A warehouse with no ownership tags produces credits finance can total but nobody can bill back, and in practice unowned spend is the spend nobody ever optimizes.

Only the fully blank fail

ZopNight’s discoverer populates each warehouse’s tags from the TAG_REFERENCES view, and the rule fires only when all three canonical keys (team, cost_center, and environment) are absent together. One present key is treated as evidence somebody made an attribution decision, and the warehouse passes. That makes this a hygiene floor rather than a completeness audit: the target is the warehouse nobody has ever labeled, not the one with two of three keys. Note this is stricter in the passing direction than ZopNight’s Databricks tag rules, which flag any single missing key.

Pull the tag map yourself

Terminal window
SELECT object_name, tag_name, tag_value
FROM SNOWFLAKE.ACCOUNT_USAGE.TAG_REFERENCES
WHERE domain = 'WAREHOUSE'
AND LOWER(tag_name) IN ('team', 'cost_center', 'environment')
ORDER BY object_name;

Compare the result against SHOW WAREHOUSES. Any warehouse absent from the tag rows is exactly what this rule reports. TAG_REFERENCES lags by up to 2 hours, so tags applied moments ago will not show yet, in the view or in ZopNight’s next discovery pass.

Attaching the keys

Object tagging needs the tag objects to exist once, then one statement per warehouse:

Terminal window
CREATE TAG IF NOT EXISTS governance.tags.team;
ALTER WAREHOUSE analytics_wh SET TAG governance.tags.team = 'data-platform';

Repeat for cost_center and environment. Object tagging is an Enterprise-edition feature. On Standard edition this rule’s remediation path does not exist, and naming conventions become the fallback attribution scheme.

What tagging unlocks downstream

Once the three keys exist, per-team credit reports become a join between WAREHOUSE_METERING_HISTORY and TAG_REFERENCES, budget alerts can be scoped to a cost_center, and ZopNight’s own showback views stop lumping the warehouse into an unattributed bucket. The 5 minutes per warehouse is the entire cost of the fix.

See it fire on your bill.

Connect an account read-only. The first findings land in minutes.

417 rule families across 353 resource types on 22 platforms. Every threshold, metric, and IAM action is documented on these pages before you grant anything.

417 rule families documented
353 resource types covered
read-only default access level
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·