Self-Hosted

Your server.
Your data.
Your rules.

Run Pensl on your own server. Client feedback, screenshots, and GitHub tokens never touch our infrastructure. One command to start. Works on any cheap VPS.

Get started — self-host today

Up and running in under 10 minutes

Download, set three environment variables, start. No servers to configure, no databases to provision separately.

terminal
# 1. Clone the repo
git clone https://github.com/blue-monkeys/pensl
cd pensl

# 2. Add your settings
cp .env.example .env
# Edit .env — set your domain, a secret, and an admin email

# 3. Start everything
docker compose up -d

 Dashboard running at https://your-server.com
 Widget served at /widget/pensl.js
 Database migrated automatically

Any VPS works

A €6/month Hetzner or DigitalOcean server is enough to run the full stack — dashboard, widget, and PostgreSQL. No special hardware needed.

PostgreSQL in a volume

All data lives in a named Docker volume on your server. Back up with pg_dump. Move to another server any time. No proprietary storage format.

Auto-migrations on startup

When you update Pensl, the database updates itself on boot. You never have to run migration commands manually.

GDPR-compliant by design

When your clients work under NDAs or are in regulated industries, where data lives is not a preference — it is a requirement. Pensl was built for this from the start.

  • No data ever sent to our servers — not even usage statistics
  • Client screenshots stored as files on your own disk
  • GitHub tokens encrypted at rest in your database
  • AI requests go directly from your server to your AI provider
  • You control the encryption key — it is your own secret
  • Delete data any time — no lock-in, no export hoops

Client leaves feedback

Widget on your client's staging site

Screenshot + feedback saved

Stored on your server — /data/screenshots

AI fix triggered

API call: your server → your AI key → GitHub

We never see any of this

Zero telemetry. No relay. No copy to our servers.

Who runs Pensl self-hosted

The self-hosted option is not just for large teams. It is for anyone who takes client data seriously.

Agencies with NDA clients

Some clients require that project assets — including feedback and screenshots — never leave your own systems. Self-hosting makes that easy to guarantee.

Clients in regulated industries

Healthcare, finance, legal — sectors where data residency rules apply. Running on your own EU server means you can show exactly where data lives.

Teams that hate per-seat pricing

Self-hosted Pensl has no per-seat fees. Add as many team members and clients as you like. Your only cost is the server, which starts at €6/month.

Builders who want full control

No black boxes. The source is open. You can inspect everything, modify anything, and upgrade on your own schedule. No forced migrations.

Self-hosted vs. paying for cloud seats

FeaturePensl self-hostedTypical cloud SaaS
Monthly costServer only — from €6Per seat, scales up fast
Data locationYour server, your countryVendor's cloud
GDPR controlYou own the dataDepends on vendor's DPA
Team seatsUnlimitedCharged per seat
Client accountsUnlimitedOften charged per project
Vendor lock-inNone — export any timeProprietary export or none
GitHub tokensEncrypted on your serverStored on vendor's servers
Uptime dependencyYour serverVendor's uptime

Your clients' data belongs on your server.

One Docker command. No per-seat fees. No data ever leaves your infrastructure.

Start free — self-host today