MetricSign
EN|NLRequest Access
Medium severitydbt

Power BI Refresh Error:
Seed Load Error

What does this error mean?

The `dbt seed` command failed to load one or more CSV files into the warehouse. Seeds are small reference datasets stored as CSV files in the seeds/ directory. Load failures prevent downstream models that ref() the seed from running.

Common causes

  • 1The CSV file contains values that exceed the inferred column data type (e.g., a numeric column with text values)
  • 2The seed file was deleted or renamed but a model still ref()s the old name
  • 3The target schema or warehouse does not grant the service account permission to create tables
  • 4A column in the CSV has a name that is a reserved keyword in the target warehouse
  • 5The CSV file is malformed: mismatched quotes, inconsistent delimiters, or BOM characters

How to fix it

  1. 1Run `dbt seed --select <seed_name> --show` to preview the first rows and catch type inference issues.
  2. 2Define explicit column types in dbt_project.yml under `seeds:` → `column_types:` to prevent dbt from inferring wrong types.
  3. 3Open the CSV in a text editor (not Excel) and check for invisible characters, BOM markers, or inconsistent line endings.
  4. 4Rename any column that shares a name with a SQL reserved keyword in your target warehouse.
  5. 5Verify the service account has CREATE TABLE privilege in the seeds target schema.

Frequently asked questions

Should I use dbt seeds for large reference tables?

No — seeds are for small, static lookup tables (under a few thousand rows). For larger or frequently-updated reference data, load it via your pipeline and expose it as a dbt source.

My seed CSV opened fine in Excel but fails to load — what am I missing?

Excel silently alters CSV files: adds BOM characters, drops leading zeros, and changes line endings. Inspect seeds in a plain text editor. For ZIP codes or IDs with leading zeros, define `column_types` explicitly in dbt_project.yml.

Can I update a seed without re-loading all rows?

No — `dbt seed` always fully replaces the seed table (CREATE OR REPLACE). There is no incremental mode. For frequently-changing reference data, load it as a regular source table.

Official documentation: https://docs.getdbt.com/docs/build/seeds

Other dbt errors