An introduction to the Airflow UI

The Apache Airflow user interface (UI) is the web-based hub for monitoring, managing, and troubleshooting your data pipelines served by the API server. With a significant redesign in Airflow 3 focused on improving the developer experience, the UI is now React based and comes with a more intuitive plugin interface to add custom functionality.

The UI not only provides deep insights into your dags and dag runs but also allows you to manage core Airflow elements like variables, connections, and pools. You can interact directly with your pipelines, for example to run your dags, backfill them, clear task instances, or generate asset events. The UI is also where you can view previous versions of your dags.

This guide provides an overview of the most useful features and visualizations in the Airflow UI. To follow along with the examples, you can get a local Airflow environment running in minutes using the Astro CLI.

This guide is based on the Airflow 3.1 UI. If you are on a different version, some elements may appear different. We recommend upgrading your Airflow environment frequently to take advantage of the latest features and improvements.

Assumed knowledge

To get the most out of this guide, you should have an understanding of:

Importance

While you can write, schedule, and run dags without ever touching the Airflow UI, it is an indispensable tool for dag development, monitoring, and operations. The UI serves as the primary window into your Airflow environment, providing the visibility and control necessary to manage complex data workflows effectively.

Screenshot of the Airflow UI Home view in light and dark mode.

Switch between light and dark mode under User → Appearance.

The Airflow UI is the core feature for the following scenarios:

Observability

Get a real-time status overview of your dags and tasks. Use the grid, graph and gantt views to find performance bottlenecks and access task logs to troubleshoot failures. When using assets to schedule your dags, the Airflow UI also visualizes data-driven dependencies between assets and tasks.

Operational Management

Perform daily operations like pausing dags, clearing tasks, backfilling, or managing Airflow connections. The UI makes pipeline management accessible to less technical data practitioners.

Debugging

Visually confirm your dag’s structure and dependencies as you build. Inspect rendered templates and XComs to debug issues, speeding up the development process.

For a video based introduction to the Airflow UI, see the Airflow: UI module in the Astronomer Academy.

Views

The Airflow UI is organized into several main views, accessible from the navigation bar. These views provide dedicated spaces for monitoring dags and dag runs, observing assets, browsing Airflow objects, and managing your environment.

While the UI is designed to be intuitive, many views contain powerful features that you may not know about. The following sections provide a walkthrough of each primary view and highlight specific features and advanced concepts to help you get the most out of the Airflow UI.

The most important views are:

  • Home/Dashboard: A page to give you an overview of your Airflow instance and quick links to different views.
  • Dags: A list of all dags in your instance. From here you can access individual dags and explore their tasks and runs.
  • Assets: A list of all assets in your instance. From here you can access asset graphs that show data-driven dependencies between assets and dags.
  • Browse: Access to lists of audit logs, XComs, and required actions for human-in-the-loop operators.
  • Admin: Management access to elements such as Airflow connections, variables, or pools.

Home/Dashboard

The Home view is your landing page in Airflow and serves as a high-level dashboard for the entire environment. It provides a great overview of your pipelines’ status and system health, allowing you to assess the state of your Airflow instance at a glance.

Screenshot of the Airflow UI Home view showing the dashboard.

The Home view is composed of several key widgets:

  • Stats: A quick summary of your environment’s workload, with counts of active dags and running or failed task instances. Each statistic is a clickable link, taking you to the pre-filtered dags view.
  • Favorites: A list of your favorite dags. You can add a dag to your favorites by clicking the star icon next to its name in the dags view or within the individual dag view.
  • Health: See the overall health of your Airflow components.
  • Pool Slots: Shows the accumulated number of slots of all configured pools and their utilization.
  • History: See summary statistics of recent dag runs & task instances at a glance.
  • Asset Events: Shows a list of newest or oldest asset events.

Dags

The Dags view is your central control panel for all data pipelines in your Airflow environment. It allows you to quickly assess the status of your dags, monitor their recent performance, and perform key operational actions.

Screenshot of the Airflow UI dags view showing several dags with their run history and current run status.

This view provides a searchable and filterable list of all your dags. It shows you an overview of key metadata, including:

  • Schedule: Whether a dag runs on a cron expression, a timetable, or if it’s triggered by updates to specific assets.
  • Next Run: When the dag is scheduled to run next.
  • Latest Run: The status and date of the most recent dag run.
  • Human-in-the-Loop (HITL): An icon appears if a task in a dag run is waiting for user input before it can continue.
  • Tags: Any tags applied to the dag, which can be used for filtering and organization.
  • Actions: Quick access to pause or unpause a dag, trigger a dag run, star a dag as favorite to display it in the Home view or delete it.

The card view also includes a visual history of recent dag runs as a series of vertical bars. The height of each bar corresponds to the run’s duration, while its color indicates the dag’s state, allowing you to spot anomalies quickly.

For a more condensed list of dags, you can switch to the list view, which presents the information in a compact table ideal for environments with many dags. You can toggle between the views directly below the total number of dags.

Use the keyboard shortcut +K (or Ctrl+K on Windows/Linux) to jump to the advanced search bar. This allows you to filter and navigate through hundreds of dags instantly without waiting for page reloads.

Individual dag

The individual dag view gives you detailed insights into a specific dag, including its dag runs, task instances and required actions (when using the human-in-the-loop feature). You can also trigger a backfill, or reparse the dag.

Screenshot of the individual dag view.

Actions

In the top-right corner of the individual dag view, a set of action buttons provides direct control over the dag’s lifecycle. In addition to favoriting, reparsing, or deleting the dag, the Trigger button is your primary tool for initiating runs outside the regular schedule.

Screenshot of the individual dag actions.

Clicking Trigger opens a dialog where you can start a single dag run or a backfill operation. For both types of runs, you can supply custom configuration in the Advanced options area. For a backfill, you define a date range and select one of three reprocessing behaviors.

Screenshot of the backfill dialog.

You can also control whether the backfill operation runs backwards and how many active runs to apply. While a backfill is in progress, a status bar appears at the top of the dag view to visualize its progress. Individual runs created by a backfill are also marked with a dedicated icon in the grid, distinguishing them from regularly scheduled or manually triggered runs.

Screenshot of the a running backfill operation.

Dag views

The two main visualizations of a dag, displayed on the left side of the individual dag view, are the grid view with an integrated gantt chart and the graph view.

In the screenshot below on the left, you can see a grid representation of the dag’s previous runs, including their duration and the outcome of all individual task instances. Each column represents a dag run, and each square represents a task instance in that dag run. Task instances are color-coded according to their status. A small play icon on a dag run indicates that a run was triggered manually, and a small asset icon shows that a run was triggered by an asset update. If no icon is shown, the dag ran according to its schedule.

On the right side of the screenshot, you can see the different tabs you can select to access more information about the dag, dag run, task or task instance you selected in the grid or graph view.

Clicking the upper bar of an individual run in the grid representation opens the gantt chart. Clicking a task run box in the grid takes you directly to the task’s logs for quick debugging.

Screenshot of the individual dag view with a task instance selected.

The gantt chart provides a timeline view of a single dag run, showing when each task started, how long it ran, and where tasks ran in parallel. This visualization is excellent for identifying bottlenecks in your pipeline. Look for long bars, as these represent the longest-running tasks. Optimizing these tasks can significantly reduce the overall duration of your dag run.

In the top-left corner, you can switch between the grid and graph views. The graph view shows your dag, its tasks, and their dependencies. You can open the graph view from the individual dag page to see the graph independent of dag runs. Alternatively, open it for a specific dag run to also visualize the task states.

Screenshot highlighting the toggle between graph and grid views.

Press g to quickly toggle between the graph and grid views.

Use the Options menu in the graph view to select a specific dag version. This lets you review your dag’s history and see that version’s tasks and dependencies.

Screenshot highlighting the dag version switch in the graph view.

Tabs

There are several tabs available within the individual dag view:

Overview

The Overview tab shows a basic summary of the dag, including recent runs and related asset events. You can filter this view by different time ranges.

Screenshot of the Overview tab.

Runs

The Runs tab shows detailed information about dag runs, including the run after date, state, run type, triggering user, start and end dates, duration, dag version, and additional configuration values. You can filter the list by state or run type.

Click on a run to open the individual dag run view.

Screenshot of the Runs tab.

Tasks

The Tasks tab details information on all of the tasks in the dag, including the task names, the operator type, the trigger rule, the latest task instance, and a visual chart of runs. You can click the individual task names to get back to the task overview page.

Screenshot of the Tasks tab.

Calendar

The Calendar tab provides a long-term perspective on your dag’s execution history. It presents a grid that visualizes run activity, which can be toggled between an hourly view for a given month and a daily view for an entire year.

Each colored square on the grid represents a time slot where one or more dag runs occurred. The intensity of the color corresponds to the number of runs within that hour or day, making it easy to spot periods of high activity.

Screenshot of the Calendar tab.

Required Actions

The Required Actions tab is central to managing interactive workflows that use Airflow’s human-in-the-loop capabilities. This tab is only visible for dags that contain tasks designed to pause and wait for user input.

It displays a list of all task instances that are currently awaiting an action or have required one in the past. Each entry provides key details, including the task’s current state, its subject, when it started to run (Run After), and its map index if it’s a dynamically mapped task. Once an action is taken, the time of the response is also recorded here.

Screenshot of the Required Actions tab.

To provide input, simply click the subject link of a pending task. This will navigate you directly to the action form where you can submit your response, allowing the dag to continue its execution.

Screenshot of a human-in-the-loop form.

Backfills

Under the Backfills tab, you can see detailed information about the backfills that were run on the dag. This includes information on when it was run from/to, the reprocessing behavior, when it was created and completed, the duration, and the max active runs.

Screenshot of the Backfills tab.

Audit Log

The Audit Log tab shows a list of events that have occurred in your Airflow environment relating to the dag, dag run, or task instance you have selected.

Screenshot of the Audit Log tab.

Code

The Code tab allows you to inspect the code for the dag itself. It also shows the date and time of the last parse. You can select which dag version you want to see, and copy the code.

Screenshot of the Code tab.

Details

The Details tab displays the detailed information about the dag. This includes information such as the dag ID, description, timezone, file location, last parsed time, latest version information, and start time. You can also see dag configuration information such as the concurrency number, max active runs/tasks, if catchup is enabled, and any params.

Screenshot of the Details tab.

Dag run

The dag run view represents a single dag run. It offers similar tabs to those in the dag view:

  • Task Instances: Shows metadata for every task instance within this specific dag run. Clicking on a task ID brings you to the details of the instance including the logs and XComs.
  • Required Actions: Lists any human-in-the-loop actions that were required by tasks within this particular dag run.
  • Asset Events: Displays the source asset events with their details.
  • Audit Log: Provides a detailed audit trail related specifically to this dag run.
  • Code: Shows the exact version of the dag code that was executed for this run, which is critical for debugging historical runs.
  • Details: Displays metadata specific to this run.

The dag run view also offers an important set of functions for operational management, this includes adding a note to the dag run, clearing the dag run or marking it as success or failed.

Screenshot of actions for a single dag run.

Drilling down one level further, selecting an entry from the Task Instances tab opens the individual Task Instance view. This is the most granular interface for debugging in Airflow, focusing on a single execution of a single task.

The centerpiece of this view is the Logs tab, which provides direct access to the log output for that specific task run. For easier debugging, the logs are syntax-highlighted, and you can filter them by log level to quickly isolate important messages. In addition to logs, other tabs offer further information about your task instance, for example the data it pushed to XCom.

Screenshot of the Logs tab for an individual task instance.

Assets

The Assets tab allows you to see a list of the assets associated with your Airflow instance.

By default, assets are shown in a list that displays key information for each one:

  • Last Asset Event: The date of the most recent asset event, indicating data freshness.
  • Group: The asset group it belongs to.
  • Producing Tasks: The specific tasks that updated the asset.
  • Scheduled dags: Which dags have schedules that include the asset.

From this view, you can also manually generate an asset event for testing or to kick off an data-aware workflow including one or more dags.

Screenshot of the assets list view.

There are two types of ways to create an asset event:

  • Materialize: Trigger the underlying producing task of this asset.
  • Manual: Directly create the asset event, without running the product task. Allows you to manually attach extra information to the asset event.

Screenshot of the create asset event dialog.

By clicking an individual asset, you can switch to the asset graph, which visualizes the dependencies between assets and dags, providing an overview over how your dags and your data depend on each other. On the right side of an asset graph you can see more details on the related asset events.

You can also generate an asset event from this view by using the button in the top right.

Screenshot of the assets graph view.

Browse

The Browse tab provides detailed information from your Audit Log, required human-in-the-loop actions, and your XComs.

The Audit Log lists all your logged events. This includes information such as when an event occurred, which user is associated with the event, and extra information about the associated dag and task.

The XComs view provides a centralized location to inspect all XComs pushed by tasks across your Airflow environment. It is an essential tool for debugging data-passing issues between tasks. The view displays a filterable list where each entry shows the XCom’s ⁠key, its ⁠value, and the exact task instance that pushed it, identified by its dag ID, run ID, task ID, and map index.

Under Required Actions you can find the global list for managing all human-in-the-loop tasks across your entire Airflow instance, including all task instances that are either pending user input or have been previously reviewed. You can filter the list to focus on either state.

To take action on a pending task, simply click on its subject to navigate directly to the submission form. This centralized view is a great way to efficiently monitor and respond to all interactive requests in your environment from a single location.

Screenshot of the Browse tab.

Admin

The Admin tab provides you with tools for operational management not specific to any particular dag. These can be used to both, view and modify your Airflow environment.

Note that the Config view is often disabled for security reasons. You can control this behavior by setting the api.expose_config configuration.

Docs

The Docs tab provides links to external Airflow resources. Such as the official Airflow documentation, the GitHub repository and the Airflow REST API reference.

User

The bottom-most icon on the navigation is the User tab. This allows you to:

  • Select your preferred language
  • Toggle Light/Dark Mode
  • Default to Graph View
  • Set the instance time zone
  • Log out

Conclusion

This guide provided a basic overview of some of the most commonly used features of the Airflow UI. As you can see, the UI has become much more easy and intuitive from 2.x to 3.x.

Airflow plugins are external features that can be added to customize your Airflow installation. In this guide, you learn how to extend the functionality of the Airflow UI using plugins.

The Airflow UI is a dynamic and evolving part of Airflow, with the open-source community continuously working to improve the user experience and add new functionality. To take full advantage of these enhancements, make sure to upgrade your Airflow environment frequently.

If you have ideas for improving the UI or want to help build its next generation of features, the Apache Airflow community welcomes your contributions.