Skip to content
LakeBench
ProblemsCommunityPricing
Sign inStart practicing
Back
  1. Home
  2. Interview prep
  3. ETL vs ELT

Batch & Streaming · Extra High-Value

ETL vs ELT

Easystream-32
ETLELTdbtwarehouse

Question

What is the difference between ETL and ELT?

Solution

ETL = Extract → Transform → Load. Clean and reshape *before* the warehouse. Classic when warehouses were expensive/weak.

ELT = Extract → Load → Transform. Land raw (or lightly typed) data first, then transform with SQL/dbt/Spark *inside* the platform.

ETL:  source -> Python/Spark transform -> warehouse (curated only)
ELT:  source -> warehouse/lake raw     -> dbt/SQL models -> marts

Tiny example

Currency conversion on orders:

  • ETL: job joins FX rates, writes only converted amounts
  • ELT: load raw.orders + raw.fx; dbt builds fct_orders with conversion logic (and you can rebuild if FX logic changes)

Why ELT is common now

Cloud warehouses scale; keeping raw enables reprocessing; analytics engineers own SQL transforms.

Interview tip: Spell both acronyms, give one example each, say modern analytics often ELT + dbt while heavy pre-warehouse prep may still be ETL.

PreviousNext