Data & architecture

12 open-source data pipeline tools for modern ETL (2026)

A pipeline is the most inconspicuous part of any data system, yet it decides if the rest of the system works properly. When the pipeline is well-constructed, your models, dashboards, and AI features run on dependable data. If it isn't, you will waste time probing data discrepancies rather than creating new features.

Open source data pipeline tools perform one of four tasks-ingestion, transformation, orchestration, or streaming-and most stacks mix multiple tools rather than a single product covering all. Tools such as Airbyte, dbt Core, Airflow, and Kafka each focus on a specific layer, making the appropriate mix dependent on your data volumes, workloads, and what your team can realistically manage.

At Shipshape Data, we construct data and AI systems. We devote much of our time to using these tools and correcting issues that arise when organisations choose them for the wrong reasons. A tool might work well in a brief demo yet break down when faced with high data volumes, unstable source APIs, or a team lacking the staff to maintain it. This list does not constitute a ranking. Ranking these twelve tools from first to last would be inaccurate because they serve different functions. The right selection depends on your particular technology stack rather than on a generic list.

We have organised these twelve tools according to their function: orchestration, ingestion, transformation, and streaming. For each tool, we give a description of what it is, where it sits in a data pipeline, which users it best serves, and a possible drawback that marketing materials often omit. Read the two or three tools that match your situation and ignore the rest.

The four jobs a pipeline actually does

Grasp these distinctions before looking at the list to avoid buying the wrong type of software. A pipeline has four layers. Most tools available focus on a single layer instead of working well across all four.

  • Ingestion: extracting raw data from sources (APIs, databases, SaaS apps) and loading it into your warehouse or lake. Airbyte, Meltano, Singer, Debezium.
  • Transformation: turning raw data into a usable format after loading; dbt Core.
  • Orchestration: controlling which tasks run, their execution order, and the reaction to step failures. Airflow, Dagster, Prefect, Luigi, Kedro.
  • Streaming: moving data continuously rather than in scheduled batches. Kafka and NiFi serve for flow-based routing.

The majority of the systems we build rely on a mix of tools from multiple categories instead of a single product that asserts it can do everything. When evaluating a tool, you ought to check whether it meets your particular needs rather than concentrating on its look.

Orchestration: what runs, in what order

Orchestrators don't move data. They conduct: they decide the sequence, handle retries when something falls over at 3am, and give you somewhere to look when it does. More than a handful of dependent steps and you want one.

1. Apache Airflow

Airflow is a familiar tool since it started at Airbnb before moving to the Apache Software Foundation. It now serves as the standard orchestrator for numerous production environments. You employ Python to define pipelines as code by constructing Directed Acyclic Graphs (DAGs). These graphs describe the relationships among tasks. Airflow subsequently handles scheduling, retries, and dependency resolution for those tasks.

Its strength lies in reach. Its provider ecosystem includes hundreds of integrations, ranging from AWS and Google Cloud to Snowflake and dbt, allowing it to connect to nearly anything. The UI is mature and provides the information you need: pipeline health, task durations, and points of failure.

Airflow employs a code-first design that helps engineering teams but poses challenges for other users. You need strong Python skills to use the platform effectively.

The demos omit the running cost. In production, Airflow involves a scheduler, workers, a metadata database, and often a message broker as well. This is acceptable for a team with infrastructure staff; for a smaller team lacking dedicated platform engineering, it turns into an additional task. We usually guide those teams to Cloud Composer on Google Cloud or Amazon MWAA, both of which host Airflow, reducing the burden you carry.

Best for complex, dependency-heavy batch workflows: multi-source ETL, ML training and evaluation runs in sequence, dbt runs triggered after upstream loads complete. Watch for: the operational overhead is genuine, so budget for the people to run it, beyond the licence. Free under Apache 2.0.

2. Dagster

Dagster is newer than Airflow and is favored by teams that prioritise code quality. It adopts a different conceptual approach. You concentrate on assets like tables, files, and models instead of individual tasks. Dagster records the relationships among these outputs rather than merely the step sequence. This design offers built-in data lineage as a standard feature.

The asset-centric model makes it easier to handle data freshness and dependencies in complex pipelines. The platform provides built-in testing, type-checking, and partitioned runs. These capabilities target teams that enforce the same rigorous standards on pipeline code as on application code.

Teams already employing software engineering practices will find Dagster familiar and intuitive. Teams that do not follow those disciplines will find the tool hard to learn.

Understanding its core concepts demands an initial time investment. The community and connector ecosystem are growing, yet they remain smaller than those for Airflow. A single pip command installs the tool and gives immediate access to the Dagit UI. In production environments, you may move to Kubernetes or Docker. The software is free under the Apache 2.0 licence, and a managed cloud version exists for users who prefer a hosted control plane.

3. Prefect

Prefect positions itself as a more accessible alternative to Airflow. The platform delivers on that claim by letting you apply decorators to standard Python functions. Those functions become observable tasks without needing much extra code. Transferring existing scripts into a managed pipeline is quicker with this tool than with most other orchestration platforms.

The developer experience is of high quality. You can easily create dynamic workflows that change at runtime. Built-in observability features show task states, logs, and failures without needing extra tools. An engineer new to orchestration can finish a working project in one afternoon.

The hybrid model retains data processing in your own infrastructure while Prefect Cloud handles coordination. This helps satisfy data residency requirements.

Advanced customisation and secure production environments demand strong Python and infrastructure skills. Certain complex scheduling and concurrency methods present a steep learning curve. The tool suits teams handling batch processing, API ingestion, and machine learning workflows that need orchestration without Airflow's operational complexity. Prefect Core is free under the Apache 2.0 licence. Prefect Cloud offers a managed control plane and includes a free tier.

4. Luigi

Luigi is a well-established tool. Spotify created it to handle long batch jobs with complex dependency chains. Newer orchestrators attract more attention today, yet many companies continue to use Luigi in production because it is simple and needs few resources.

Simplicity is the primary advantage. You avoid managing a distributed architecture, and the dependency model remains easy to understand. A central daemon monitors the state of each task. The tool offers basic orchestration for teams that prefer not to manage the infrastructure needed by Airflow or Dagster. It meets the required needs without adding unnecessary complexity.

The tool is considered outdated. It does not include an internal scheduler, offers limited observability features, and cannot support dynamic task generation. The developer community is inactive now. A small footprint benefits pipelines made of scheduled batch jobs with static dependencies and no branching. However, more complex requirements go beyond what the software can handle. It suits basic batch ETL and teams that have an existing Luigi codebase that does not need migration. The software is free under the Apache 2.0 licence and lacks a commercial version.

5. Kedro

Kedro is distinct from other tools. It serves as a framework for structuring machine learning projects so they operate in production environments. QuantumBlack created the tool before it became a Linux Foundation project. Its main purpose is to turn machine learning code from notebooks and scripts into maintainable Python projects.

The tool offers a consistent project layout and separates configuration from code. It makes machine learning pipelines testable and reproducible, something that is hard to achieve with notebooks. The main benefit appears during handoff when a data science team gives pipeline code to data engineering without needing a full rewrite. We have seen that teams lacking this structure often spend weeks on rework during the handoff.

Kedro has a defined scope. It provides a structure for machine learning pipelines but does not act as a scheduler or an ingestion platform. You should execute Kedro pipelines inside tools such as Airflow or Prefect for scheduling. You can install the software with pip and create a project via the command line interface. It is free under the Apache 2.0 licence and has no paid commercial version.

Ingestion: getting raw data in

Data ingestion is a challenging and often overlooked stage of the process. Each data source has its own limitations, rate limits, and failure patterns. You should use these tools to avoid writing and maintaining custom extraction scripts for many different APIs.

6. Airbyte

Airbyte handles the extraction and loading stages of the ELT process. It does not perform data transformation. The platform provides a library of pre-built connectors that move data from APIs, databases, and SaaS tools into a data warehouse or data lake. You position Airbyte upstream of a transformation tool such as dbt Core. This ensures raw data arrives before your logic executes. An orchestrator such as Airflow or Dagster typically manages the entire workflow.

The connector catalogue is among the largest available, covering sources from Postgres and Salesforce to custom REST APIs you define yourself, and the connector development kit enables your team to build and maintain bespoke connectors without forking the entire project.

Running Airbyte in a production environment needs substantial infrastructure. The quality of connectors varies across the catalogue. You should test the connectors for your particular data sources before deciding to use them.

This software is suitable for consolidating data from many different sources into a single warehouse. It also fits analytics platforms or AI data foundations that need reliable and repeatable data loads. You can deploy the tool locally with Docker Compose or in a production environment with Kubernetes. Airbyte Cloud is an alternative when you do not want to manage your own hosting. The core version is free under the MIT licence, and the Cloud version uses a usage-based pricing model.

7. Meltano

Meltano started as a GitLab project. It is a command-line interface for ELT that uses the Singer specification. The tool adds project management, version control, and environment configuration onto the Singer standard. This lets users manage data integration as a structured and reproducible project.

It manages the extraction and loading process using Singer-compatible connectors known as taps and targets. It then passes the transformation tasks to dbt Core. This approach ensures that the whole pipeline configuration is stored in a Git repository. This gives a level of reproducibility and auditability that is hard to achieve with custom ingestion scripts. Adding a new data source often needs only a single line of code.

The main limitation is that connector quality relies on the Singer ecosystem, which is inconsistent. Some taps receive regular updates, while others do not keep pace with changes to the APIs they track. Meltano is suitable for analytics engineering teams that need a Git-native approach to ELT. It fits well for:

  • Version-controlled pipelines that pull data from SaaS applications into a central warehouse.
  • Run dbt transformations after data loads within a single coordinated project

You can install the software with pip and initialise a project quickly. Airflow or Dagster can handle the scheduling. The tool is free under the MIT licence and has no commercial tier.

8. Singer

Singer is a specification rather than a platform. Created by Stitch Data, it defines the communication between extraction scripts, called taps, and loading scripts, called targets. The system uses JSON over Unix pipes. This allows any compliant tap to work with any compliant target. Tools such as Meltano are built using this specification.

The primary benefit is reuse. Any tap is compatible with any target. The community has provided hundreds of open-source connectors because of this compatibility. Singer taps can also run independently if you only require a simple extraction script.

This limit exists because Singer is a specification rather than a system. It does not include features for scheduling, monitoring, or error handling. You must build those functions yourself.

This tool is suitable for lightweight, scriptable data extraction when you prefer not to use a larger platform. It is also useful for teams creating custom connectors to use across different frameworks. You install taps and targets as Python packages and connect them using pipes. Most orchestrators that support Singer manage this connection in production environments. The software is free under the Apache 2.0 licence.

9. Debezium

Debezium does change data capture. It watches your operational databases and streams every row-level change out as an event, built on top of Apache Kafka, without touching your application code. That makes it a proper fit when you need to react to changes as they happen rather than polling a table on a timer.

This tool functions between your operational databases and downstream systems. It reads transaction logs, such as the PostgreSQL WAL or the MySQL binlog, and sends change events to Kafka topics. Many teams use it with Kafka Connect and Kafka Streams to create a complete change data capture pipeline. This method provides low-latency and accurate data capture with minimal impact on the source database. Reading the log requires fewer resources than performing repeated queries on the tables.

This method is a reliable way to synchronise a warehouse or AI system with operational data. It avoids the need to run scheduled full-table extracts, which prevents excessive load on production systems.

The obvious cost is that it needs Kafka underneath, a lot of infrastructure to stand up if you're not already running a cluster. It suits continuous sync between operational databases and analytics or AI systems, and feeding live data into machine learning pipelines that need current inputs. You deploy it as Kafka Connect connectors, one per database type (PostgreSQL, MySQL, MongoDB, SQL Server), each with its own log config to sort first. Free under Apache 2.0.

Transformation: shaping data once it lands

10. dbt Core

dbt Core is the sole tool in this list that concentrates solely on data transformation. That particular focus helped it achieve broad adoption. The tool lets analytics and engineering teams reshape raw data inside a warehouse by authoring standard SQL SELECT statements, and it does not move data. Rather, it defines, tests, and documents transformation logic as code under version control. This method brings the development discipline normally applied to application software to data models.

It functions at the transformation stage once raw data has been loaded. It integrates with ingestion tools like Airbyte or Meltano to finish the transformation phase in the ELT workflow. The majority of teams employ an orchestrator to start dbt runs instead of launching them manually. The platform supplies version control, automated testing, and documentation. These capabilities make certain that each model and its intent are explicitly defined and validated for every user.

It turned into the standard in analytics engineering since it enables teams to handle large and complex SQL codebases as they expand.

The tool is confined to the transformation phase of the data workflow. Separate tools are required for ingestion and orchestration to build a complete pipeline. It targets analytics engineering teams that construct transformation layers on platforms such as BigQuery, Snowflake, or Redshift. It becomes valuable when modelling, testing, and documentation needs grow together with data volume. You can install the software via pip together with the appropriate adapter for your data warehouse and execute it as a scheduled job. The core edition is free under the Apache 2.0 licence. The dbt Cloud offering supplies a hosted development environment, a scheduler, and monitoring capabilities through paid plans.

Streaming: moving data continuously

Batch processing fits most tasks. Nevertheless, certain problems need data to be processed as it streams rather than in hourly batches. Such scenarios include fraud detection, live personalisation, and keeping a warehouse and production system synchronised in near real time. The last two alternatives meet these particular requirements.

11. Apache Kafka

Kafka serves as a core element of most real-time architectures. LinkedIn created the technology before Apache took over its management. It manages high-throughput, fault-tolerant data stream movement at large scale. Where batch tools run on a fixed schedule, Kafka runs continuously.

It acts as a permanent, ordered event log. Producers write data to the log while consumers read from it. The system isolates your data sources from processing and storage. Due to this isolation, a change in an upstream system does not trigger immediate failures in downstream systems. Teams frequently pair it with Debezium for change data capture or Apache Flink for stream processing. Its main benefit is its high capacity. It processes large event volumes with low latency and employs a replication model that remains operational if nodes fail.

Kafka demands substantial resources to run. A production cluster calls for experienced personnel to configure brokers, monitor consumer lag, and handle partition rebalancing to maintain stability.

This system suits architectures that need continuous, high-volume data movement rather than batch loads.

  • Real-time event streaming and activity tracking at scale
  • Pipelines for change data capture that transfer data from operational databases into warehouses.
  • Getting data into machine learning systems as it becomes available is important when up-to-date information is required.

Run it locally with Docker Compose for development, and in production Kubernetes with the Strimzi operator manages the cluster far more cleanly than a manual setup. It is free under Apache 2.0. Confluent provides a managed cloud version with a free tier for those who prefer not to run the cluster themselves.

12. Apache NiFi

NiFi is a visual tool when compared with other options. The NSA developed it, and Apache later released it as open-source software. Users construct data flows by drawing them in a browser rather than writing code. The system controls the movement of data between sources and destinations in near-real-time. It gathers data from APIs, databases, file systems, or streams and passes it through processors that filter and transform the information. It does not sequence tasks as Airflow or Dagster do. Instead, it handles a constant flow of records between connected components.

The visual flow-based interface is accessible to operators and engineers who prefer not to write code. The system handles back-pressure, provenance, and guaranteed delivery internally. These features are useful when lost or duplicated records cause problems for downstream systems.

The built-in provenance provides a full audit trail that shows the source and history of each record. This feature is hard to replicate in code-first tools that lack additional instrumentation.

The main expenses are system weight and maintenance. NiFi needs dedicated infrastructure. The visual interface gets harder to manage as data flows grow larger, making standard version control and testing more complex for teams used to code-based workflows. This tool works best for real-time ingestion, IoT data collection, and settings that require strict compliance for auditability and data provenance. You may run it with the official Docker image or on-premises. Production clusters need ZooKeeper to coordinate state. The software is available free under the Apache 2.0 licence.

Picking the right stack

No single tool handles every layer of the process. Each tool is built to perform a single specific function. You need to choose a combination that fits your architecture, your team's technical skills, and your data volume. Many analytics teams start with Airbyte for ingestion, dbt Core for transformation, and Airflow for orchestration. However, your specific requirements should drive your choice more than any general recommendation.

Clearly list your requirements before committing. Identify the sources you need to connect and decide whether your workloads are batch or streaming. You should also assess how much infrastructure your team can operate. We have observed many failed projects and concluded that a complex system your team cannot maintain is less effective than a simple system that works reliably.

If you want a second opinion before you build, or you have inherited a pipeline that keeps breaking and you're not sure why, that is the work we do. Talk to us and start with a clear picture of your foundation, not a vendor demo.

Need to choose between these tools for a real build? Our data consultancy works with the modern stack every day and will tell you plainly which fits your estate, including where open source ceases to be the cheap option.

If you are weighing these engines against commercial services, our guide to managed and open-source pipeline tools compared by job covers both sides.

Frequently asked questions

What are the best open source data pipeline tools?

The most effective open source data pipeline tools differ depending on the specific task. Airbyte and Meltano are suitable for ingestion, while dbt Core is used for transformation. Orchestration is typically handled by Airflow, Dagster, or Prefect, and Kafka is used for streaming data. Many organisations start with a standard stack that combines Airbyte for ingestion, dbt Core for transformation, and Airflow for orchestration. Your final selection should be based on your data volumes and your team's technical skills.

What are the four jobs a data pipeline actually does?

A data pipeline has four layers. Ingestion involves extracting raw data from sources using tools such as Airbyte or Meltano. Transformation is the process of shaping that data with a tool like dbt Core. Orchestration determines the schedule and order of operations using Airflow, Dagster, or Prefect. Streaming refers to the continuous movement of data through Kafka. Most tools in this industry specialise in one of these layers rather than providing a solution for all four.

How do orchestration tools decide what runs in a data pipeline?

Orchestrators such as Airflow, Dagster, and Prefect do not perform data transfers. These tools manage the order of operations, automate retries after failures, and provide a central location for monitoring. This functionality becomes necessary once a pipeline contains several interdependent steps.

How should I pick the right open source data pipeline stack?

There is no single tool that handles all layers of the process. Select a mix that fits your architecture, your team's abilities, and your data volumes rather than picking the tool that offers the most features. Identify your sources, define your batch or streaming needs, and evaluate how much infrastructure your team can support before committing to a particular option.

Start at your core.

Tell us where your data is today and what you want AI to do. We'll come back with a straight answer on what your foundation needs and where the quickest real win is.

Talk to us