Browse
ETL vs. ELT
Transform-before-load versus load-then-transform, and why modern warehouses shifted the order.
What it is
Both patterns move data from source systems into a destination for analysis — the difference is where transformation happens relative to loading.
Key points
- ETL (Extract, Transform, Load): data is transformed in a separate processing step before landing in the destination — necessary when the destination has limited compute or strict schema requirements.
- ELT (Extract, Load, Transform): raw data lands first, transformation happens inside the destination using its own compute — the dominant pattern now that cloud warehouses (Snowflake, BigQuery) have cheap, scalable compute.
- ELT keeps a copy of raw, untransformed data available for reprocessing if transformation logic changes — a real advantage over ETL's "raw data is gone once transformed" model.
- Tool-wise, ELT commonly pairs an ingestion tool (Fivetran, Airbyte) with an in-warehouse transformation layer (dbt).
