Repository navigation
Description
Apache Airflow version
3.0.4
If "Other Airflow 2 version" selected, which one?
No response
What happened?
class MyCustomSnowflakeOperator(SQLExecuteQueryOperator):
ui_color = "#F54927"
... here goes the code for custom operator
when I was running with Airflow 2.10.3 this colour was respected and I could see my task in this color just fine.
Now I've upgraded to airflow 3.0.4 and all I can see is just plain white background and this colour is completely ignored.
What you think should happen instead?
In taskgroup or in customer operator, if we are providing ui_colour value then it should be respected and should be visualised in airflow UI. This allows us to easily identify different types of operators in our DAG... It also allows us to organise the DAG a bit better as well.
How to reproduce
Just create any customer operator like the example above and define ui_color value and it will be ignored by Airflow UI
I created a custom operator called SomeSnowflakeOperator and here is the DAG UI - as you can see all the SomeSnowflakeOperator tasks are in white background
taskgroup was also provided with ui_color but it was also ignored
here is the taskgroup code
def task_group() -> TaskGroup:
with TaskGroup('create_snowflake_objects', ui_color="ff7f00") as tg:
SomeSnowflakeOperator(
task_id="create_weekly_dates_table",
sql="snowflake_objects/create_weekly_dates.sql",
)
SomeSnowflakeOperator(
task_id="some_other_task2",
sql="snowflake_objects/some_other_task2.sql",
)
SomeSnowflakeOperator(
task_id="some_other_task3",
sql="snowflake_objects/some_other_task3.sql",
)
return tg
SomeSnowflakeOperator class
class SomeSnowflakeOperator(SQLExecuteQueryOperator):
ui_color = "#F54927"
Operating System
MacOS
Versions of Apache Airflow Providers
3.0.4
Deployment
Docker-Compose
Deployment details
No response
Anything else?
No response
Are you willing to submit PR?
- Yes I am willing to submit a PR!
Code of Conduct
- I agree to follow this project's Code of Conduct
Activity
boring-cyborg commentedon Aug 13, 2025
Thanks for opening your first issue here! Be sure to follow the issue template! If you are willing to raise PR to address this issue please do so, no need to wait for approval.
jroachgolf84 commentedon Aug 14, 2025
@waqas-saeed, was this working in any other version of Airflow 3.0.X?
waqas-saeed commentedon Aug 14, 2025
yep - it's working fine with Airflow version 2.10.3. I can change colours just fine and I can see it in my DAG UI too. it's only 3.0.4 I'm currently trying to upgrade to isn't working
tirkarthi commentedon Aug 14, 2025
cc: @pierrejeambrun @bbovenzi
[-]ui_color is ignored for Taskgroup and custom operators in airflor 3.0.4[/-][+]ui_color is ignored for Taskgroup and custom operators in airflow 3.0.4[/+]waqas-saeed commentedon Aug 14, 2025
updated more info on how to reproduce it.
waqas-saeed commentedon Aug 14, 2025
hi @nrnavaneet is this something you can help with?
nrnavaneet commentedon Aug 14, 2025
Sure ! Let me see what might be the issue and give it a shot on fixing it :). Lmk if uve got any specifications I can use other than what uve mentioned
waqas-saeed commentedon Aug 14, 2025
@nrnavaneet thanks so much for your reply - all I want is to override ui_color and ui_fgcolor for my custome operators. This is very useful to quickly see which task is performing what operations.
The additional thing would be to have the same ability for TaskGroups.
nrnavaneet commentedon Aug 15, 2025
Got it ! Thank you.
waqas-saeed commentedon Aug 16, 2025
Once this is fixed, I'm curious to know how this will work when dark mode is on...
pierrejeambrun commentedon Aug 19, 2025
I think these are remnants of airflow 2 but the intent was to remove this feature completely. #43519
We need to think about other ways to achieve UI customization from a broader perspective without going through dag authoring.
I considered closing this but maybe we can recycle it into a broader 'UI customization' ticket?
cc: @bbovenzi
mallman-experian commentedon Jan 30, 2026
I'm confused. If we remove this functionality how do we set custom task colors for the UI?
pierrejeambrun commentedon Feb 5, 2026
Between the TI states colors and the custom one the UI was becoming really quickly a mess. Also for accessibility custom colors are often a bad option and it wouldn't play nicely with dark and light theme. (we would need a ui_color_dark, ui_color_light, etc...).
We chose to remove this feature until we can find a better approach for this. So in airflow 3 you cannot customize the tasks colors for now. You can rely on operator names to identify them visually, I know it's not the same as custom colors.
Maybe via the custom UI theming coming in airflow 3 we can achieve something similar. (adapt it to make it work or offer an interface to do so at least) I would have to investigate further.
bbovenzi commentedon Feb 11, 2026
Not a bug, this was intentionally removed in 3.0. We needed to have the UI be more opinionated and rely less on the backend telling it how to display. But I won't close this, because we can find a away to reintroduce this feature.
tyger commentedon Apr 28, 2026
I appreciate all the work done to improve the UI in Airflow 3, but this change really looks like step back - it simply reduces customisation aspect of Airflow.
I believe colour customisation has its place and does provide distinct visual clue about nature of individual Tasks in very big DAGs. Internally we see it as a downgrade.
Probably it's to late to make suggestion, but I could see several options how it could be done:
Right now it feels rushed without providing any alternative really...
cwormsl2 commentedon Jun 18, 2026
I want to echo the sentiment @tyger shared. This feature being removed is a huge downgrade, and actively makes the Airflow experience worse. When I have a DAG with 100+ tasks and I zoom out to view the graph, it's impossible to rely on the operator names. The color coding of the operator types was a quick, and efficient way to view a DAG at a quick glance to get a sense of it.
This feels like a change that was made without regard for the customer experience, and doesn't seem to take into account how DAG owners are actually interacting with the UI.
Would love to see this feature re-introduced!
rohanvarshney commentedon Jun 18, 2026
Following up on this! In Airflow 2, teams were able to visually distinguish task types at a glance (e.g., SparkOperator vs. PrestoOperator vs. TaskSensor). This feature removal is a significant usability loss for us. The color coding made it possible to understand a DAG's composition quickly without reading individual task labels. We'd love to see this reintroduced in a way that works within the new light/dark theming system, whether through a curated set of accessible per-operator-type colors, a standardized ui_color API that maps to theme-safe values, or another mechanism that preserves the quick visual parsing that made the old behavior so valuable.
dkibets commentedon Jun 18, 2026
I want to echo the sentiments shared by @tyger, @cwormsl2, and @rohanvarshney. Removing
ui_coloris a massive usability downgrade, especially for complex pipelines.For my team, losing this feature directly impacts how we read DAG design patterns:
Instead of removing the feature entirely over theme/accessibility concerns, please consider reintroducing it with modern guardrails—like allowing
ui_color_light/ui_color_darkfields or mapping to a theme-safe palette. I would definitely love to see this feature brought back!sofiamaterynska-lyft commentedon Jun 19, 2026
Adding my voice to the feedback here - the removal of
ui_coloris a meaningful usability regression for teams like ours managing DAGs at scale. When zoomed out on a multi-task graph, color-coded operators are the only practical way to parse pipeline structure and distinguish operator types at a glance. We'd strongly welcome a path forward such asui_color_light/ui_color_darkpairs or a curated theme-safe palette that preserves this capability within the new theming system.