What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more
Missing spans usually have a specific cause: tracing is disabled for the domain or a Worker, sampling excluded the request, ingestion stopped, the request took a path with no dedicated span, or an export destination has not received or joined the event yet. Work through those possibilities in that order. Also keep the product distinction straight: Cloudflare Traces shows sampled production traffic, while Cloudflare Trace is a configuration simulation and cannot prove what happened on a live request.
First, identify what you are looking at
Cloudflare uses similar names for two different tools. Cloudflare Traces displays spans from sampled requests that actually reached the production edge. Cloudflare Trace simulates how a request would be evaluated by configuration rules; it does not show a historical production request. A simulation can help explain an expected rule outcome, but it cannot fill in a missing production trace.
The rest of this guide assumes you are investigating Cloudflare Traces data for a real request. The workflow reflects Cloudflare documentation current in October 2026. Tracing remains a beta feature, so labels, span names, attributes, limits and retention policies can change.
PC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteWhy is there a gap in my trace?
The request was never sampled
Workers tracing uses head-based sampling. Cloudflare makes the sampling decision when the request arrives, before it knows whether the request will be slow or fail. A request that later becomes an error is not retroactively added if it lost the sampling decision at the edge. Tail-based sampling is not currently supported.
#1 Best Overall
When Workers tracing is enabled without an explicit rate, the documented default head_sampling_rate is 1, or 100 percent. A lower value intentionally omits requests. The valid range is 0 through 1; for example, 0.05 samples about five requests out of every 100 on average, not exactly every twentieth request.
A Worker in the request path is not instrumented
Domain-level tracing and Workers tracing are separate settings. The edge can produce a root trace while a Worker appears as a hole in the hierarchy if that Worker was deployed without tracing enabled. This is especially common when a request passes through several Workers owned by different teams.
With Workers tracing enabled, Cloudflare automatically instruments supported handler invocations, fetch() calls, bindings such as KV and R2, Durable Object operations and RPC calls. Add custom spans around application-specific work when the built-in operations do not describe the part you need to diagnose.
Recommended Free Tools
The operation did not run, or has no dedicated span
Traces describe operations that executed; they are not a checklist promising one span for every Cloudflare product. A cache hit can end the request at the edge, so there may be no origin connection span. DDoS protection, Cloudflare Access and Cloudflare Tunnel can process a request without currently having dedicated spans. A missing span in these cases is expected rather than evidence of dropped telemetry.
Ingestion stopped or the trace is still being assembled
Cloudflare says Free accounts have a daily ingestion limit. Once that limit is reached, new traces stop ingesting for the remainder of the day. A newly missing trace can therefore be a plan-limit condition, not an instrumentation failure.
A trace that is still assembling can show Trace in Progress at the root. Wait briefly and refresh before concluding that the trace is incomplete.
Export and correlation are separate problems
An exported event can arrive several minutes after it is visible in Cloudflare, depending on the destination. Cloudflare also does not currently propagate its Worker trace IDs to services outside Cloudflare. You may therefore see a Cloudflare trace and an application trace in an external system without an automatic end-to-end join.
Use this troubleshooting sequence
-
Confirm the data source and time range
Open Cloudflare Traces, select a time window that includes the request, and search by its Ray ID when you are investigating one known request. The documented filter format is
cloudflare.ray_id = "<ray>". In the result, expand the hierarchy or search for a span name. Inspect each span’s status, service, trigger, IDs, duration and attributes. If the root is markedTrace in Progress, wait for completion before judging its contents. -
Verify tracing for the domain
Tracing is configured separately for each domain. Check the domain that actually handled the request, rather than a zone that merely redirects to it. If the request crossed hostnames, verify tracing on every relevant domain and confirm which hostname appears in the Ray ID investigation.
-
Verify every Worker in the path
Inspect the deployment configuration for each Worker that can handle the request, including Workers invoked by another Worker. In Wrangler JSON, the essential setting is:
{ "observability": { "traces": { "enabled": true } } }Deploy after changing the setting. A Worker that handles only an error branch or a rarely used route still needs tracing enabled if you expect its spans in a sampled request. Once enabled, use the Worker span details to verify that handler, fetch and binding operations appear where they should.
Quick wins for a faster PC:
Scan for outdated or missing drivers - takes under a minuteDriver Scan →Repair Windows errors before they cause bigger problemsFix Now →Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy. -
Check the sampling rate and rule order
Review both the Worker setting and any domain-level trace rules. The first matching rule wins, so a broad rule above a more specific debugging rule can prevent the latter from ever being used. A low-rate rule can also override the default you expected from the Worker configuration.
For a reproducible diagnostic request, create a short-lived rule that matches a custom debug header and samples at 100 percent. Send that header only on the request you are testing, then remove or disable the rule when the investigation ends. Follow your organization’s access-control and data-handling practices: the capture mechanism is useful for diagnosis, but header-based targeting should not expose sensitive traffic.
Do not try to configure “sample only slow requests” or “sample only failures.” Cloudflare’s current Workers tracing model makes the decision at request arrival and does not support tail-based sampling.
-
Check ingestion availability
Review the account’s plan limits and current ingestion state. Free accounts have a documented daily ingestion limit and stop accepting new traces after it is reached for that day. Compare the timestamp of the missing request with the time the limit was reached. If new traces resume on a later day without a deployment change, ingestion availability was the likely cause.
PerformanceWindows Errors? Fix Them Before They SpreadDriversCrashes, No Sound, or Screen Glitches?PerformancePC Slower Than It Used to Be?Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy. -
Decide whether the missing operation is expected
Inspect the cache span’s
cloudflare.cache.statusattribute. A value ofHITmeans Cloudflare served the response without contacting the origin, so no origin connection span should be expected. Also account for product coverage: DDoS protection, Cloudflare Access and Cloudflare Tunnel do not yet have dedicated spans, while Workers spans require the separate Workers setting. -
Check external delivery and joins
If you export traces, confirm that the account-level OpenTelemetry destination exists, that its name exactly matches the name in Wrangler, and that the latest configuration was deployed. Allow several minutes for events to arrive. Then troubleshoot correlation separately: external services will not automatically receive the Cloudflare Worker trace ID, so a lack of a single linked waterfall does not necessarily mean the export failed.
How do I capture the trace for a specific request?
Sampling is probabilistic unless you target the request. A controlled header rule is the practical way to capture one reproducible transaction.
Rank #3
-
Choose a temporary header name and value that your client can send, such as a private diagnostic header. Avoid placing secrets or personal data in the value.
The Tool Desk
Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy. -
Create a trace rule above broader rules, match that header, and set the rule’s sample rate to 100 percent.
-
Send one test request carrying the header and record its Ray ID from the response or request logs.
-
In Cloudflare Traces, search the relevant time range with
cloudflare.ray_id = "<ray>", then expand the root and Worker spans. -
Remove or disable the temporary rule after collecting the evidence. A permanent 100-percent rule can consume ingestion unnecessarily and may capture traffic your organization did not intend to retain.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
What the span hierarchy can—and cannot—tell you
Platform-level spans
The span reference describes a cloudflare_request root and a response span, along with supported request-processing operations. The hierarchy reflects the path the request actually took. Absence of an operation means either that it did not run or that the product does not yet emit a dedicated span for it.
Workers runtime spans
Workers tracing covers handler invocations, supported outbound fetch() calls, bindings, Durable Objects and RPC operations. Use custom spans for application logic that is not represented by those operations. For consistent Worker grouping across traces and logs, Cloudflare recommends the $metadata.service attribute. Attributes such as service.name and faas.name currently apply only to some spans, so do not assume either field is present everywhere.
Headers, URLs and query strings
Cloudflare captures header names and operations performed on headers, but not header values. URLs and query strings are captured. This affects both diagnosis and data review: you can verify that code inspected or modified a header, but you cannot use the trace to recover the value that was sent.
Duration and beta fields
Runtime security measures related to Spectre can cause non-I/O operations to report 0 ms even when they consumed CPU time. Treat a zero duration as a limitation of the timing data, not proof that the code did no work. Cloudflare also warns that span names and structure may change as the product evolves. Build dashboards and filters against the current span reference, and expect to revise them while tracing is in beta.
Rank #4
Wrangler configuration examples
Enable tracing and set a deliberate sample rate
Use an explicit rate when you want the configuration to document its sampling behavior:
{
"observability": {
"traces": {
"enabled": true,
"head_sampling_rate": 0.05
}
}
}
The value 0.05 requests an average of five sampled requests per 100. The accepted range is 0 to 1. If you omit the rate while tracing is enabled, Cloudflare documents a default of 1.
Export to an OpenTelemetry destination
Create and name the account-level destination in the Cloudflare dashboard, then use that exact name in Wrangler. A representative configuration is:
{
"observability": {
"traces": {
"enabled": true,
"destinations": ["prod-otel"],
"persist": true
}
}
}
Replace prod-otel with the destination name you created. Redeploy after changing the configuration. The persist setting defaults to true; set it to false when you want to export without storing the traces in Cloudflare. Verify the destination’s receipt after allowing several minutes, and remember that export does not add Cloudflare trace IDs to non-Cloudflare services.
Do these 3 things before closing this tab:
1Repair Windows errors before they cause bigger problems2Fix the driver behind crashes, sound loss and screen glitches3Clear out junk files and repair common Windows errorsCloudflare dashboard or an external destination?
The right location depends on whether the investigation ends at Cloudflare or crosses into your application stack.
| Question | Cloudflare Traces | OpenTelemetry destination |
|---|---|---|
| Where is the data queried? | In the Cloudflare Traces interface, using Cloudflare’s span hierarchy and filters. | In the configured observability system, using its search, dashboards and alerting. |
| Cross-service correlation | Strongest for Cloudflare edge and Worker operations. | Useful when the destination already receives application telemetry, but Cloudflare trace IDs are not currently propagated to outside services. |
| Delivery speed | Investigations can begin in the Cloudflare interface once the trace is available. | Cloudflare says exported events may take several minutes to arrive; this is an estimate, not a service-level guarantee. |
| Retention and cost | Subject to Cloudflare’s ingestion and storage rules; Free accounts have a daily ingestion limit. | Subject to the destination’s retention, ingestion and storage terms, which vary by provider. |
| Best fit | Checking edge routing, cache behavior, Workers and Cloudflare spans. | Combining Cloudflare events with telemetry from services that already export OpenTelemetry. |
Cloudflare documentation gives Honeycomb, Grafana Cloud and Axiom as examples of OpenTelemetry-compatible destinations. Their inclusion demonstrates compatibility, not a guarantee of current pricing, retention or feature terms.
Retention, policy and operational caveats
Workers traces are documented as retained for seven days. Plan ingestion limits and storage accounting are separate concerns, so a trace can age out even when the Worker remains correctly instrumented.
Cloudflare states that persisted Workers traces will begin contributing to account-level ingestion and storage usage on December 1, 2026. That is a future-dated policy statement as of the October 2026 documentation, so verify the current account terms before planning budgets or retention around it.
Because this feature is evolving, verify current documentation before hard-coding exact attribute names, span structures or dashboard queries. The most reliable diagnosis combines the Ray ID, deployment version, rule order, sampling decision and the request’s actual cache and product path.
Quick Recap
A compact diagnostic checklist
- Are you in Cloudflare Traces, rather than the Cloudflare Trace configuration simulator?
- Does the selected time range include the request, and does the Ray ID filter match the request?
- Is tracing enabled for the domain that handled the request?
- Is tracing enabled and deployed on every Worker that could have handled it?
- Did a first-match rule or a lower head-sampling rate exclude the request?
- Has the account reached its daily ingestion limit?
- Does
cloudflare.cache.statusshow a cache hit that bypassed the origin? - Is the missing operation one of the features without a dedicated span?
- Does the root still say
Trace in Progress? - For export, does the destination name match Wrangler exactly, was the change deployed, and have you allowed several minutes for delivery?
- Are you expecting an external service to share a Cloudflare trace ID even though propagation is not currently supported?
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

