Table
Does ZopNight manage Table?
Snowflake tables bill storage on 3 layers: active bytes, Time Travel history of 0 to 90 days, and Fail-safe, a fixed 7-day recovery window that cannot be shortened or disabled. High-churn tables can hold Time Travel and Fail-safe copies several times their active size, so retention settings matter more than row counts.
Rules that fire on Table
A Snowflake table bills storage three times over: once for the active bytes you can query, again for Time Travel history, and a third time for Fail-safe. Two of those layers are invisible when you look at the table itself, which is how a modest table quietly carries a storage footprint several multiples of its apparent size.
Fail-safe is 7 days and not negotiable
Time Travel retention is configurable, from 0 up to 90 days depending on edition. Fail-safe is not: every permanent table gets a fixed 7-day window after Time Travel expires, it cannot be shortened or switched off, and it bills at the normal storage rate. The only exit is a transient table, which drops the Fail-safe layer entirely in exchange for weaker recovery guarantees.
Churn is the multiplier
Both hidden layers retain superseded data. A table rewritten daily keeps every superseded copy through the Time Travel window and then through Fail-safe, so high-churn ETL targets routinely hold more dead bytes than live ones. Row count is a poor predictor of what a table costs; rewrite frequency is a good one.
Why discovery reads ACCOUNT_USAGE, not SHOW
ZopNight inventories tables from SNOWFLAKE.ACCOUNT_USAGE.TABLES rather than SHOW TABLES IN ACCOUNT, because SHOW only returns tables in databases the active role has USAGE on, and an ungranted customer table would silently vanish from inventory. The query keeps undeleted base tables only, captures row count, bytes, transience, and retention_time, and parents each table to its database. The view trails reality by about 45 minutes to 3 hours, matching the discovery cadence.
What gets priced and flagged
Storage is priced daily from active bytes, while Time Travel and Fail-safe bytes, access counts, and auto-clustering credits are tracked from TABLE_STORAGE_METRICS and related views. Long retention on a high-churn table is the classic finding, and point-lookup query patterns inform clustering recommendations.
Expose the hidden layers
SELECT table_catalog, table_schema, table_name, active_bytes, time_travel_bytes, failsafe_bytesFROM SNOWFLAKE.ACCOUNT_USAGE.TABLE_STORAGE_METRICSORDER BY failsafe_bytes DESCLIMIT 20;Any table where failsafe_bytes rivals active_bytes is churning hard. Shorten its retention, make it transient, or change how it is loaded.