# Retention of unused data in Snowflake table

Canonical: https://www.pointfive.co/efficiency-hub/inefficiencies/retention-of-unused-data-in-snowflake-table

Retention of stale data occurs when old, no longer needed records are preserved within active Snowflake tables.

By: Simar Arora

Updated: 2026-09-28

[Cloud Efficiency Hub](https://www.pointfive.co/efficiency-hub) 

# Retention of Unused Data in Snowflake Table

The short version

Retention of stale data occurs when old, no longer needed records are preserved within active Snowflake tables.

[Simar Arora](https://www.linkedin.com/in/simarpreet-arora/)

Value Engineer - FinOps @ Snowflake

Snowflake service

[Snowflake Tables](https://www.pointfive.co/efficiency-hub/cloud-services/snowflake-tables)

Category

[Storage](https://www.pointfive.co/efficiency-hub/service-category/storage)

Reference

CER-0126

Type

Excessive Data Retention

## Explanation

Why the waste happens and who it affects.

Without lifecycle policies or regular purging, tables accumulate outdated data.

Retaining large volumes of inactive or irrelevant data increases storage costs, and because warehouse compute is billed per second of runtime by warehouse size, scanning unneeded data can lengthen queries and increase credit consumption unnecessarily.

## Billing model

The pricing dimensions that drive this cost.

- Storage is billed monthly at a flat rate per TB of compressed data, which depends on account type (Capacity or On Demand) and region; stale rows in active tables are billed for as long as they are kept

- Deleted or updated rows in permanent tables remain billed through their Time Travel retention period and 7 days of Fail-safe, so purging reduces storage charges only after those windows pass

- Warehouse compute is billed in credits per second while running (with a 60-second minimum each time a warehouse starts or resumes), at a rate set by warehouse size, so scanning unneeded data lengthens queries and consumes more credits

- Rows moved by a storage lifecycle policy to the COOL or COLD archive tiers are billed at lower storage rates, with minimum archival periods of 90 days (COOL) and 180 days (COLD)

## How to detect

4 checks to find it in your estate.

- Review table size growth trends over time to identify tables accumulating data without regular trimming

- Analyze access patterns (for example with the ACCESS\_HISTORY view, which requires Enterprise Edition) to determine whether older records are being queried or accessed by active workloads

- Assess whether current business or regulatory requirements justify the retention period for older data

- Identify opportunities to implement lifecycle policies or manual purging for data beyond the necessary retention window

## How to fix

5 ways to remove the waste.

- Implement data retention policies to regularly archive or delete records older than the required retention period (e.g., retain only 90 days of data if historical lookbacks are not needed beyond that)

- Use Snowflake storage lifecycle policies to automatically expire rows past the retention window or archive them to the COOL or COLD storage tiers

- Collaborate with business, analytics, and compliance teams to validate acceptable data retention thresholds

- Purge old records to reduce table storage size and improve query performance by minimizing unnecessary data scans

- Monitor table growth rates and periodically reassess lifecycle settings to ensure alignment with business needs

## Documentation

Vendor references for pricing and configuration.

- [Unused Tables  select.dev](https://select.dev/posts/snowflake-unused-tables)

- [Storage lifecycle policies  docs.snowflake.com](https://docs.snowflake.com/en/user-guide/storage-management/storage-lifecycle-policies)

- [Access History  docs.snowflake.com](https://docs.snowflake.com/en/sql-reference/account-usage/access_history)

- [Understanding compute cost  docs.snowflake.com](https://docs.snowflake.com/en/user-guide/cost-understanding-compute)

- [Understanding storage cost  docs.snowflake.com](https://docs.snowflake.com/en/user-guide/cost-understanding-data-storage)

## Related inefficiencies

[Browse the library](https://www.pointfive.co/efficiency-hub)

- Snowflake Tables  CER-0516

### [Large Snowflake Tables That Are Loaded but Never Read](https://www.pointfive.co/efficiency-hub/inefficiencies/large-snowflake-tables-that-are-loaded-but-never-read)

Some Snowflake tables keep receiving data from COPY jobs, Snowpipe, tasks, dbt models or external ELT tools long after anything stopped reading them. The dashboard, model or export that consumed the table was retired or repointed, but the...

Storage

- Snowflake Snapshots  CER-0111

### [Excessive Time Travel and Fail-safe Storage from High-Churn Snowflake Tables](https://www.pointfive.co/efficiency-hub/inefficiencies/excessive-snapshot-storage-from-high-churn-snowflake-tables)

Snowflake automatically maintains previous versions of data when tables are modified or deleted. For tables with high churn - meaning frequent INSERT, UPDATE, DELETE, or MERGE operations - this can cause a significant buildup of historical...

Storage

- Azure Backup  CER-0278

### [Azure Backup Data Retained Beyond Intended Retention Period](https://www.pointfive.co/efficiency-hub/inefficiencies/azure-backup-data-retained-beyond-intended-retention-period)

Backup data persists longer than intended due to misaligned or outdated retention policies. It often arises when retention requirements change over time, but older recovery points are not evaluated or cleaned up accordingly. In some cases,...

Storage

---
Source: the public page above. Product screenshots and illustrative interfaces are examples, not live customer data.

