Data & analytics · reviewed in July 2026
ETL
ETL (Extract, Transform, Load) is the process of moving data from its sources into an analytical destination, cleaning and reshaping it along the way. It's the backbone of most data pipelines: raw data is extracted first, then transformed (cleaned, joined, aggregated), and finally loaded into a warehouse where it can be analyzed.
df = pd.read_csv("sales.csv") # Extract
df["date"] = pd.to_datetime(df["date"]) # Transform
df.to_sql("sales", con=engine, if_exists="append") # LoadFrequently asked questions
How is ETL different from ELT?
In ETL, data is transformed before it reaches the final destination. In ELT, raw data is loaded first and transformation happens afterward, inside the data warehouse itself, taking advantage of its compute power — an increasingly common pattern with cloud warehouses.
What tools are used to build an ETL pipeline?
It depends on scale: simple pipelines can be plain Python and pandas scripts; production pipelines typically use orchestrators like Airflow or Dagster, which schedule and monitor every step.
Does an ETL job run just once?
No. Most ETL pipelines run on a recurring schedule (nightly, for example) or incrementally, processing only the data that's new since the last run.