You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Pageload and navigation spans use the low cardinality fallbacks Pageload and Navigation, with segment name source url. Other browser SDKs name these after the matched route. SvelteKit starts with the fallback and upgrades the span with updateName once the route id resolves.
Remix 3 gives the browser nothing to name from. remix/ui exposes no matched route or params, and the runtime never matches routes client side.
The server already resolves the route pattern, so the likely fix is to pass it to the client: in the document for pageloads, on a response header for navigations. Then upgrade the span name and set the source to route.
Matching in the browser instead is possible, because the route map has no node: imports and the asset server already serves it, but it adds @remix-run/route-pattern to the client bundle and needs the app to opt in.
Activity
linear-code commentedon Sep 30, 2026
JS-3855
feat(remix): Report the matched route on Remix 3 HTML responses (#25052)
feat(remix): Parameterize Remix 3 page load spans (#25053)
feat(remix): Parameterize Remix 3 navigation spans (#25045)
github-actions commentedon Oct 7, 2026
A PR closing this issue has just been released 🚀
This issue was referenced by PR #25045, which was included in the 11.5.0 release.