
Deploy Tracearr — Plex, Jellyfin & Emby Analytics on Railway
Self-host Tracearr: stream analytics & account sharing detection. Free.
Redis
Just deployed
/data
Timescale
Just deployed
/pgdata
Tracearr
Just deployed
Deploy and Host Tracearr on Railway

Tracearr is a free, open-source monitoring platform for Plex, Jellyfin, and Emby — real-time stream analytics, an interactive geolocation world map, automated trust scoring, and intelligent account sharing detection that catches impossible travel and concurrent location violations. Unlike Tautulli which is Plex-only, Tracearr monitors all three major self-hosted media servers from a single unified dashboard.
This template deploys the full production stack: Tracearr, TimescaleDB for time-series analytics data, and Redis — pre-wired on Railway with one-click setup.
What This Template Deploys
| Service | Purpose |
|---|---|
| Tracearr | The monitoring platform — real-time stream dashboard, world map, detection rules engine, trust scoring, and webhook alerts served on port 3000 |
| TimescaleDB (pg18) | Time-series optimised PostgreSQL database — stores stream sessions, user activity, bandwidth metrics, and detection events with persistent volume at /pgdata |
| Redis 8 | Message queue for real-time event processing between media server webhooks and the Tracearr analytics engine |
All three services are pre-wired over Railway's private network. Database credentials and Redis URI are injected automatically — no manual connection string setup required.
About Hosting Tracearr
Running Tracearr requires a time-series database, a Redis message queue for webhook event processing, and a persistent HTTPS endpoint for receiving payloads from your media servers. Without a managed host, you're configuring Docker Compose, inter-service networking, volumes, and SSL manually. Railway provisions all three services automatically — connect your media servers via webhook and stream data appears on the dashboard in real time.
Typical cost: ~$5–10/month on Railway's Hobby plan. Tracearr is free and open-source.
Deploy in Under 5 Minutes
- Click Deploy on Railway — all three services build and wire automatically (~3–5 minutes)
- Open your Railway-assigned URL — the Tracearr setup UI loads immediately
- Connect your Plex, Jellyfin, or Emby server via the Settings panel — add your server URL and authentication token
- Configure the webhook URL in your media server to point to your Railway public domain
- Stream sessions and geolocation data appear on the dashboard in real time
No SSH. No Docker Compose. No manual database setup.

Common Use Cases
- Self-hosted alternative to Tautulli — get the same Plex analytics capability with a modern UI, plus support for Jellyfin and Emby in the same dashboard; Tautulli is Plex-only
- Account sharing detection across Plex, Jellyfin, and Emby — catch credential sharing with impossible travel detection, simultaneous location alerts, device velocity tracking, concurrent stream limits, and geographic restrictions
- Real-time stream monitoring for home media servers — see who's watching what, from which city, on which device, across all your media servers on a live interactive world map
- User trust scoring and behaviour profiling — automated trust scores build streaming behaviour profiles per user; flag anomalies and get Discord or webhook alerts instantly
- Bandwidth and watch history analytics — track playback patterns, bandwidth usage, and device activity over time to understand how your media library is being used
- Multi-server unified monitoring — manage analytics and detection rules for multiple Plex, Jellyfin, and Emby instances from a single Tracearr deployment
Configuration
| Variable | Required | Description |
|---|---|---|
DATABASE_URL | ✅ Auto-injected | TimescaleDB connection string — injected via Railway reference variable from the TimescaleDB service |
REDIS_URL | ✅ Auto-injected | Redis connection URI — injected from the Railway Redis service |
SECRET_KEY | ✅ Required | Application secret for session signing — generate a random 32+ character string |
PUBLIC_URL | ✅ Required | Your Railway public domain — required for webhook URL generation and OAuth callbacks |
PLEX_TOKEN | Optional | Plex authentication token — configure in the Tracearr UI after deploy |
JELLYFIN_API_KEY | Optional | Jellyfin API key — configure in the Tracearr UI after deploy |
EMBY_API_KEY | Optional | Emby API key — configure in the Tracearr UI after deploy |
DISCORD_WEBHOOK_URL | Optional | Discord webhook for detection rule alerts and notifications |
PORT | Auto-set | Railway injects the port automatically |
Media server API keys and tokens are best configured through the Tracearr Settings UI after deploy rather than as environment variables. The Settings panel provides guided connection setup for each supported media server.
Tracearr vs. Alternatives
| Tracearr | Tautulli | Varken | Plex Dashboard (built-in) | |
|---|---|---|---|---|
| Plex support | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes |
| Jellyfin support | ✅ Yes | ❌ No | ⚠️ Partial | N/A |
| Emby support | ✅ Yes | ❌ No | ❌ No | N/A |
| Account sharing detection | ✅ Built-in | ❌ No | ❌ No | ❌ No |
| Impossible travel alerts | ✅ Yes | ❌ No | ❌ No | ❌ No |
| Live geolocation map | ✅ Interactive world map | ❌ No | ❌ No | ❌ No |
| Automated trust scoring | ✅ Yes | ❌ No | ❌ No | ❌ No |
| Discord webhook alerts | ✅ Yes | ✅ Yes | ⚠️ Via Grafana | ❌ No |
| Self-hostable | ✅ Yes | ✅ Yes | ✅ Yes | ❌ Plex-hosted |
| Modern UI | ✅ Yes | ⚠️ Dated | ❌ No UI | ✅ Yes |
Dependencies for Tracearr Hosting
- Railway account — Hobby plan (~$5–10/month) covers all three services
- A running Plex, Jellyfin, or Emby media server (self-hosted or cloud)
- Webhook access from your media server to your Railway public URL
Deployment Dependencies
- Tracearr Official Website — product overview and feature details
- Tracearr Documentation — setup guides and configuration reference
- Tracearr GitHub Repository — source and releases
- Tracearr Discord Community — community support
- Railway Volumes Documentation — persistent storage setup
Implementation Details
This template deploys Tracearr alongside TimescaleDB and Redis 8, connected over Railway's private network. TimescaleDB stores stream sessions, analytics metrics, and detection events with time-series optimisation. Redis handles real-time webhook event processing between media servers and the analytics engine. Both database and Redis volumes persist independently — redeploys and updates preserve all historical data and trust scores.
Tracearr receives webhook events from Plex, Jellyfin, and Emby. Railway's HTTPS endpoint is the webhook destination URL you configure in each media server.
Frequently Asked Questions
What is the difference between Tracearr and Tautulli? Tautulli is Plex-only — no Jellyfin or Emby support. Tracearr monitors all three from one dashboard and adds features Tautulli lacks: impossible travel detection, trust scoring, a live geolocation world map, and concurrent location alerts. If you only run Plex, Tautulli is mature. If you run Jellyfin, Emby, or need account sharing detection, Tracearr is the choice.
How does account sharing detection work? Tracearr analyses stream session data in real time against configurable detection rules. Impossible travel flags two sessions from the same account in geographically impossible locations within a short time window. Simultaneous location detection catches concurrent streams from different cities. Device velocity tracking and concurrent stream limits add additional detection layers. When a rule fires, Tracearr sends an immediate alert via Discord webhook or custom webhook URL.
How much does Tracearr cost to run on Railway? Approximately $5–10/month on Railway's Hobby plan for the full three-service stack. Tracearr itself is free and open-source under AGPL-3.0. You pay only Railway compute with no per-user fees, no feature gating, and no subscription required.
Does my stream data leave my infrastructure? Yes. All stream session data and detection events are stored in your Railway TimescaleDB instance. Tracearr does not send analytics to any third-party service. Geolocation lookups for the world map may use an external IP lookup API — check the Tracearr docs for self-hosted geolocation options if full data isolation is required.
Do I lose analytics history if Railway redeploys? No. TimescaleDB and Redis both have persistent volumes mounted independently of their containers. All stream history, trust scores, detection events, and configuration survive redeploys, updates, and container restarts.
Can I monitor multiple Plex, Jellyfin, or Emby servers? Yes. Tracearr supports multiple server connections of each type simultaneously. Add each server in the Settings panel after deploy — each gets its own webhook configuration and streams data into the unified dashboard.
Why Deploy Tracearr on Railway?
Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.
By deploying Tracearr on Railway, you get a production-ready media server monitoring platform — real-time stream analytics, account sharing detection, geolocation mapping, and automated trust scoring — across Plex, Jellyfin, and Emby simultaneously, at ~$5–10/month with full data ownership and zero subscription fees.
Template Content
