Skip to main content

SNOWFLAKE CSV LOAD

Match a CSV to a Snowflake file format

Snowflake separates file-format settings from the table schema. Before a COPY INTO load, make the CSV's encoding, delimiter, quote, and header behavior agree with the named FILE FORMAT and verify a small sample.

Published:

Updated:

Related tool: Convert encoding & format

The FILE FORMAT must describe the actual bytes

A Snowflake FILE FORMAT describes how fields, records, quotes, and encodings are read. If a producer changes from comma to pipe or from UTF-8 to a legacy encoding, the same table can produce a completely different parse.

  • One field contains the whole row: check the field delimiter first.
  • Japanese or accented values fail: confirm the file encoding and the FILE FORMAT's encoding setting.
  • The header becomes data: align the header-skip option with the actual first line.

Compare the producer, file, and load command

Record the export application's settings and inspect a text preview. Then compare delimiter, quote, escape, encoding, and header assumptions with the FILE FORMAT referenced by COPY INTO. Do not alter the warehouse configuration to hide a malformed export.

  • Use a sample with commas, quotes, an empty value, and a non-ASCII value.
  • Keep a copy of the source file and the exact FILE FORMAT name used for the test.
  • A successful parse still needs a table-schema check for numbers, dates, and nullable fields.

Create a test file without changing business values

LocaCSV prepares a sample or file within the browser limit; it does not claim to validate a multi-gigabyte warehouse load end to end.

  1. Copy the source export and open it in LocaCSV's format conversion workspace.
  2. Choose the encoding and delimiter that produce the expected fields in the preview.
  3. Convert to the format declared by the Snowflake FILE FORMAT and save a separate CSV.
  4. Run a bounded COPY INTO validation and compare parsed rows before loading the full dataset.

Check the load result, not only the preview

  • The output delimiter, quote behavior, and header treatment match the FILE FORMAT.
  • The source and converted row counts reconcile before rejected rows are considered.
  • The target table receives the expected columns and types.
  • The COPY INTO load history and rejected-row details are stored with the file-format version.

Treat schema failures separately from CSV parsing

If the file parses but rows fail, inspect column casts, NULL_IF values, date formats, and table constraints. If the source is too large, test a representative sample and document the boundary rather than implying full browser validation.

Keep Snowflake loads reproducible

Version the source settings, FILE FORMAT, sample output, and load counts together so future exports can be checked before COPY INTO.

Official documentation

Limits and import formats can change. Use the official documentation below as the final check for your account and plan.