~/tools/kestra
Kestra
tool

Kestra

Kestra is an open source workflow orchestration platform you can self-host — a managed-Airflow alternative that runs data, AI, and infrastructure pipelines from declarative YAML, with 1,900+ plugins, scheduled and event-driven triggers, and a UI to watch every execution.

What is Kestra?

Kestra is an open source workflow orchestration platform that runs data, AI, and infrastructure pipelines defined as declarative YAML. You describe each workflow as a set of tasks — a trigger, the steps, and the logic between them — and Kestra schedules, runs, retries, and shows every execution in a web UI.

What is Kestra best for?

Data and platform teams that want one engine to orchestrate everything — ingestion, dbt, Spark, Terraform, Ansible, ML retraining — without hand-writing pipelines in imperative Python. Its YAML-first, language-agnostic model suits teams who prefer version-controlled config and want engineers and analysts to read the same workflow. It’s built for event-driven and high-throughput workloads, not just nightly batch.

What can Kestra do?

  • Define workflows as declarative YAML, version-controlled in Git and editable in the UI or built-in code editor
  • Run tasks in Python, Bash, Node.js, Go, R, or any Docker container — the engine is language-agnostic
  • Connect 1,900+ plugins for cloud storage, databases, dbt, Spark, APIs, and messaging
  • Trigger workflows on cron schedules, webhooks, events, and message queues from a single engine
  • Handle production concerns: retries, timeouts, error branches, subflows, and dynamic tasks
  • Watch and debug every run with live logs, a Gantt timeline, and topology graphs

Where does Kestra fall short?

  • Core governance — RBAC, SSO/OIDC, LDAP/SCIM, audit logs, multi-tenancy, and a secrets manager — is Enterprise-only. The free edition ships no built-in access control, so multi-team production use often pushes you toward the paid tiers.
  • It’s YAML-first, so very dynamic or heavily programmatic pipelines can feel more constrained than the imperative-Python model of Airflow, Prefect, or Dagster.
  • The community and plugin ecosystem, though growing fast, are younger than Airflow’s, so you’ll find fewer third-party examples and community answers when you get stuck.
  • It’s a Java/JVM application, so expect a heavier memory footprint than lighter Python-based schedulers.

Is Kestra free?

Yes — Kestra’s open source edition is Apache-2.0 licensed and free to self-host, with unlimited flows and executions. Kestra Cloud is a managed, pay-as-you-go service, and the Enterprise Edition adds governance (RBAC, SSO, multi-tenancy, audit logs, worker groups) under custom annual pricing. The orchestration engine itself is genuinely free; you pay only for hosting convenience or enterprise controls.

What does Kestra replace?

Kestra is a self-hosted alternative to managed orchestration platforms like Astronomer (managed Apache Airflow), Prefect Cloud, and Dagster+. It does the same schedule-and-run-your-pipelines job, but you run it on your own infrastructure with no per-seat or usage billing on the core engine.

FAQ

Is Kestra open source? Yes. The core is licensed under Apache 2.0, a permissive OSI-approved license — free to self-host, modify, and run in production. Some governance features (RBAC, SSO, audit logs) live in the paid Enterprise Edition.

Can I self-host Kestra for free? Yes. The open source edition self-hosts on Docker or Kubernetes with unlimited flows and executions at no cost — you pay only for the server it runs on.

Is Kestra a good Astronomer or Airflow alternative? For teams that prefer declarative YAML over Python DAGs and want native event-driven triggers, yes. If you have deep investment in Airflow’s operator ecosystem or need its mature community, weigh that tradeoff before switching.

What do I need to run Kestra? A server with Docker. Kestra runs standalone for a quick trial; for production it uses a PostgreSQL database and can scale out with a queue-backed architecture.