Know what to fix first
Traceway scores every endpoint and exception by real user impact, then ranks them. You open the dashboard and immediately know what needs attention. No triage meetings. No alert fatigue.
Works with OpenTelemetry, Go, JavaScript
One score. Five signals. Zero guesswork.
The Impact Score combines five service-level indicators into one automatic priority for every endpoint. It takes the max across all five - if any single signal is bad, the endpoint surfaces immediately.
The Impact Score takes the max across five SLIs: Inverted apdex variant, Error rate floor, P99 floor, Client error floor, Volume error floor.
Every exception, grouped and ranked
Full stack traces, 10-step normalization, SHA-256 grouping. Thousands of duplicates collapse into one ranked issue so you fix what matters first.
- Full stack trace capture
- Intelligent error grouping
- User impact analysis

See exactly what the user did
Traceway captures ~10 seconds of user activity before every error. Clicks, scrolls, and form interactions are attached to exceptions automatically - no manual reproduction needed.
- Pre-error activity capture
- Automatic attachment to exceptions
- Clicks, scrolls, and form interactions

Drill into any request
Request/response details, waterfall traces, and custom context tags. Understand the exact state of your application for every single trace.
- Detailed request/response data
- Waterfall trace view
- Custom context & tagging

100% open source. No asterisks.
Not BSL. Not source-available. Not “open core.” Every feature works identically self-hosted or on cloud. Deploy with a single Docker command.
docker compose up -dSend from any OpenTelemetry source
Already instrumented with OTel? Point your OTLP exporter at Traceway. No proprietary SDK lock-in.
No OpenTelemetry? No Problem!
Two lines of code. That's it.
Add the middleware to your router and start collecting actionable telemetry instantly. No complex configuration required.
func main() {
r := gin.Default()
r.Use(tracewaygin.New("{TOKEN}@https://{SERVER_URL}/api/report"))
r.GET("/test", func(ctx *gin.Context) {
ctx.AbortWithError(500, fmt.Errorf("Worked!"))
})
r.Run(":8080")
}Designed for efficiency. Built to lower your cloud bill.
Traceway runs lean. ClickHouse columnar storage compresses 1 million daily events into ~2-3 GB per month. Postgres is used for efficient user and organization storage.
Frequently Asked Questions
Everything you need to know about Traceway.