ETL means Extract → Transform → Load. You clean and reshape data *before* it lands in the warehouse.
ELT means Extract → Load → Transform. You load raw-ish data first, then transform inside the warehouse with SQL/dbt/Spark SQL.
ETL: source -> transform service -> warehouse (curated only) ELT: source -> warehouse raw -> SQL/dbt transforms -> marts
Tiny example
Orders CSV arrives.
- ETL: a Python job joins currency rates, drops bad rows, then loads
fct_orders. - ELT: Fivetran loads
raw.orders; dbt buildsstg_ordersandfct_ordersin Snowflake.
Why ELT caught on
Cloud warehouses scale compute, so heavy transforms are cheaper and simpler in SQL next to the data. You also keep raw history for reprocessing.
Interview tip: Define both acronyms, give one example each, then say modern analytics stacks are often ELT with dbt, while heavy ML feature prep or constrained warehouses may still use ETL.