How to find and export your Snowflake data.
Snowflake shows account storage in Snowsight under Admin > Cost management, and per table in the SNOWFLAKE.ACCOUNT_USAGE.TABLE_STORAGE_METRICS view. Both need the ACCOUNTADMIN role or a role granted the USAGE_VIEWER database role. Report active bytes in GB, keeping in mind Snowflake measures storage after compression.
Where Snowflake shows how much you have.
- Use the ACCOUNTADMIN role, or have an administrator run
GRANT DATABASE ROLE SNOWFLAKE.USAGE_VIEWER TO ROLE your_role;To open the Snowsight cost pages without ACCOUNTADMIN, the role also needs the APP_USAGE_VIEWER application role. - In Snowsight, open Admin > Cost management, choose Consumption, and set the usage type to Storage to see storage over time.
- For active table data only, run:
SELECT table_catalog, ROUND(SUM(active_bytes)/POW(1024,3),2) AS active_gb, ROUND(SUM(time_travel_bytes)/POW(1024,3),2) AS time_travel_gb, ROUND(SUM(failsafe_bytes)/POW(1024,3),2) AS failsafe_gb FROM SNOWFLAKE.ACCOUNT_USAGE.TABLE_STORAGE_METRICS WHERE deleted = FALSE GROUP BY table_catalog ORDER BY active_gb DESC; - For a daily per-database view, run:
SELECT usage_date, database_name, ROUND(average_database_bytes/POW(1024,3),2) AS database_gb, ROUND(average_failsafe_bytes/POW(1024,3),2) AS failsafe_gb FROM SNOWFLAKE.ACCOUNT_USAGE.DATABASE_STORAGE_USAGE_HISTORY WHERE deleted IS NULL ORDER BY usage_date DESC, database_gb DESC;database_gb includes data in Time Travel. - To look at a single table, open Catalog > Database Explorer, then select the database and Tables.
Plan and role. Available on every Snowflake edition. ACCOUNT_USAGE views are open only to ACCOUNTADMIN by default; other roles need the USAGE_VIEWER database role or IMPORTED PRIVILEGES on the SNOWFLAKE database.
What to report on the Polyshares intake.
Report Snowflake in GB. The intake also asks how many years the company has used it and how many seats it has.
On the Polyshares intake, report the sum of ACTIVE_BYTES from TABLE_STORAGE_METRICS in GB. That is current table data. Snowflake compresses all table data and uses the compressed size for storage, so the same tables exported to uncompressed CSV will be larger.
Do not add TIME_TRAVEL_BYTES, FAILSAFE_BYTES or RETAINED_FOR_CLONE_BYTES. They are billed storage for changed, deleted or cloned data. Time Travel keeps that data for 1 day by default and up to 90 days on Enterprise Edition, and Fail-safe adds a fixed 7 days after that. TABLE_STORAGE_METRICS can lag by up to 90 minutes.
For years in use, query the earliest business timestamp in your main tables. The ACCOUNT_USAGE views keep only 365 days of history, so they cannot show when you started loading data. For seats, count the customers or users whose activity the tables record, not Snowflake logins.
Export the full history.
- Create a stage for the output. An internal stage works for moderate volumes:
CREATE STAGE export_stage;For large volumes, create an external stage on Amazon S3, Google Cloud Storage or Azure that uses a storage integration. - Unload each table to Parquet:
COPY INTO @export_stage/orders/ FROM mydb.public.orders FILE_FORMAT = (TYPE = PARQUET) HEADER = TRUE MAX_FILE_SIZE = 268435456;Snowflake writes multiple files in parallel. - For CSV instead, use
FILE_FORMAT = (TYPE = CSV) HEADER = TRUE. CSV output is gzip-compressed by default. - Download files from an internal stage with the GET command, for example
GET @export_stage/orders/ file:///data/export/from SnowSQL. If you unloaded to an external stage, the files are already in your bucket.
COPY INTO a location supports CSV, JSON and Parquet. JSON unloads work only from VARIANT columns, so use Parquet or CSV for relational tables. MAX_FILE_SIZE defaults to 16 MB and can be raised to 5 GB, and SINGLE = TRUE writes one file instead of many. Parquet output uses Snappy compression by default.
Unloads need a running virtual warehouse, so they use credits. An unload contains the table as it is when the statement runs. Data in Time Travel can be queried with AT or BEFORE clauses if you need an earlier state, but Fail-safe data cannot be queried, cloned or restored by you.
Unloading straight to Amazon S3, Google Cloud Storage or Azure needs a storage integration or credentials. The ACCOUNT_USAGE storage views are meant for comparison: Snowflake notes that database-level totals will not equal the billed storage for your account.
The intake only needs the size, so you do not have to run an export to fill it in. You also do not need to clean or scrub an export. Polyshares handles anonymization before anything moves.
Why Snowflake data has value for AI training.
Snowflake is often where a company's systems meet: product events, billing, CRM and support data land side by side and get modeled into clean tables. IDs have usually been matched across sources already.
Warehouse tables hold years of history at row level with consistent timestamps. Linked records of what customers did and what happened next are useful for training and evaluating models on real business outcomes.
What stays private.
COPY INTO can unload the result of a SELECT, so identifiers, payment fields or free-text notes can stay inside Snowflake while the rest of a table is exported.
We anonymize identifying details before anything moves. Polyshares does that work, so your team does not have to scrub records first.
Your company keeps ownership of its data. The license is bounded to defined material and a defined use.
Polyshares is the buyer and pays your company directly. There is no fee or commission, and Polyshares reviews the record before it makes any offer.
Common questions about Snowflake data.
Should I report active bytes or my billed storage?
Report active bytes. Billed storage also covers Time Travel, Fail-safe, data retained for clones and staged files, which are history or copies rather than current data.
Is Snowflake storage compressed?
Yes. Snowflake compresses all data stored in tables and uses the compressed size to calculate storage, so an uncompressed export of the same tables will be larger.
I cannot see the ACCOUNT_USAGE views. What role do I need?
Only ACCOUNTADMIN can query them by default. An administrator can grant the SNOWFLAKE database role USAGE_VIEWER, which covers TABLE_STORAGE_METRICS and DATABASE_STORAGE_USAGE_HISTORY.
Does an unload include Time Travel or Fail-safe data?
No. COPY INTO exports the table as it stands when the statement runs. Fail-safe data cannot be queried or exported by customers at all.
Source: Snowflake: TABLE_STORAGE_METRICS view, Snowflake: Understanding storage cost, Snowflake: COPY INTO location, Snowflake: Understanding and using Time Travel. Checked September 2026.
Related
- BigQueryTABLE_STORAGE logical bytes for size, EXPORT DATA or bq extract to Cloud Storage
- DatabricksDESCRIBE DETAIL sizeInBytes per Delta table, export by cloning to your cloud storage
- PostgreSQLDatabase and table sizes from SQL, full export with pg_dump and pg_dumpall
- MySQLSum data_length plus index_length from information_schema, export with mysqldump
- Amazon S3Storage Lens and BucketSizeBytes for size, aws s3 sync or Batch Operations to export
- Amazon RedshiftSVV_TABLE_INFO size in 1 MB blocks, UNLOAD to Amazon S3 as Parquet
- MongoDBdb.stats() dataSize versus storageSize, full export with mongodump
- Amazon DynamoDBItem count and table size per table, export to Amazon S3 with PITR turned on
- All data source guidesEvery system on the Polyshares intake, grouped by category.
Put your numbers on the intake.
List your systems, their sizes and your headcount in one intake. Polyshares reviews the record and prices it. There is no fee or commission to your company.
Check your data