Conditional Formatting
Conditional formatting turns raw values into readable signals. It applies visual formatting — colour, icons, data bars, text style — to output components based on the value in each cell or the edition data driving each component.
Conditional formatting is configured per component in the Output Designer → Format panel → Conditional formatting.
Rule types
Threshold colour
Changes the background or text colour of a cell, card, or component based on a numeric or text threshold.
| Property | Description |
|---|---|
| Source field | The field whose value is evaluated |
| Condition | Comparison: >, >=, <, <=, =, ≠, between, is null, is not null |
| Threshold value | The value or range to compare against |
| Apply to | Background colour, text colour, or border colour |
| Colour | Hex, named colour, or theme colour picker |
Example: Colour the "CPI" column red when CPI < 0.9, amber when CPI 0.9–1.0, green when CPI ≥ 1.0:
| Priority | Condition | Colour |
|---|---|---|
| 1 | CPI < 0.9 | Red background #FFEBEE |
| 2 | CPI < 1.0 | Amber background #FFF8E1 |
| 3 | CPI ≥ 1.0 | Green background #E8F5E9 |
Icon set
Displays a compact status icon in a table cell or KPI card alongside or instead of the value.
| Icon set | Icons | Typical use |
|---|---|---|
| Traffic light | 🔴 🟡 🟢 | RAG status |
| Arrows | ↑ → ↓ | Trend direction |
| Stars | ★★★ | Rating fields |
| Checkmark / Cross | ✓ ✗ | Toggle / completion |
| Priority | High / Med / Low flags | Priority Select fields |
Configuration:
- Open the component → Format panel → Conditional formatting → + Add rule → Icon set.
- Select the icon set type.
- Define thresholds for each icon tier.
- Choose whether to show value alongside icon or icon only.
Threshold example for traffic light on a Percent field:
| Icon | Condition |
|---|---|
| 🔴 | Value < 0.7 |
| 🟡 | Value < 0.9 |
| 🟢 | Value ≥ 0.9 |
Data bar
Renders an inline horizontal bar proportional to the cell value — useful for comparing magnitudes across rows without a separate chart.
| Property | Description |
|---|---|
| Minimum | Value that represents 0% bar width (default: min of dataset) |
| Maximum | Value that represents 100% bar width (default: max of dataset) |
| Bar colour | Fill colour of the bar |
| Negative bar colour | Colour for negative values (if applicable) |
| Show value | Display the numeric value alongside the bar |
| Bar direction | Left-to-right (default) or right-to-left |
Data bars are best used in table columns containing comparable numeric values — cost per period, completion %, duration days.
Text style
Changes the font style of a cell's text without changing the background.
| Style | Options |
|---|---|
| Bold | On / Off |
| Italic | On / Off |
| Underline | On / Off |
| Strikethrough | On / Off |
| Text colour | Hex or theme colour |
| Font size | Relative (100%, 120%, 80%) or absolute (pt) |
Example: Bold and red text for overdue rows:
[DueDate] < TODAY() AND [Status] ≠ "Complete"
Background fill
Applies a background colour to an entire row (in a table) or an entire component.
| Application | Effect |
|---|---|
| Cell | Background of a single table cell |
| Row | Background of the entire table row |
| Component | Background of the entire component (KPI card, section) |
Row-level background fill is configured on the table component level, not per-column. Set the rule source to any field in the repeating section.
RAG-based conditional formatting
RAG fields have a dedicated RAG source option that automatically applies the standard colour scheme:
| RAG value | Default colour |
|---|---|
| Red | #F44336 |
| Amber | #FF9800 |
| Green | #4CAF50 |
| Not set | #9E9E9E (grey) |
To use RAG source:
- Open Conditional formatting → + Add rule → RAG source.
- Select the RAG field.
- Choose the apply target (background, text, border, or icon).
- Optionally override the default colours per value.
RAG source is available on table cells, KPI cards, indicator components, and RAG grid components.
Rule stacking and priority
Multiple conditional formatting rules can apply to the same component. When multiple rules match, they are applied in priority order (lowest number = highest priority).
Evaluation:
- Each rule is evaluated independently.
- If multiple rules apply to the same property (e.g. both Rule 1 and Rule 2 set background colour), only the highest priority rule wins.
- Rules targeting different properties (e.g. Rule 1 sets background, Rule 2 sets text style) can both apply simultaneously.
Example — layered rules on a risk table:
| Priority | Condition | Apply to | Effect |
|---|---|---|---|
| 1 | RAG = Red | Row background | Red highlight |
| 2 | Status = "Overdue" | Text style | Bold, italic |
| 3 | Owner = "" | Text colour | Grey (indicating unassigned) |
Rules 1, 2, and 3 can all apply to the same row simultaneously — they target different properties.
To reorder rules: drag the rule handles in the Conditional Formatting panel.
Applying to specific columns vs. entire rows
| Target | When to use |
|---|---|
| Specific column | Highlight a single metric (e.g. colour only the CPI column) |
| Entire row | Highlight the full row for a row-level condition (e.g. Red risk rows) |
| Component background | Apply a state colour to a KPI card or indicator |
Row-level formatting applies the same background to all cells in the row. Column-level formatting applies to a single cell in each row.
Conditional formatting in charts
Charts support conditional formatting on:
| Chart element | Supported formatting |
|---|---|
| Bar series | Colour per category based on a field value or threshold |
| Line series | Colour not conditional per data point (uniform line colour) |
| Data labels | Text colour based on threshold |
| Reference lines | Fixed colour — no conditional formatting |
Example — bar chart coloured by RAG:
- Open the chart → Series → Bar → Conditional colour.
- Set source: RAG Status field.
- Each bar is coloured Red, Amber, or Green based on the RAG value for that category.
Troubleshooting conditional formatting
Issue: Rule is not applying
- Check that the source field is the correct field type for the condition (numeric conditions require a numeric field).
- Verify the threshold value is in the correct unit (Percent fields are stored as decimals — use
0.9not90for 90%). - Check rule priority — a higher-priority rule may be overriding the one you expect.
Issue: All rows show the same colour
- The condition may always be true. Open the preview and check what values are in the source field.
- For date conditions (
< TODAY()), check that the field contains actual date values, not text.
Issue: Background colour not visible in PDF
- Some PDF viewers suppress light background colours. Use a stronger contrast colour (e.g.
#FFCDD2instead of#FFF9F9). - Ensure Print background is enabled in the export settings (PDF).
Issue: Icon shows "?" or placeholder
- The source field returned null. Add a null check to your threshold: set the lowest tier to trigger on null values and display a neutral icon.
Best practices
| Practice | Reason |
|---|---|
| Use consistent colour meanings | Red always means critical. Green always means on target. Do not reuse colours for unrelated meanings in the same report. |
| Keep the palette small | 3–4 colours maximum. More colours reduce readability. |
| Test with edge case data | Include a row with null values and a row at the exact threshold boundary in your test edition. |
| Document your thresholds | Add a legend component to the output explaining what each colour means — especially for client-facing reports. |
| Avoid conditional formatting in Excel exports | Excel export renders conditional formatting as static colours, not as Excel conditional formatting rules. The exported file will not update when the data changes. |
Related
- Blueprint Field Types — RAG, Select, Number, and other fields that are common conditional formatting sources
- Output Designer Overview — navigating the Output Designer
- Computed Fields KPI Page tutorial — conditional formatting on KPI cards
- Export Support Matrix — which formatting features survive each export format