Punchwell is the maintained WP Human Resource Management alternative — a self-hosted WordPress time clock that refuses an off-site punch instead of just logging it. Flag any employee as office-only and they can clock in or out only from your network: exact IPs, whole ranges, per office, per person. Own your data, pay a flat fee, add unlimited employees.
Self-hosted · No per-seat fee · No data call-home · GPL
[Get Punchwell Pro — $99/yr → /punchwell/pricing/] · [See how the IP lock works → /punchwell/features/ip-clock-in-lock/]
Free on WordPress.org. Unlimited employees. No card required.
If they’re not on your office network, they can’t clock in
Most cheap time clocks log a location and move on — so a cashier can still clock in from the couch, or punch in a coworker who’s running late. Punchwell does something different: it checks the punch server-side, and if the device isn’t on an allowlisted office address, the punch is refused. Not flagged. Refused.
That’s the difference between a record of time theft and the prevention of it.
- Per-employee, hard-enforced. Mark a person “requires office IP” and they’re locked to your network. Remote staff stay unrestricted — one setting per employee.
- Real depth. Single IPs, CIDR blocks like
203.0.113.0/24, and address ranges — IPv4 and IPv6. - Three scopes, unioned. Company-wide + per-office + per-employee allowlists. Adding an IP only ever widens access, so you can’t accidentally lock someone out.
- Block, Warn, or Flag. Hard-refuse, allow-but-note, or silently mark — your call per policy.
- Clock-in time window + a blocked-attempt email to HR when an off-site punch is turned away.
Honest framing: GPS can be spoofed from a phone at home. An office-IP lock can’t be faked from outside your network — so the IP lock is the hard control, and the geofence is a deterrent.
[See the IP-lock deep dive → /punchwell/features/ip-clock-in-lock/]
Everything an on-site team needs — softer or stricter, your call
The story is simple: IP lock and GPS geofence and kiosk and mobile punch. Dial enforcement up or down to match how you actually run the floor.
Time clock & attendance
Punch in/out with per-department shift policies, configurable rounding (e.g. nearest 15 min), grace periods, and auto clock-out for forgotten punches. Overnight shifts are handled automatically. [Explore attendance → /punchwell/features/attendance/]
GPS geofence, kiosk & mobile punch
An optional GPS geofence (company-wide or per-office, radius in metres or feet), a kiosk/wall-tablet clock where staff punch with a short code + 6-digit PIN, and a mobile/PWA punch screen you can add to a phone’s home screen. A weak GPS fix never locks out a real worker, and clock-out is never blocked by distance. (The mobile punch is a responsive web/PWA screen, not an App Store app.) [See clock-in options → /punchwell/features/clock-in/]
Leave, holidays & PTO accrual
Multiple leave types, an approval workflow, and a PTO accrual engine — accrue monthly, per-hour-worked, or as an annual grant, with caps, carryover, and waiting periods. One-click holiday import (US, UK, Canada, or Australia presets, an iCal file, or a pasted list) is computed locally with a preview before anything saves. [Explore leave & PTO → /punchwell/features/leave-pto/]
Payroll export & sync
Per-employee pay type, rate, and frequency, plus a payout report with weekly and daily overtime, double-time, and holiday pay. Worker classification (1099/FT/PT), CSV export, and SurePayroll + Gusto connectors. It exports payroll data — it does not move money, so there’s no payment-processor or tax-custody risk for you. [See payroll export → /punchwell/features/payroll-export/]
HR reminders, checklists & self-service
A daily HR reminder digest (birthdays, work anniversaries, probation ends, contract & visa expiries, missed punches) plus onboarding/offboarding checklists and employee self-service widgets — My Pay, My Time Off, leave requests, who’s in. [See HR tools → /punchwell/features/hr-tools/]
Still running the abandoned original? Here’s the maintained path forward.
The original “WP Human Resource Management” plugin (slug hrm) was removed from WordPress.org on July 1, 2025 for a security issue, and last shipped code around 2019. If you’re on it, you’ve probably seen the symptoms after a PHP 8 update — white screens, “add employee” hanging on the spinner, punch-out failing, profile saves that never finish.
Punchwell is the hardened, PHP 8–ready continuation of the same lineage. Same data model, same wp_hrm_* tables — so your employees, attendance, and leave records carry over. It’s a migration, not a rebuild: we provide a documented one-time SQL script and a verification pack, and it’s reversible if you back up first.
[Read the migration guide → /punchwell/migrate/] · [Run the 5-minute security check → /security/]
An independent, third-party maintained GPL fork. Not affiliated with wpspear, weDevs, or the original author.
Maintained, audited, and clean on modern WordPress
You shouldn’t have to wonder whether your HR plugin is a liability. Punchwell is built to be the opposite.
- PHP 8 / WordPress 7 / MySQL 8 clean. The dead, EOL libraries the original shipped on were replaced; the type and date fatals that broke it were fixed.
- Security-audited. A multi-agent audit produced 128 findings; all critical and high-severity issues were resolved and adversarially verified. The endpoints behind the original’s public disclosures are capability-gated with
current_user_can()— including a specifically fixed arbitrary-user-deletion path. - No data call-home. The original’s license phone-home and updater code was removed and verified — 0 outbound network primitives remain in the free version, which makes no outbound calls at all. The only outbound call Pro makes is validating your license key against our own billing server, never your data. The only external content is optional YouTube tutorial embeds and Gravatar avatars (standard WordPress).
- Self-hosted, so your data never leaves your server — which helps with the privacy obligations clinics, dental practices, and agencies carry.
[See security & maintenance → /security/]
Pricing snapshot — per site, never per seat
| Free / Community | Pro | |
|---|---|---|
| Price | $0 | $99/yr per site |
| Employees | Unlimited | Unlimited |
| Basic single-office IP lock | ✓ | ✓ |
| Full IP depth (CIDR/range, per-office & per-employee, block/warn/flag) | — | ✓ |
| GPS geofence · kiosk · mobile punch | — | ✓ |
| Payroll export · PTO accrual · reminders · checklists | — | ✓ |
| Recruitment · loans · attendance reports · self-service · permissions | — | ✓ |
A 25-staff shop pays roughly $1,520/yr for Buddy Punch, ~$1,950 for Deputy, or ~$2,100 for When I Work (approximate, as of June 2026). Punchwell is $99/yr flat, unlimited employees — hire your hundredth person and the bill doesn’t change.
Per site, not per seat. Renewal price locked if you never lapse.
[Compare the plans → /punchwell/pricing/]
Built for on-site teams that pay by the hour
If your people are physically at a place — a register, a chair, a dock, a floor — Punchwell is for you.
- Retail shops & franchises — lock registers to the store network so a punch only counts when someone’s actually behind the counter.
- Clinics & dental — attendance integrity and data that stays on your own server, where patient-adjacent privacy matters.
- Restaurants & cafés — kiosk clock on a wall tablet, short code + PIN, no individual logins to manage on the device.
- Warehouses & call centers — CIDR-block the whole facility’s network in one entry instead of listing every machine.
- Salons, gyms & agencies — flat pricing that doesn’t punish you for growing the team.
[testimonial placeholder] — “[Short quote about cutting disputed timesheets / stopping buddy punching, in the owner’s own words.]” — [Name placeholder], [Role placeholder], [Company placeholder] · [avatar placeholder]
FAQ
Is this per-seat? What happens when I hire more people? No per-seat fee, ever. Pricing is per site — a flat $99/year — with unlimited employees on every tier. Hire your hundredth person and your bill doesn’t change. Compare that to per-head SaaS clocks, where a 25-person shop pays $1,500–2,100/year.
Self-hosting sounds like a burden. Do I have to manage servers? If you already run a WordPress site, you have everything you need — Punchwell installs like any other plugin. There’s no separate server and no cloud account to set up. “Self-hosted” just means your employee data lives in your own WordPress database instead of a vendor’s cloud, and updates install through your dashboard like any plugin. (Note: it’s not designed for WordPress Multisite.)
It’s GPL — does that mean it’s not really “mine”? GPL is a feature here, not a catch. You genuinely own the code, you’re never locked in, and your data is yours to export anytime. Your license pays for updates, support, and the Pro feature bundle — the same model most professional WordPress plugins use. The GPL guarantees you’ll never be held hostage by a vendor that disappears — which is exactly what happened to the plugin Punchwell replaces.
Does it actually run payroll? It does the calculation and the export — per-employee pay type and rate, a payout report with weekly and daily overtime, double-time and holiday pay, worker classification, and CSV export (plus SurePayroll and Gusto connectors). It does not move money. That’s deliberate: keeping money movement out means no payment-processor or tax-custody risk for you. You take the payroll-ready CSV to your provider.
Will migrating from the old plugin lose my data? No. Same lineage, same database schema — your employees, attendance, and leave records carry over. We provide a one-time migration script and a verification pack, and it’s reversible if you back up first. It’s a migration, not a rebuild. [Read the migration guide → /punchwell/migrate/]
What kind of support do I get? Support comes from the people who actually maintain the code — Pro includes support and updates for as long as your license is active. Because it’s self-hosted and GPL, you’re never stranded: even if you lapse, you keep the plugin and every record.
Lock the clock to your office today
Start free on WordPress.org, or unlock the full per-employee IP depth, GPS geofence, kiosk, mobile punch, and payroll export with Pro — $99/year, one site, unlimited employees.
[Get Punchwell Pro — $99/yr → /punchwell/pricing/] · [Download the free version → /punchwell/pricing/]
GPL. Self-hosted. Your data stays on your server.
Punchwell, by Sturdyhaus. Independent GPL fork of the “WP Human Resource Management” plugin — not affiliated with wpspear, weDevs, or the original author. Product names referenced descriptively only.