Span Name Filtering Not Working on Monitoring Page: Trace-Level vs Span-Level Aggregation
Last updated: January 27, 2026
Applicable To
Plans: Any
Deployments: Any
Use case: Monitoring page filtering with span-level metrics when Trace level metrics feature flag is enabled
Summary
Span name filtering on the monitoring page fails to exclude child spans when the Trace level metrics feature flag is enabled. This feature flag aggregates metrics at the trace level rather than span level, preventing span-level filters like is_root = true from working correctly. Disable the Trace level metrics feature flag to restore span-level filtering functionality.
Resolution Steps
If you need span-level filtering to work
Step 1: Navigate to Feature Flags
Go to Settings > Feature flags in your Braintrust account.
Step 2: Disable Trace Level Metrics
Find the Trace level metrics feature flag and toggle it to the off position.
Step 3: Verify Filtering Works
Return to the monitoring page and apply your span name filter with is_root = true. The metrics should now filter correctly to show only root-level spans.
If you need trace-level aggregation
Step 1: Understand the Trade-off
When Trace level metrics is enabled, the dashboard aggregates metrics at the trace level (entire request/conversation) rather than the span level (individual LLM calls or tool invocations). This means span-level filtering will not work as expected.
Step 2: Use Alternative Filtering
Instead of filtering by span name, use trace-level filters to segment your data. Consider using SQL filters or tag filters on trace-level attributes.
Understanding Trace-Level vs Span-Level Metrics
Span-Level Metrics (Default)
When Trace level metrics is disabled:
Metrics aggregate at the individual span level
Each LLM call, tool invocation, or operation is counted separately
Filtering by
is_root = trueshows only top-level spansUseful for analyzing individual operations and their performance
Trace-Level Metrics
When Trace level metrics is enabled:
Metrics aggregate at the trace level (entire request/conversation)
All spans within a trace are grouped together
Span-level filters like
is_rootdo not affect aggregationUseful for analyzing end-to-end request performance