Switching clouds? Get up to $10K in credits + hands-on help.
Apply nowLangfuse 4
Why deploy Langfuse 4 on Render?
Langfuse is an open-source observability and analytics platform for LLM applications, providing tracing, evaluation, prompt management, and metrics for AI-powered systems. It solves the problem of debugging and monitoring non-deterministic LLM workflows by capturing detailed traces of model calls, chains, and agents so developers can measure cost, latency, and output quality. Langfuse v4 can be self-hosted, and this template deploys it on Render as separate web, worker, and data store resources.
This template wires up Langfuse v4's entire multi-service stack—web service, background worker, ClickHouse, MinIO object storage—alongside a managed PostgreSQL 18 database and Render Key Value instance, with all inter-service connections, buckets, and credentials (SALT, ENCRYPTION_KEY, NEXTAUTH_SECRET, ClickHouse and MinIO passwords) generated and injected automatically on the first Blueprint sync. Doing this by hand means managing your own Postgres and Redis, translating the upstream Docker Compose into production infrastructure, and handling fiddly edge cases like URL-encoding the ClickHouse password during migrations and formatting the encryption key to 64-char hex—all of which the startup commands here already handle. Render's managed Postgres and Key Value replace containers you'd otherwise operate yourself, private networking isolates the stack from other environments while keeping MinIO's presigned URLs reachable, and you can adjust instance plans, disk sizes, backups, and scaling per resource without rebuilding the architecture.
Architecture
What you can build
After deploying, you'll have a self-hosted Langfuse v4 instance running in your own Render project, with the web app, background worker, and all its data stores (PostgreSQL, ClickHouse, MinIO, and a key-value store) provisioned and connected. You can start tracing and evaluating your LLM applications, capturing prompts, model calls, and their metadata, without sending that data to a third-party service. The default plans are sized for evaluation rather than production traffic, so you'll need to scale up the instance types, storage, and recovery settings before handling real workloads.
Key features
- Multi-service architecture: Deploys separate web service, background worker, and data stores (PostgreSQL, Key Value, ClickHouse, MinIO) as distinct Render resources rather than a single container.
- Auto-generated secrets: Render generates SALT, ENCRYPTION_KEY, NEXTAUTH_SECRET, CLICKHOUSE_PASSWORD, and MINIO_ROOT_PASSWORD on first sync, with startup commands converting ENCRYPTION_KEY to the required 64-character hex format.
- Docker Compose parity: Matches the upstream Langfuse v4 Docker Compose setup using identical image versions (Langfuse v4, ClickHouse 25.12), ports, credentials, buckets, and object storage paths.
- Private network isolation: The environment blocks private network traffic from other Render environments, exposing only MinIO publicly for presigned media URLs while still requiring signed requests.
- Documented production scaling path: Provides a mapping from cost-conscious defaults to production baseline instance types per resource, including the NODE_OPTIONS heap adjustment when moving web/worker to pro plans.
Use cases
- ML engineer traces LLM app calls to debug production latency spikes
- Startup CTO self-hosts Langfuse to keep prompt data in-house
- Platform team deploys observability stack with managed Postgres and ClickHouse
- AI product manager evaluates prompt versions using self-hosted analytics dashboards
What's included
Service | Type | Purpose |
|---|---|---|
langfuse | Web Service | Application service |
langfuse-worker | Background Worker | Application service |
langfuse-clickhouse | Private Service | Application service |
langfuse-minio | Web Service | Application service |
langfuse-key-value | keyvalue | Application service |
langfuse-postgres | PostgreSQL | Primary database |
Next steps
- Open the Langfuse web service URL and complete the initial sign-up form to create your first user and organization — You should land on the Langfuse dashboard, and the account you just created becomes the instance owner since this is the first sign-up on a fresh PostgreSQL database
- Create a project in the Langfuse dashboard and generate an API key pair, then send a test trace using the Langfuse SDK with those keys — You should see the trace appear under the project's Tracing view within a few seconds, confirming the web service, worker, ClickHouse, and Key Value queue are all connected
- Upload or attach media to a trace and open its presigned URL from the trace detail view — The media should load in your browser from the public MinIO service URL, confirming the
langfusebucket and signed-request object storage path work end to end
Resources
Repository
Stack
Tags
For AI agents
Drop into your coding agent to explore and deploy this template.