Self-hosted employee monitoring

Know how the workday is really spent. On your own server.

PTM Clearwork shows you screenshots, activity, idle time and who's online right now, across Windows, Mac and Linux. It runs on your own server, fully encrypted, with optional customer-controlled S3-compatible storage.

One-time, from $499 Pay once, own it and self-host, or let us host it from $49/mo. Free 7-day trial, no card.
Buy once & own it AES-256 encrypted Set up in minutes
https://your-company.com/ptm-clearwork-dashboard/
Active now
18
Idle
4
Offline
9
EmployeeStatus
ARAanya RaoActive
JMJonas MüllerIdle
SKSam KhanActive
LBLucia BianchiOffline
Activity - last 8 hours
3 OS
Windows - macOS - Linux
AES-256
Encrypted at rest
100%
Self-hosted, your data
Real-time
Live presence & control
Everything you need

One agent covers the whole workday.

A complete monitoring stack: a desktop agent, a secure API, and a clean dashboard. Transparent, efficient, and entirely yours.

01

Screenshot monitoring

Periodic desktop captures, compressed to WebP so storage stays tiny, and encrypted before they ever touch the disk. You control the interval, quality and resolution.

02

Activity & idle tracking

Keyboard and mouse activity with smart idle detection, plus the active app and browser URL. You can tell real focused work from away-from-keyboard time.

03

Real-time presence

A secure websocket keeps live Active / Idle / Offline status flowing to the dashboard. The "Active Now" count updates instantly, no refresh needed.

04

Monitoring hours

Restrict tracking to set working hours and weekdays, per employee or in bulk. Outside those hours the agent fully pauses, and changes reach running agents in real time.

05

Productivity dashboard

A fast dashboard with per-employee timelines, screenshot galleries, activity charts and productivity breakdowns. Everything is a click from the dashboard home.

06

Self-hosted & private

Runs on your own server with Docker: MongoDB and a self-contained Node server that serves both the API and the dashboard. You control retention, access and every byte of data. Optional cloud storage is configured by an administrator from the dashboard.

How it works

Up and running in three steps

No agents-as-a-service, no data leaving your network. Deploy, install, monitor.

Deploy the backend

One zero-config docker compose up -d spins up MongoDB and a self-contained Node server (Express + Socket.IO) that serves both the API and the dashboard. It generates its own secrets on first boot and runs over HTTP; for public access you put your own TLS in front.

Install the agent

Employees run a small installer and enter their name, work email and a one-time enrollment code you generate in the dashboard, then it runs quietly in the system tray.

Monitor from the dashboard

Watch live presence, review activity and screenshots, and set monitoring hours per person or in bulk, all from one secure admin dashboard.

Capture

Capture what matters. Keep storage tiny.

Monitoring shouldn't fill your disks or your bandwidth. PTM Clearwork stays light on the machine and light on the disk.

  • WebP compression shrinks screenshots dramatically versus PNG/JPEG, so you keep more history for less storage.
  • Tunable capture. Set the interval, quality and max resolution to match your policy and your disk budget.
  • Idle-aware. Activity and idle are tracked separately, so every screenshot comes with real context.
  • Encrypted first. Captures and URLs are AES-256-GCM encrypted before they're written to disk.
SCREENSHOTS - today
🖼️09:15 - main.docxWebP - 47 KB
🖼️09:25 - dashboardWebP - 52 KB
🖼️09:35 - figma.comWebP - 61 KB
🔒Encrypted at restAES-256
Schedule

Monitor on your schedule, not around the clock.

Set the hours the agent should be watching. Outside them it pauses itself.

  • Start/end + weekdays in the employee's local time, including overnight windows like 22:00-06:00.
  • Per-employee or bulk. Select many people and set their hours in one go.
  • Instant push. Schedule changes reach running agents over the socket and apply right away.
  • Off-hours means fully paused. No screenshots, no activity, no heartbeat. The employee simply shows Offline.
MONITORING HOURS
Aanya Rao09:00-18:00 - Mon-Fri
Night shift team22:00-06:00 - Mon-Sat
Lucia BianchiAlways on
Security & privacy

We treat this data like it's sensitive, because it is.

Monitoring data is some of the most sensitive data a company holds. PTM Clearwork treats it that way at every layer.

S/1

AES-256-GCM at rest

Screenshots and captured URLs are encrypted on disk with a key you control. Lose the server, the data stays unreadable.

S/2

OS keystore tokens

The agent's API token is sealed in the operating-system keystore (DPAPI, Keychain or libsecret) and never written in plaintext.

S/3

HttpOnly cookie auth

Dashboard sessions ride in HttpOnly cookies, so a cross-site scripting bug can't read your JWT. Tokens never touch JavaScript.

S/4

Strict CSP & headers

The server ships a strict Content-Security-Policy, HSTS, nosniff and frame-deny headers out of the box, via Helmet.

S/5

One-time enrollment codes

There's no open sign-up. An agent enrolls only with a single-use code you generate in the dashboard. It expires, can be locked to one email, and can be revoked. No shared secret ships in the installer.

S/6

Hardened by default

bcrypt password hashing, API rate limiting, constant-time login and offline Ed25519 licensing. All of it is on out of the box.

Your infrastructure, end to end

Every component runs inside your perimeter. Data flows agent → Node server (API + dashboard) → database, and never leaves.

Desktop Agent

Electron - Win / macOS / Linux. Captures & uploads over HTTP/S.

Bring-your-own TLS

Optional. Your reverse proxy, load balancer or Cloudflare terminates HTTPS for public access.

Node Server

Express + Socket.IO. Auth, ingest, realtime presence; serves the dashboard.

MongoDB

Your database. Screenshots on an encrypted volume.

Pricing

Buy it once. Own it outright.

A one-time licence you keep, starting at $499 for up to 15 employees. No monthly fee, no seat creep, and a 7-day free trial before you pay anything.

Starter

$499 one-time

Up to 15 employees, self-hosted. Everything in the product, nothing withheld.

Business

$1,999 one-time

Up to 75 employees, plus priority support and a guided deployment review.

Enterprise

$4,999 one-time

Unlimited employees, an SLA, security review and migration help.

FAQ

Questions, answered

Still curious? Ask the assistant in the corner. It knows the product inside out.

Is there a free trial? How much does it cost?
Every plan starts with a 7-day free trial: deploy and run the full product at no cost. After that you either buy a one-time self-hosted license (Starter $499 for up to 15 employees, Business $1,999 for up to 75, Enterprise $4,999 for unlimited) that you own and run on your own server, or let us host it for you on a monthly subscription from $49/mo.
Where is my data stored?
By default, everything is stored on your own server. An administrator can optionally configure AWS S3, Cloudflare R2, or another S3-compatible provider from Settings. Cloud credentials are encrypted on the server and never exposed to the dashboard after saving.
Which operating systems are supported?
The desktop agent runs on Windows, macOS and Linux. You build installers per platform: NSIS and portable builds for Windows, DMG/ZIP for macOS, and AppImage/deb/rpm for Linux.
How are screenshots stored and protected?
Captures are compressed to WebP to keep files small, then encrypted at rest with AES-256-GCM using your own DATA_ENCRYPTION_KEY. Captured URLs are encrypted the same way. You also set how long screenshots are retained before automatic deletion.
Can I limit monitoring to working hours?
Absolutely, and it's flexible. Give each employee one or more windows, each with its own days and start/end time, so you can set different hours per day, split shifts, weekend hours or overnight windows, all in the employee's local time. Set them per person or in bulk. Outside every window the agent fully pauses and shows Offline, and changes are pushed to running agents in real time.
Is employee monitoring legal?
Monitoring laws vary by country, state and industry. As a rule, be transparent: tell employees what's collected, why, and get the consent your jurisdiction requires. PTM Clearwork is meant to be used openly, and the agent runs visibly in the system tray. This isn't legal advice; consult counsel for your region.
How long does deployment take?
Minutes. One docker compose up starts MongoDB and the Node server, which serves both the API and the dashboard. Then you create an admin in the browser and distribute the agent installer. It runs over plain HTTP out of the box; for public access you add your own TLS in front. The full walkthrough is in the User Manual.
Can employees tell they're being monitored?
Yes, and that is deliberate. The agent lives in the system tray with a visible status icon (active / idle / disconnected). Transparent monitoring builds trust and keeps you on the right side of the law.
Get started

Run it on your own terms.

Start your 7-day free trial today, or talk to us about Business and Enterprise licenses. Either way, your data never leaves your server.