Billing for storage lifecycle policies

When you use storage lifecycle policies, you incur costs for policy execution, data storage, and data operations. This topic explains the cost components associated with storage lifecycle policies and provides guidance on how to monitor each component.

Policy execution costs

Each time Snowflake runs a storage lifecycle policy, you incur serverless compute charges to identify and process rows that meet your defined conditions. Policies run automatically, approximately once every 24-hour period. For billing details, see table 5 in the Snowflake Service Consumption Table.

Monitoring

To view credits consumed by policy execution, use the following metering history views. Filter for the STORAGE_LIFECYCLE_POLICY_EXECUTION service type:

To view policy execution history and metadata, use the following views and function:

Note

Policy execution times can vary from execution to execution, even when processing similar amounts of data. To better understand the cost of policy executions, monitor the credits charged for each execution along with the amount of data expired or archived.

Archive storage costs

When you archive data, you incur charges for moving data to archive storage, storing data in archive storage, and retrieving archived data. If you drop a table with archived data, you might also incur minimum storage duration charges.

Moving data to archive storage

When a policy archives data, you incur a one-time serverless compute charge to move data from regular storage to the cool or cold archive storage tier. For billing details, see table 5 in the Snowflake Service Consumption Table.

Monitoring

To view credits consumed when moving data to archive storage, use the following metering history views. Filter for the STORAGE_LIFECYCLE_POLICY_EXECUTION and ARCHIVE_STORAGE_WRITE service types:

Data storage

After policy execution, you temporarily incur charges for both archive storage and table storage. Snowflake immediately copies data into the specified archive storage tier when the policy runs, but the data remains in table storage for seven or more days (the 7-day Fail-safe period plus your Time Travel retention period set by DATA_RETENTION_TIME_IN_DAYS).

After this period, data in archive storage incurs ongoing storage charges. For billing details, see table 3(e) in the Snowflake Service Consumption Table.

Monitoring

To view the volume of archived data in bytes for a table, database, or for your account, use the following views:

Account Usage views:

Organization Usage views:

Data retrieval

When you query retrieve archived data, you incur the following charges:

  • Retrieval cost: One-time charge for retrieving archived data from the archive storage tier.

  • File processing: Serverless compute charge for processing the retrieved data.

  • Temporary storage (COLD tier only): When you retrieve data from the COLD tier, Snowflake temporarily stores the retrieved data in normal storage. This incurs additional storage charges.

For billing details, see tables 4(f) and 5 in the Snowflake Service Consumption Table.

Note

To estimate retrieval cost, use EXPLAIN with CREATE TABLE … FROM ARCHIVE OF. This shows the number of files that will be retrieved from archive storage. For an example, see Retrieving archived data.

Monitoring

To view credits consumed and cost related to retrieving archived data, use the following views:

To view credits consumed for file processing when retrieving archived data, use the following metering history views. Filter for the ARCHIVE_STORAGE_RETRIEVAL_FILE_PROCESSING service type:

To view temporary storage usage for retrieving data from the COLD storage tier, use the ARCHIVE_STORAGE_RETRIEVAL_TEMP_BYTES column in the ACCOUNT_USAGE.STORAGE_USAGE.

Minimum storage duration charges

Cloud providers impose a minimum storage duration for archive storage tiers. When you drop a table, Snowflake deletes the table data from storage. If the table data is in archive storage and hasn’t been there for the minimum duration set by the cloud provider, Snowflake charges you for the minimum duration.

For example, if you drop a table with data that Snowflake moved to the AWS cold storage tier 15 days ago, you still incur storage cost for the remaining 165 days of the minimum cold storage period (180-day minimum minus 15 days already stored).

For archive storage billing details, see table 3(e) in the Snowflake Service Consumption Table.

The minimum storage duration varies by cloud provider and storage tier:

  • AWS cool tier: 90-day minimum

  • AWS cold tier: 180-day minimum

Monitoring

To view the amount of data subject to minimum storage duration charges for a table, use the following columns in the TABLE_STORAGE_METRICS view:

  • ARCHIVE_STORAGE_COOL_EARLY_DELETION_PENALTY_BYTES

  • ARCHIVE_STORAGE_COLD_EARLY_DELETION_PENALTY_BYTES

These columns are available in:

Language: English