LangSmith Self-Hosted — Cluster Sizing Calculator

Cluster resource requirements per selected component · Based on Helm chart v0.16+ defaults

Layout
Components & load profile
Components
Load Profile
Concurrent users (reads)10
Low 8Med 30High 50
Traces / second (writes)≈ 130M / month50
Low 15Med 200High 1k
Reads: MediumWrites: Medium
Databases, agents & options
PostgreSQL (LangSmith)
Internal StatefulSet
Not recommended for production
External managed
RDS / Cloud SQL — recommended
Traces Database (Storage)
In-cluster — single instance
OK for low/medium read load
In-cluster — 3-node replicated
Required for high read load
External / ClickHouse Cloud
No cluster resources consumed
SmithDB
Enable SmithDBBETA
S3-native trace database — fixed pod footprint, arm64 node pool. Requires ClickHouse (above) to stay active in dual-write mode.
Redis (LangSmith)
Internal StatefulSet
Default 8 GiB — fine for low writes
External managed
Required for high writes (≥26 GiB)
Trace Retention (TTL)
~60 GiB/day (med writes), ~600 GiB/day (high writes) without blob. With blob enabled, CH stores only references + search tokens (~20% of that).
Options
Blob storage (S3 / GCS / Blob)
Required at high write scale
HPA + KEDA autoscaling
Replica counts become ceilings; tiles also show the steady-state floor
Sandboxes
Enable sandboxesBETA
Code-execution workloads — adds 1 dedicated bare-metal node, not counted in vCPU/RAM totals

Cluster Resource Requirements

MediumMedium

Profile: Low→Med/Low→Med · 20% scheduling overhead included

Traces
Total vCPU needed
25 cores
services + in-cluster DBs
at rest 23 → ceiling 25 cores
Total RAM needed
56 GiB
services + in-cluster DBs
at rest 51 → ceiling 56 GiB
Est. worker nodes
4 nodes
8 vCPU / 32 GiB each
at rest 3 → ceiling 4 nodes
ClickHouse storage
84 GiB
14d TTL

Service Replicas

16 total pods
ServiceReplicasCPU reqRAM req
backend44.08.0 Gi
platform-backend33.06.0 Gi
ingest-queue44.08.0 Gi
frontend21.02.0 Gi
ace-backend11.02.0 Gi
playground10.51.0 Gi
queue11.02.0 Gi
Services total14.529.0 Gi

Storage

ClickHouse
84 GiB
14d TTL
PostgreSQL
50 GiB
+ enable autoexpansion
Redis
9 GiB
managed externally
ClickHouse requires SSD with 7,000+ IOPS and 1,000 MiB/s throughput.

Node Pool Guidance

Application node pool
4× — 8 vCPU / 32 GiB RAM
m5.2xlargen2-standard-8Standard_D8s_v38 vCPU / 32 GiB equivalent worker
ClickHouse node pool
1× — 6 vCPU / 17 GiB RAM / 84 GiB SSD
Dedicate to its own node pool or use node affinity to prevent resource contention.

Databases

In-cluster rows are counted in the vCPU/RAM totals above. External rows are what to provision outside the cluster — sized here, but not part of those totals. Open a row for instance types and requirements.
Instance types come from the Production terraform sizing profile: Real traffic, multi-replica with HPA. Roughly 20 concurrent users, 100 traces/sec.
DatabaseRunsCPU reqRAM reqStorage
LangSmith PostgreSQLscales with the sizing profileexternal432 Gi50 Gi
ClickHousesingle617 Gi84 Gi
LangSmith Redisscales with write loadexternal29 Gi
In-cluster DB total6.017.0 Gi
Azure Cache for Redis (Basic/Standard/Premium) is retiring — size new deployments against Azure Managed Redis.
Scaling self-hosted LangSmith · Terraform sizing profiles · External Postgres · External Redis

Architecture Diagram

values.yaml snippet
# ═══════════════════════════════════════════════════════════════════════
# REFERENCE GUIDANCE ONLY — not a production-ready values.yaml.
# This snippet shows which keys to configure and rough sizing based on your
# inputs. Review against the current chart defaults, fill in real secrets/
# connection strings, and validate in a staging environment before deploying.
# ═══════════════════════════════════════════════════════════════════════

# ── langsmith chart ────────────────────────
config:
  blobStorage:
    enabled: true

# ── Scaled services ─────────────────────────
frontend:
  deployment:
    replicas: 2

platformBackend:
  deployment:
    replicas: 3

ingestQueue:
  deployment:
    replicas: 4
  autoscaling:
    keda:
      enabled: true
      minReplicaCount: 3
      maxReplicaCount: 4

backend:
  deployment:
    replicas: 4

# ── PostgreSQL ──────────────────────────────
postgres:
  external:
    enabled: true
    connectionUrl: "<postgres-connection-url>"
# Required: 4 vCPU / 32 GiB / 50 GiB storage with autoexpansion (terraform Production profile)
# Floor from the scale guide: 2 vCPU / 8 GiB / 10 GiB, flat at every load
# PostgreSQL 14 or newer, admin user able to create: btree_gin, btree_gist, pgcrypto, citext, ltree, pg_trgm

# ── Redis ───────────────────────────────────
redis:
  external:
    enabled: true
    existingSecretName: langsmith-redis-secret
# Required: ≥9 GiB, 2 vCPU, Redis 5 or newer, or Valkey 8
# Dedicated to this installation — never shared with another LangSmith installation

# ── ClickHouse / SmithDB ────────────────────
clickhouse:
  statefulSet:
    persistence:
      size: 84Gi
    resources:
      requests:
        cpu: "6"
        memory: "17Gi"
      limits:
        cpu: "12"
        memory: "26Gi"