Deploy OpenPanel

Open-source Mixpanel alternative: funnels, retention & replay

Deploy OpenPanel

Just deployed

/var/lib/postgresql/data

Just deployed

op-redis

redis:8.2.1

Just deployed

/data

Just deployed

/var/lib/clickhouse

Just deployed

Just deployed

Deploy and Host self hosted OpenPanel (Open-Source Product Analytics) on Railway

OpenPanel 2.3.0 runs as a digest-pinned seven-service stack on Railway. It pins current lindesvard/openpanel-api, -dashboard, and -worker images, sets API_HOST=:: for IPv6, and needs no deploy-time config beyond one public domain. You get event analytics, sessions, funnels, and replays without a SaaS.

About Hosting OpenPanel open-source software on Railway (self hosted OpenPanel template)

OpenPanel is AGPL-3.0 product analytics with a Next.js dashboard, Fastify API, Postgres for accounts, ClickHouse for events, and Redis for cache, pub/sub, and queues. The Railway template deploys seven digest-pinned services for 2.3.0, updating the older 2.2 listing. op-proxy runs caddy:2-alpine on port 8080 and is the only public service.

Private services: op-api (Fastify, port 3000, runs pnpm -r run migrate:deploy before start), op-dashboard (Next.js, port 3000, health /api/healthcheck), op-worker (queue jobs, port 3000), op-postgres (postgres-ssl:17, volume), op-redis (8.2.1, password, appendonly, volume /data), and op-clickhouse (25.12, HTTP 8123, listens on ::, volume /var/lib/clickhouse, noisy logs disabled).

Why Deploy OpenPanel, the Mixpanel alternative on Railway (Railway Free Trial)

OpenPanel gives product analytics without per-event SaaS pricing. One public domain keeps cookies working without a custom domain; /api/healthcheck through the proxy returns ready with redis, db, and ch flags. Start with Railway's $5 trial, then expect about $20-40/mo at low volume because all seven services stay running.

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 OpenPanel on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.

Railway vs Other Hosting Providers and VPS for OpenPanel self hosting

ProviderSetupCostMaintenanceBest for
DigitalOceanManual Docker Compose or one-click dropletPredictable VPS pricing, but you pay for unused capacityYou manage OS updates, backups, and scalingTeams comfortable with Linux and Docker
AWSManual ECS, EC2, or RDS/ClickHouse setupComplex, can grow quickly with data egress and storageHigh operational overhead, IAM, security groupsEnterprises with existing AWS governance
HetznerManual VPS plus Docker ComposeCheap compute and storage, especially in EUYou handle everything, including ClickHouse tuningCost-sensitive self-hosters in Europe

Common Use Cases for hosted OpenPanel

OpenPanel suits product teams needing user-level analytics without a third-party SaaS. Track activation funnels, build retention cohorts, inspect user profiles and session history, and watch session replays for debugging. Real-time dashboards support launch monitoring; A/B testing breakdowns compare variants without extra tooling.

Dependencies for OpenPanel Docker hosted on Railway

The Railway template uses Docker images for the OpenPanel API, dashboard, and worker, plus Postgres, Redis, ClickHouse, and Caddy containers. All run on Railway's private network; only op-proxy exposes a public port. Persistent volumes are required for Postgres data, Redis appendonly data, and ClickHouse events.

Deployment Dependencies for Managed OpenPanel Service (Product Analytics)

The managed deployment needs Postgres 17 with SSL, Redis 8.2.1 with password and appendonly persistence, and ClickHouse 25.12 listening on IPv6. The API needs DATABASE_URL and DATABASE_URL_DIRECT for migrations and direct queries. The worker needs REDIS_URL for queues and CLICKHOUSE_URL for event writes.

Implementation Details for OpenPanel (Using OpenPanel official docker images)

The template uses digest-pinned lindesvard/openpanel-api, -dashboard, and -worker images for 2.3.0. API and worker set API_HOST=:: so they listen on IPv6 for Railway private networking, matching upstream docs. The API runs pnpm -r run migrate:deploy on start, then serves port 3000 with /healthcheck. The dashboard serves Next.js on port 3000 with /api/healthcheck.

How does OpenPanel compare against other analytics platforms

OpenPanel vs Mixpanel

  • Licensing: OpenPanel AGPL-3.0 self-hostable; Mixpanel closed SaaS.
  • Data ownership: OpenPanel stores events in your ClickHouse/Postgres; Mixpanel keeps them on its servers.
  • Pricing: Self-host OpenPanel free unlimited; Mixpanel free tier then per-event.
  • Features: Both offer funnels, retention, cohorts, profiles, replay, A/B; OpenPanel runs on your stack.

OpenPanel vs PostHog

  • Open-source scope: OpenPanel full AGPL-3.0; PostHog core MIT, some enterprise closed.
  • Feature breadth: PostHog adds feature flags and experiments; OpenPanel focuses on analytics, replay, dashboards.
  • Self-host weight: OpenPanel Railway template lighter; PostHog recommended self-host adds Kafka and object storage.
  • Hobby limits: PostHog hobby deploy limited; OpenPanel self-host has no event or feature cap.

OpenPanel vs Plausible

  • Analytics type: Plausible is privacy-friendly web analytics with pageviews; OpenPanel is user-level product analytics with events, funnels, cohorts, replay.
  • Self-host stack: Plausible simpler, single service plus Postgres and ClickHouse; OpenPanel adds Redis, worker, proxy.
  • Use case: Plausible replaces Google Analytics for traffic; OpenPanel replaces Mixpanel or Amplitude for product behavior.

OpenPanel vs Google Analytics 4

  • Data access: GA4 sampled or delayed UI, raw data via BigQuery; OpenPanel direct SQL to ClickHouse events.
  • Pricing: GA4 free up to limits but locks you into Google; OpenPanel self-hosting free unlimited.
  • Privacy: GA4 faces GDPR challenges in parts of EU; self-hosted OpenPanel keeps data in your Railway region.

How to use OpenPanel (the OSS product analytics platform)?

After deploy, open the public domain. Create the first account; registration closes automatically after it. Create a project, copy the web SDK snippet, and add it to your site. Point the SDK's apiUrl at https://your-app.up.railway.app/api. For mobile, install the React Native, Swift, or Kotlin SDK and use the same apiUrl. For server events, use a server SDK.

How to self host OpenPanel on other VPS Services (OpenPanel self hosting guide)

Upstream provides Docker Compose files and a setup script at openpanel.dev/docs/self-hosting. The flow: clone the repository, install Docker and Node dependencies, configure environment variables, and start services. Size the VPS for ClickHouse and bring a domain or subdomain.

Clone the Repository

Run git clone https://github.com/Openpanel-dev/openpanel and pin the 2.3.0 images rather than tracking latest. The repository includes Docker Compose definitions, migration scripts, and example environment files.

Install Dependencies

Install Docker Engine and Docker Compose. Node.js and pnpm are needed only if you build images yourself. The upstream setup script can install packages and start the stack, but review what it changes first.

Configure Environment Variables

Let the setup script generate the env file, or set SELF_HOSTED=true, COOKIE_SECRET, DATABASE_URL, DATABASE_URL_DIRECT, REDIS_URL, CLICKHOUSE_URL, DASHBOARD_URL, API_URL, and API_URL_SSR. Generate passwords for Postgres, Redis, and ClickHouse. Set ALLOW_REGISTRATION=true for the first user and ALLOW_INVITATION=true.

Start the OpenPanel Application

Run docker compose up -d or the setup script. Wait for API migration, then check /api/healthcheck through the proxy or directly on the API port. Open the dashboard, create the first account, add your SDK snippet, and confirm events appear in a live dashboard.

Official Pricing of OpenPanel (OpenPanel pricing)

OpenPanel cloud pricing is based on monthly events, everything else unlimited: 5K events $2.50/mo, 100K $20/mo, 1M $90/mo, 10M $350/mo. Yearly billing gives two months free, with a 30-day free trial. Self-hosting is free with unlimited events, but you pay infrastructure.

OpenPanel cloud vs self hosted comparison (Pricing, features, costs, and more)

Cloud removes infrastructure work but charges per event. Self-hosting on Railway costs a flat monthly amount and allows unlimited events, but you manage backups, upgrades, and scaling.

Monthly cost of self hosting OpenPanel on Railway

Expect about $20-40/mo at low volume, because ClickHouse, Postgres, Redis, and four app services run continuously. ClickHouse is the biggest line, and it grows with event volume and retention.

System Requirements for Hosting OpenPanel on a VPS

ClickHouse wants the most memory, so give it room first. The four Node services are light, and Postgres and Redis stay small. Plan disk around event volume and retention.

Frequently Asked Questions (FAQs)

Is OpenPanel free to self host?

Yes. It is AGPL-3.0 with unlimited events; you pay only for hosting.

Why is there a Caddy proxy?

It puts the dashboard and API on one public domain, so cookies and the SDK apiUrl work without a custom domain.

What does API_HOST=:: do?

It makes the API and worker listen on IPv6, which Railway's private network uses. Without it, internal calls fail.

How do I close sign-ups?

Registration closes automatically after the first account. Invite teammates after that.

How do I send invite and reset emails?

Set RESEND_API_KEY and EMAIL_SENDER on the app services and redeploy.

How do I update OpenPanel?

Change the pinned api, dashboard, and worker tags together to a newer release and redeploy. The API runs migrations on start.


Template Content

More templates in this category

View Template
NEW
Formbricks | Open-Source Typeform & Qualtrics Alternative
Surveys, NPS and in-app feedback on your own Postgres, Hub and Cube

Two Workspaces
2
View Template
Typesense PHP
official PHP client against Railway

onepush
0
View Template
Typesense vs Meilisearch
self-hosted Typesense vs Meilisearch

onepush
0