NEW 2026.10 RELEASE 45 Commercial SaaS Tools mapped to 71 Self-Hosted & Local AI Alternatives with instant Caddy Auto-SSL Docker configs.
OPEN-SOURCE MIGRATION BENCHMARK License: MPL-2.0 ★ 34.1k GitHub Stars

Replace Figma with Self-Hosted Penpot

The open-source web-based design & prototyping tool built on native SVG and CSS Grid/Flexbox standards Stop paying Professional ($15/editor/mo + Dev Mode seats) ($150/mo for a 10-person team) and run Penpot on a $4.50/mo Linux VPS with full data sovereignty.

10-Seat Annual Savings
+$1,746 / yr
vs Figma standard plan
Container RAM & vCPU
1536 MB RAM
2.0 vCPU • Migration: Easy
Recommended Cloud Box
$4.50/mo VPS
Hetzner CX22 (4GB RAM / 2 vCPU)

1-to-100 Seat Total Cost of Ownership (TCO) Table

Comparing Figma (Professional ($15/editor/mo + Dev Mode seats)) vs Penpot on Hetzner CX22 (4GB RAM / 2 vCPU).

Team Size Figma Cost Penpot VPS Net Annual Savings
1 Seat (Solo) $15.00/mo ($180/yr) $4.50/mo (CX22) +$126 / year
5 Seats $75.00/mo ($900/yr) $4.50/mo (CX22) +$846 / year
10 Seats $150.00/mo ($1,800/yr) $4.50/mo (CX22) +$1,746 / year
25 Seats $375.00/mo ($4,500/yr) $4.50/mo (CX22) +$4,446 / year
50 Seats $750.00/mo ($9,000/yr) $4.50/mo (CX22) +$8,946 / year
100 Seats $1,500.00/mo ($18,000/yr) $4.50/mo (CX22) +$17,946 / year

Production Docker Compose + Caddy Auto-SSL

Copy and run docker compose up -d on any Ubuntu 24.04 server.

Open in Multi-Tool Builder →
# Production Docker Compose: Penpot (Replaces Figma)
services:
  caddy:
    image: caddy:2-alpine
    restart: unless-stopped
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - ./Caddyfile:/etc/caddy/Caddyfile:ro
      - caddy_data:/data
    networks:
      - stack_net

  penpot:
    image: penpotapp/frontend:latest
    container_name: stack-penpot
    restart: unless-stopped
    environment:
      - "PENPOT_PUBLIC_URI=https://design.${DOMAIN:-yourdomain.com}"
      - "PENPOT_FLAGS=enable-registration enable-login-with-password"
    volumes:
      - penpot_data:/data
    networks:
      - stack_net

  postgres:
    image: pgvector/pgvector:pg16
    container_name: stack-postgres
    restart: unless-stopped
    environment:
      - "POSTGRES_USER=postgres"
      - "POSTGRES_PASSWORD=${POSTGRES_PASSWORD:-strongpassword}"
    volumes:
      - postgres_data:/var/lib/postgresql/data
    networks:
      - stack_net

  redis:
    image: redis:7-alpine
    container_name: stack-redis
    restart: unless-stopped
    volumes:
      - redis_data:/data
    networks:
      - stack_net

networks:
  stack_net:
    driver: bridge

volumes:
  caddy_data:
  penpot_data:
  postgres_data:
  redis_data:
Caddyfile (Automatic HTTPS Reverse Proxy):
# Automatic Let's Encrypt HTTPS for Penpot
penpot.{$DOMAIN:yourdomain.com} {
  encode zstd gzip
  reverse_proxy penpot:9001
}

Why Teams Switch to Penpot

  • ✓Native CSS Grid & Flexbox layout engine
  • ✓Free inspect mode for unlimited developers
  • ✓Open SVG standard files—no proprietary lock-in
GitHub Repository penpot/penpot
Official Website penpot.app
Docker Image penpotapp/frontend:latest
Database Needed PostgreSQL 16 + Redis
PRODUCTION BOILERPLATE ZIP

Get All 16 Pre-Built Production Stacks + Encrypted S3 Backups

Includes pre-tuned docker-compose.yml, Caddy Auto-SSL, AES-256 encrypted nightly S3/R2 Postgres backups, and Ubuntu 24.04 UFW/Fail2ban hardening scripts.