<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/connect-client-traces-to-your-logs-hfytxrfls" -->

---
title: Connect client traces to your logs | daily.dev
description: supabase-js now supports propagating W3C Trace Context (traceparent, tracestate, baggage headers) so a client-side trace and its matching Supabase API Gateway...
canonical: https://daily.dev/posts/connect-client-traces-to-your-logs-hfytxrfls
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Connect client traces to your logs | daily.dev
og:description: supabase-js now supports propagating W3C Trace Context (traceparent, tracestate, baggage headers) so a client-side trace and its matching Supabase API Gateway...
og:url: https://daily.dev/posts/connect-client-traces-to-your-logs-hfytxrfls
og:image: https://api.daily.dev/og/posts/hFYtXrFlS.png
og:image:alt: Connect client traces to your logs
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Connect client traces to your logs

**[Supabase](https://daily.dev/sources/supabase)** · 4 min read · 6 upvotes · 1 comments

## Summary

supabase-js now supports propagating W3C Trace Context (traceparent, tracestate, baggage headers) so a client-side trace and its matching Supabase API Gateway or Edge Function log share the same trace_id. Enabling tracePropagation requires bringing your own OpenTelemetry tracer, loading a separate tracing entry point, and wrapping calls in an active span. The feature is opt-in with zero bundle impact when unused, works only against Supabase domains, currently covers API Gateway and Edge Function logs, and is also available in Swift, Flutter, and Python. Users on supabase-js 2.106.0-2.111.x need to upgrade to 2.112.0+ and add the new tracing import, since earlier versions silently sent no trace headers in bundled apps.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://supabase.com/blog/connect-client-traces-to-your-logs>

## Questions this post answers

### How do I connect supabase-js client traces to Supabase server logs?

Import '@supabase/supabase-js/tracing' at your application entry point and enable the tracePropagation option on the client. This attaches traceparent, tracestate, and baggage headers to requests sent to Supabase domains, and Supabase stamps the same trace_id onto API Gateway and Edge Function logs, letting any W3C-compliant tracer like OpenTelemetry, Sentry, Datadog, or Honeycomb join client and server traces.

_daily.dev surfaces setup guides like this for developers wiring observability into their Supabase apps._

### Why is trace propagation not working even though I enabled tracePropagation in supabase-js?

Versions 2.106.0 through 2.111.x silently sent no trace headers in bundled apps despite tracePropagation being enabled; upgrading to supabase-js 2.112.0 or later and adding the import '@supabase/supabase-js/tracing' line at the entry point actually fixes propagation. Also check that an active span exists and a real TracerProvider is registered, since the API defaults to a no-op provider otherwise.

_track breaking fixes like this supabase-js upgrade on daily.dev before they bite in production._

### Does enabling OpenTelemetry tracing in supabase-js increase my bundle size if I don't use it?

No, the OpenTelemetry integration lives behind its own separate entry point, so the main supabase-js bundle contains zero OpenTelemetry code and nothing is added to bundle size or resolved at build time unless explicitly imported. This keeps React Native/Hermes, Metro, and edge bundlers unaffected until a developer opts in.

_developers weighing bundle-size tradeoffs for observability tooling can follow updates like this on daily.dev._

## Community discussion

Top comments from developers on daily.dev.

**@byteoutlaw** · 0 upvotes

> Why does it only work on supabase domains?

## Similar posts on daily.dev

- [Fixing Broken Traces in GCP Cloud Run: A Custom OpenTelemetry Propagator](https://daily.dev/posts/fixing-broken-traces-in-gcp-cloud-run-a-custom-opentelemetry-propagator-2kwtpexct) · Last9 · 0 upvotes · 0 comments
- [Introducing Cloudflare Traces: follow requests through our entire platform](https://daily.dev/posts/introducing-cloudflare-traces-follow-requests-through-our-entire-platform-jn3yujwox) · Cloudflare · 1 upvotes · 0 comments
- [GitHub - tracewayapp/traceway: The only tool you need to know what is happening and how to fix it.](https://daily.dev/posts/github---tracewayapp-traceway-the-only-tool-you-need-to-know-what-is-happening-and-how-to-fix-it--axcjlr6uz) · Hacker News · 3 upvotes · 0 comments
- [Zero-code trace-log correlation with OBI](https://daily.dev/posts/zero-code-trace-log-correlation-with-obi-hjbhu0tpy) · OpenTelemetry · 5 upvotes · 0 comments

---

Tags: [#javascript](https://daily.dev/tags/javascript), [#devops](https://daily.dev/tags/devops), [#observability](https://daily.dev/tags/observability), [#opentelemetry](https://daily.dev/tags/opentelemetry), [#supabase](https://daily.dev/tags/supabase)

[View this post on daily.dev](https://daily.dev/posts/connect-client-traces-to-your-logs-hfytxrfls)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Connect client traces to your logs","url":"https://daily.dev/posts/connect-client-traces-to-your-logs-hfytxrfls","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/connect-client-traces-to-your-logs-hfytxrfls"},"datePublished":"2026-08-18T17:08:41.584Z","dateModified":"2026-09-13T20:58:56.819Z","description":"supabase-js now supports propagating W3C Trace Context (traceparent, tracestate, baggage headers) so a client-side trace and its matching Supabase API Gateway...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/ae052757141c26b373c201a7d51b81f7?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/ae052757141c26b373c201a7d51b81f7?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Supabase","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Supabase","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/d0aa77cfb88d44dd8e6d5cd02fdf80bd","url":"https://daily.dev/sources/supabase"},"commentCount":1,"discussionUrl":"https://daily.dev/posts/connect-client-traces-to-your-logs-hfytxrfls","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":6},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":1}],"keywords":"javascript,devops,observability,opentelemetry,supabase","timeRequired":"PT4M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Supabase","item":"https://daily.dev/sources/supabase"},{"@type":"ListItem","position":3,"name":"Connect client traces to your logs"}]}
{"@context":"https://schema.org","@type":"WebPage","@id":"https://daily.dev/posts/connect-client-traces-to-your-logs-hfytxrfls","comment":[{"@type":"Comment","text":"Why does it only work on supabase domains?","datePublished":"2026-08-18T20:12:43.945Z","url":"https://daily.dev/posts/hFYtXrFlS#c-wRTDKkiZq","author":{"@type":"Person","name":"Jacob B. Bonde","url":"https://daily.dev/byteoutlaw","image":"https://media.daily.dev/image/upload/s--veTChHK7--/f_auto/v1733220070/avatars/avatar_5cQvIZKr5tDFDotVDjulg"}}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/connect-client-traces-to-your-logs-hfytxrfls#faq","mainEntity":[{"@type":"Question","name":"How do I connect supabase-js client traces to Supabase server logs?","acceptedAnswer":{"@type":"Answer","text":"Import '@supabase/supabase-js/tracing' at your application entry point and enable the tracePropagation option on the client. This attaches traceparent, tracestate, and baggage headers to requests sent to Supabase domains, and Supabase stamps the same trace_id onto API Gateway and Edge Function logs, letting any W3C-compliant tracer like OpenTelemetry, Sentry, Datadog, or Honeycomb join client and server traces. daily.dev surfaces setup guides like this for developers wiring observability into their Supabase apps."}},{"@type":"Question","name":"Why is trace propagation not working even though I enabled tracePropagation in supabase-js?","acceptedAnswer":{"@type":"Answer","text":"Versions 2.106.0 through 2.111.x silently sent no trace headers in bundled apps despite tracePropagation being enabled; upgrading to supabase-js 2.112.0 or later and adding the import '@supabase/supabase-js/tracing' line at the entry point actually fixes propagation. Also check that an active span exists and a real TracerProvider is registered, since the API defaults to a no-op provider otherwise. track breaking fixes like this supabase-js upgrade on daily.dev before they bite in production."}},{"@type":"Question","name":"Does enabling OpenTelemetry tracing in supabase-js increase my bundle size if I don't use it?","acceptedAnswer":{"@type":"Answer","text":"No, the OpenTelemetry integration lives behind its own separate entry point, so the main supabase-js bundle contains zero OpenTelemetry code and nothing is added to bundle size or resolved at build time unless explicitly imported. This keeps React Native/Hermes, Metro, and edge bundlers unaffected until a developer opts in. developers weighing bundle-size tradeoffs for observability tooling can follow updates like this on daily.dev."}}]}
```

