A Script to Find and Delete Unused Snowflake Tables without Enterprise Access History
Snowflake standard users: run this script to see if you're burning money on unused storage..
Read
We’ve seen Snowflake customers cut their total bill in half by moving storage into Iceberg. This might be hard to believe: your Snowflake bill is probably 90%+ compute, and the fraction you pay for storage isn’t even expensive - it’s basically the price you’d pay your cloud provider directly.
So then, how do those massive savings happen? Well, the real opportunity here isn’t cutting down storage costs: it’s saving money on compute by moving your ELT jobs out of Snowflake.
ETL jobs - extract, transform, load - can be a good fit for data warehousing: the transform step is an analytical batch job that can spike compute requirements and therefore benefit from scaling cloud compute.
Ironically, as data warehouses shift best practice away from ETL and towards ELT - extract, load, transform - the load step just turns into a regular batch write. That means you’re paying a big premium for elastic compute just to shuffle bytes into storage.
Pushing bytes over the network is about as simple as it gets when it comes to data pipelines. Batch writes are easy to set up, scale well, and are simple to manage. With a little bit of investment in cluster administration, you can replace your Snowflake load jobs with something like Spark or dbt - at a fraction of the cost.
There are a lot of optimizations to be had here: depending on your cost structure, operational needs, and the level of bandwidth your team has for engineering complexity, you can save 90% or more on load costs when compared to Snowflake. As just one example, a fault-tolerant job with checkpoints can run on spot instances, which can be 70-90% cheaper than on-demand instances - and on-demand instances are already much cheaper than Snowflake clusters.
Iceberg, of course, isn’t just about cost savings. Moving your data to Iceberg will let you access it directly, so you can start experimenting with tools and solutions outside of Snowflake. If you’re already using multiple data warehouses, this may even decrease overall operational complexity: you can keep your data in one place instead of having multiple copies.
Here’s an exercise: break down your Snowflake compute bill by job, and figure how much of your bill is just going towards bulk writes. If you’re spending $100k here or more, think through what it would take to move that workload off Snowflake - it might be easier than you think.
Apache Iceberg is an open-source table format designed for managing large analytic datasets on cloud storage. In the context of Snowflake, Iceberg allows organizations to decouple storage from Snowflake compute, enabling direct data access through other processing engines like Spark or dbt. This shift can cut costs dramatically by moving storage and ELT jobs off Snowflake, reducing expensive compute charges and increasing system flexibility.
ELT (Extract, Load, Transform) is a data pipeline pattern where raw data is first extracted and loaded into storage, then transformed within the data warehouse. In Snowflake, the Load step uses expensive compute resources for basic data writes, driving up costs unnecessarily. Moving ELT jobs to external engines like Spark allows teams to perform batch writes at significantly lower costs while maintaining flexibility.
Snowflake charges primarily for compute usage, not storage. When ELT (Extract, Load, Transform) pipelines run inside Snowflake, even simple batch writes trigger high compute costs. Snowflake’s elastic compute is optimized for analytics, not for routine data loading, making bulk writes costly compared to running the same processes on external systems using cheaper infrastructure like spot instances or open-source tools.
Spot Instances are discounted cloud compute instances that use spare capacity, often costing 70–90% less than on-demand instances. When ELT workloads are moved off Snowflake to run on spot instances, companies can dramatically lower batch write costs. Unlike Snowflake’s premium compute, spot instances are ideal for fault-tolerant, checkpoint-enabled jobs like data loading, offering massive cost savings without sacrificing scalability.
Subscribe to our newsletter. Get exclusive insights delivered straight to your inbox.