Aglet

Triage Missing Versus Zero Report Values

A report can show a blank, zero, dash, or omitted point for several different reasons. Triage starts with source rows and the measure contract, then follows each state into a table, card, chart, and export. Preserve a fixture with all states so a visual shortcut does not erase the underlying meaning.

Establish what is happening

  1. Name the value states

    Define no row, an explicit zero, a null measure, an unavailable calculation, and an intentionally suppressed value. Record the source fields and report wording for each. Include one period with no observation and another with a recorded zero so they cannot be conflated.

  2. Trace state conversion

    Follow the fixture through filters, grouping, aggregation, missing-value handling, chart preparation, formatting, and export. Compare source membership with displayed values and identify the first stage that turns absence into zero or removes a point. Preserve filter and period context.

  3. Bound affected surfaces

    List cards, tables, charts, exports, and comparisons using the measure. Separate surfaces that intentionally impute or suppress values from those that should preserve a blank. Ask the metric owner to define which state a decision may treat as zero.

What to carry forward

Triage is complete when each value state has an expected meaning, first conversion boundary, affected surfaces, and an owner for the next decision. Keep the finding provisional when the source cannot distinguish no observation from a recorded zero.

Technical background: Metabase documentation.

Keep the decision with the work.

Use a Work Item in Aglet to record the problem, the evidence you have, and the next decision. Add an owner and priority, then keep updates in the discussion so the next person can follow the reasoning.

Create an account See the product workflow