A trace is a recording of the path a request takes through your system — from the first service it hits to every downstream call it makes. Each trace is made up of spans, where each span represents a single unit of work in one service.
Prerequisites
- This section assumes that your application is already instrumented. For details about how you can instrument your application, see the Instrument Your Application section.
- This section assumes that you are familiar with the basics of monitoring applications.
Introduction
The Traces Explorer page in SigNoz enables developers to filter, examine, and analyze traces. There are four different views available in Traces Explorer which include:
List View
The List View is the default view on the Traces Explorer page. It shows individual spans matching your filters.

Span Scope
Use the All Spans / Root Spans / Entrypoint Spans dropdown on the right to control which spans are shown:
- All Spans — shows every span matching your filters, regardless of position in the trace.
- Root Spans — shows only the top-level span of each trace (the span with no parent).
- Entrypoint Spans — shows only the first span when a request enters a service from an upstream service, giving a high-level view of cross-service traffic.
Customize Columns
Click the Options button on the right side of the toolbar to add or remove columns from the list. For example, you can add service.name, http_method, response_status_code, or event_type to display alongside each span.

Timestamp column can't be removed.
Number of Spans to display
You can increase the number of spans displayed up to 200/page using the dropdown on the top right.

Group By, Add Formula, and Order By are not supported in List View or Trace View. Use Time Series or Table View for aggregation and grouping.
Traces View
The Traces View focuses on root spans — the starting span of each trace. Each row represents a single trace, showing the root service name, root operation name, root duration, number of spans, and Trace ID. Traces are sorted by descending root duration, which helps identify the longest running traces. You can increase the number of traces displayed up to 200/page using the dropdown on the top right.

Time Series View
The Time Series View provides a graphical representation of trace data over time.

Table View
The Table View provides a tabular representation of the trace data.

Query Builder
Both Time Series and Table views use the Query Builder for filtering, aggregation, and grouping. This lets you chart request rates or latency percentiles directly from trace data without needing a separate metrics pipeline. The Query Builder supports count, avg, p99, and more — with Group By, Having, Order By, and Limit. Refer to the Query Builder documentation for more details.

Trace Matching
Trace Matching lets you define multiple span queries and combine them with trace-level operators — going beyond single-span filtering to find spans based on their relationships within a trace. Click Add Trace Matching below the filter bar to open the multi-query input.

Each query (A, B, C…) is a standard span filter. The Expression field combines them using trace operators:
| Operator | Symbol | What it returns |
|---|---|---|
| Has Direct Child | => | Spans from A that have a direct child matching B |
| Has Descendant | -> | Spans from A that are ancestors (at any depth) of B |
| AND | && | Spans from A in traces that also contain spans matching B |
| OR | || | Union of spans from both A and B |
| NOT | A NOT B | Spans from A in traces that do not contain any spans matching B |
Example — Has Descendant:
- Query A:
service.name = 'frontend' - Query B:
service.name = 'customer' AND has_error = true - Expression:
A -> B - Result: Returns frontend spans that are ancestors of erroring customer spans at any depth.
For full operator reference and more examples, see Multi-Query Analysis with Trace Operators.
Quick Filters
The Traces Explorer provides quick filtering of spans using various parameters on the left panel. Select a filter category to expand it, set values, and the view updates automatically.

Default Filters
Duration:
- Description: Filter spans based on their duration.
- Usage: Specify a minimum and maximum duration in milliseconds to find spans that fall within this time range. This is useful for identifying spans that are unusually long or short.
Status:
- Description: Filter spans by their status.
- Usage: Options can include
ErrorandOk. Use this filter to quickly identify spans that resulted in errors or were successful.
Service Name:
- Description: Filter spans by the name of the service that generated them.
- Usage: Select from a list of service names to isolate spans from a specific service. This can be helpful in microservices architectures where multiple services generate spans.
Operation / Name:
- Description: Filter spans based on the operation or name.
- Usage: Select specific operations, such as HTTP GET requests or SQL SELECT queries, to focus on particular types of operations within your spans.
RPC Method:
- Description: Filter spans by the RPC method used.
- Usage: Useful for isolating spans based on the remote procedure call methods.
Status Code:
- Description: Filter spans by their HTTP status code.
- Usage: Select from common status codes like
200,404,500, etc., to find spans that resulted in specific HTTP responses.
HTTP Host:
- Description: Filter spans by the HTTP host.
- Usage: Specify the host to find spans related to particular HTTP hosts.
HTTP Method:
- Description: Filter spans by the HTTP method.
- Usage: Choose HTTP methods such as
GET,POST, etc., to filter spans based on the type of HTTP request.
HTTP Route:
- Description: Filter spans by the HTTP route.
- Usage: Specify routes to find spans related to specific paths in your application.
HTTP URL:
- Description: Filter spans by the full HTTP URL.
- Usage: Useful for isolating spans related to specific URLs, providing a more granular filter compared to HTTP routes.
Trace ID:
- Description: Filter spans by their unique Trace ID.
- Usage: Enter a specific Trace ID to find and analyze an individual trace. This is particularly useful for deep dives into specific transactions.
To clear a filter, click Clear All next to the filter category. To reset all filters at once, use the Reset button at the top.
Adding Custom Quick Filters
The quick filters panel shows a set of default filters (like Duration, Service Name, HTTP Method, etc.), but you can add any span or resource attribute as a custom quick filter.
To customize: click the settings icon at the top-right of the quick filters panel, then select Edit quick filters. This opens an editor showing your currently added filters and all other available attributes. Search for any attribute and add it to the panel.

Only users with the Admin role can edit quick filters. Users with the Viewer or Editor role do not have access to this feature.
Bottom Bar
The bar at the bottom of each view provides quick actions for saving views, creating alerts, and adding panels to a dashboard.

- Save this view — saves the current filter and query configuration as a named view, accessible later from the Views tab at the top or the Select a view dropdown. See the Saved View docs for details. To manage all saved views, switch to the Views tab — it lists every view with creator, timestamp, and a search bar.
- Create an Alert — instantly creates a Trace based Alert based on the current filters.
- Add to Dashboard — adds the current panel to a new or existing dashboard.
To manage all your saved views, switch to the Views tab at the top of the page.

If you need help with the steps in this topic, please reach out to us on SigNoz Community Slack.
If you are a SigNoz Cloud user, please use in product chat support located at the bottom right corner of your SigNoz instance or contact us at cloud-support@signoz.io.