🚦 New step status filters in Bitrise Insights

:new_button: What changed

Bitrise insights can now filter step data by six distinct statuses:

  • successful
  • skipped with runif
  • skipped
  • failed
  • failed skippable
  • timed out

Previously, you could only filter by successful or failed.

:light_bulb: What problem does this solve

With only pass/fail, it was hard to answer questions like:

  • did this step actually run, or was it skipped due to conditions?
  • did this step truly fail, or is it marked skippable and ignored?
  • is the problem a timeout or a real failure?

This made it harder to filter out metrics on Insights that might be causing bottlenecks, but were not easily targeted. It lets you understand the impact of conditional logic, and spot slow or noisy parts of your pipeline.

:technologist: How it works technically

Each step in a build has:

  • an execution result (exit code, timeout, etc.)
  • configuration flags from bitrise.yml (like is_skippable)
  • conditions such as run_if

Insights now exposes these as separate filterable statuses:

  1. successful: step ran and completed without error
  2. skipped with runif: step was skipped because its run_if condition evaluated to false
  3. skipped: step was skipped for other reasons (e.g., previous step failure, workflow path not taken)
  4. failed: step failed with a non-zero exit code and the failure affected the build
  5. failed skippable: step failed but was marked is_skippable: true, so the build continued
  6. timed out: step hit a time limit and was terminated

:notebook_with_decorative_cover: When and why to use each status

Some practical cases:

  • investigating conditional workflows
    • filter by skipped with runif to see which steps are being skipped due to your conditions.
    • useful when a deploy, test, or notification step is β€œnot running” and you are not sure if it is misconfigured or correctly skipped.
  • reviewing β€œignored” failures
    • filter by failed skippable to see steps that are failing but not breaking your builds.
    • helps you clean up noisy steps, remove obsolete checks, or decide which ones should actually fail the build.
  • debugging slow or hanging builds
    • filter by timed out to find steps that regularly exceed time limits (e.g., dependency installs, test runs, device-related steps).
    • helps you decide where to add caching, split tests, or adjust timeouts.
  • checking overall workflow health
    • combine filters, for example:
      • failed + timed out to see all β€œhard” failures.
      • skipped + skipped with runif to review how often steps are not running at all.

:guide_dog: How to use the filters

  1. go to the insights tab in your bitrise workspace.
  2. open the steps view (or any insights view where step status filters are available).
  3. find the status filter control (where the old success/fail toggle used to be).
  4. select one or more of:
  • successful
  • skipped with runif
  • skipped
  • failed
  • failed skippable
  • timed out
  1. the charts and tables will update to only include steps with the selected statuse

Happy building :waving_hand: