Tutorials/Power Apps/Visual Data Alerts in Power Apps Galleries
Power Appsintermediate

Visual Data Alerts in Power Apps Galleries

Apply colours, emojis, and conditional formatting to highlight important data in your gallery rows.

NA
Narmer Abader
@narmer · Published June 3, 2026

Conditional formatting turns a plain gallery into a live dashboard. By tying colours and symbols to your data, you let users instantly spot overdue tasks, high-priority items, or completed milestones — no digging required. This guide walks through practical examples using a project‑task tracker, with tips to avoid common pitfalls.

Scenario: Project Task Dashboard

Imagine a team that tracks progress on a SharePoint list called ProjectTasks. The list has these columns:

  • Title – default single line of text
  • AssignedTo – Person or group
  • DueDate – Date and time
  • TaskStatus – Choice (Not Started, In Progress, On Hold, Completed, Overdue)
  • Priority – Choice (Low, Medium, High, Critical)
  • Progress – Number (percentage 0‑100)

A gallery in Power Apps displays these tasks, and we want to highlight status, priority, overdue items, and progress using colour and emojis.

Create a new canvas app from blank (phone or tablet). Add a connection to the ProjectTasks list, then insert a vertical gallery and choose that list as its data source.

Inside the gallery, place labels for Title, DueDate, TaskStatus, Priority, and Progress. Set their Text properties to reference the corresponding fields of ThisItem.

powerfxLabel for task title
ThisItem.Title
powerfxLabel for status
ThisItem.TaskStatus.Value

Later we will apply conditional formatting directly on these controls.

Conditional Formatting with Text Criteria

Single Value

When a task is Overdue, the status label should turn dark red to draw attention.

powerfxFill property of the status label
If(ThisItem.TaskStatus.Value = "Overdue", DarkRed, RGBA(0, 0, 0, 0))

This keeps the label transparent for all other statuses.

Multiple Values

Assign distinct colours to each status:

  • Completed → Green
  • In Progress → Goldenrod
  • On Hold → Orange
  • Overdue → DarkRed
  • Not Started → LightGray
powerfxFill property with multiple conditions
If(
  ThisItem.TaskStatus.Value = "Completed", Green,
  ThisItem.TaskStatus.Value = "In Progress", Goldenrod,
  ThisItem.TaskStatus.Value = "On Hold", Orange,
  ThisItem.TaskStatus.Value = "Overdue", DarkRed,
  ThisItem.TaskStatus.Value = "Not Started", LightGray,
  RGBA(0, 0, 0, 0)
)
Tip

When you have more than three options, consider using a Switch statement for cleaner syntax. Switch doesn’t support a default “else” colour directly, but you can wrap it in an If to handle missing values.

Formatting Priority with Text Colours

Make the Priority label’s text colour change based on urgency:

powerfxColor property of the priority label
Switch(
  ThisItem.Priority.Value,
  "Critical", Red,
  "High", Orange,
  "Medium", Black,
  "Low", Gray
)

Conditional Formatting with Number Criteria

Single Number Criterion

Flag any task where Progress is below 50 % by colouring the progress number red.

powerfxColor property of the progress label
If(ThisItem.Progress < 50, Red, Black)

Two Number Criteria

Make progress values ≥ 50 green and < 50 red.

powerfxColor property with two criteria
If(ThisItem.Progress >= 50, Green, Red)

Multiple Number Criteria

Use three bands: ≥ 80 (green), ≥ 50 (yellow), and < 50 (red).

powerfxColor property with three bands
If(
  ThisItem.Progress >= 80, Green,
  ThisItem.Progress >= 50, Gold,
  Red
)

Row Highlighting Based on a Condition

You can highlight an entire row when a task is Overdue by setting the gallery’s TemplateFill property.

powerfxTemplateFill property of the gallery
If(ThisItem.TaskStatus.Value = "Overdue", PaleGoldenrod, Transparent)

Conditional Formatting with Emojis

Emojis can replace text labels for instant recognition.

Checkmarks and Crosses

Replace the status text with a ✅ or ❌ based on completion.

powerfxText property of the status label (emoji version)
If(
  ThisItem.TaskStatus.Value = "Completed", "✅",
  ThisItem.TaskStatus.Value = "Overdue", "❌",
  ThisItem.TaskStatus.Value
)

Visual Priority Icons

Use different symbols for each priority level.

powerfxText property of a priority icon label
Switch(
  ThisItem.Priority.Value,
  "Critical", "🔴",
  "High", "🟠",
  "Medium", "🟡",
  "Low", "🟢",
  ""
)
Emoji tip

On Windows you can insert emojis by pressing Win + . inside any text property. Be aware that some emojis may render differently on mobile devices – test on both platforms.

Common Mistakes and Troubleshooting

Choice columns need .Value. Always append .Value to a choice column (e.g. ThisItem.TaskStatus.Value). Without it you are comparing against a record, not a string.

Spelling and whitespace. Choice values are case‑sensitive and must match exactly (including spaces). If your formula uses “Overdue” but the list has “Overdue ” (trailing space), the condition will never be true.

Delegation isn’t an issue here. Formatting formulas use only ThisItem, which is already loaded client‑side. You do not need to worry about delegation limits when applying conditional formatting inside a gallery.

Empty or null values. If a progress number or status can be empty, wrap your conditions with IsBlank to avoid errors. For example:

powerfxSafe number check
If(
  IsBlank(ThisItem.Progress), Gray,
  ThisItem.Progress < 50, Red,
  Green
)

Final Recommendation

Conditional formatting is one of the quickest ways to make a Power Apps gallery more informative. Start with simple colour changes, then layer on emojis and row highlighting as your needs grow. Keep the number of distinct colours low (4‑6) to avoid overwhelming users, and always test your formulas with real data before deploying.


References