Now in early access

Ship PHP apps without
shipping source code

Protect and license self-hosted PHP applications without handing over readable source files. Custom VM runtime, AES-256 encryption, domain locking.

terminal
$ curl -fsSL https://compilelock.com/install.sh | sh
✓ Installed compilelock v1.0 to /usr/local/bin
$ compilelock auth --token="sk_live_xxxxx"
✓ Authenticated
$ compilelock protect ./app --project=1 --output=./dist
✓ Protected 47 files (app/Services, app/Http/Controllers)
✓ AES-256 encrypted → dist/ ready to ship
// Customer deploys → enters license key → app activates

Shipping raw PHP source is a business risk

Every self-hosted PHP product ships its entire codebase to customers. That creates real problems.

Source inspection

Customers can read your business logic, algorithms, and proprietary code line by line.

License removal

License checks in plain PHP can be found and removed in minutes. Nulled copies spread fast.

Unauthorized reuse

Code gets copied, resold, or reused far beyond the scope of your original license.

A protection layer built for PHP vendors

Convert your PHP applications into protected, licensed deployments.

Source protection

PHP source is compiled to custom bytecode and encrypted with AES-256. Customers run your product without receiving readable files.

Licensing

Lock installations to specific domains, IPs, or activation limits. Set expiration dates. Revoke anytime.

Safer delivery

Protected files are still .php — they work with require, autoloaders, and your existing deployment flow. No file format confusion.

Selective protection

Protect your entire project, specific folders, or individual files. Keep views and configs open, lock down services and controllers.

License dashboard

Create, manage, and revoke licenses from a web dashboard. Track activations, see usage logs, control every deployment.

How it works

Protect once, license separately, ship to everyone.

1

Protect

Run the CLI on your project. Source is compiled to encrypted bytecode. Same output for every customer.

compilelock protect ./app --project=1
2

License

Create licenses in the dashboard — each with domain lock, expiry, and activation limits. Independent from protection.

domain: client.com
max: 3 activations
3

Activate

Customer deploys and sees an activation screen. They enter the license key you provided. The app validates and starts.

🔒 Activate Your License
[CL-XXXX-XXXX-XXXX]
4

Running

The runtime validates the license on every boot — domain, expiry, activation count. Revoke anytime from the dashboard.

✓ License valid
✓ App running

Built for

Self-hosted PHP product vendors
SaaS alternatives, admin panels, CMS products
Laravel commercial app sellers
Themes, packages, full applications on marketplaces
Agencies with client deployments
White-label solutions installed on client servers
PHP software teams
Internal tools, enterprise apps with licensed distribution

How it compares

Raw PHP Obfuscators IonCube SourceGuardian CompileLock
Source hidden ~
Custom VM
Domain locking
License management
Activation tracking
License dashboard
PHP 8.x support ~ ~ ~
Reverse engineering None Low Medium Medium High

Simple pricing

Start free. Scale as you grow.

Free
$0 /mo

Try it out, no credit card needed.

Start free
  • 1 project
  • 2 licenses
  • Domain locking
  • Community support
Starter
$29 /mo

For indie developers with a single product.

Get started
  • 3 projects
  • 25 licenses
  • Domain locking
  • Email support
Enterprise
$199 /mo

For large-scale commercial distribution.

Contact sales
  • Unlimited projects
  • Unlimited licenses
  • Custom VM builds
  • On-premise license server
  • Dedicated support

Ready to protect your PHP product?

Start protecting your source code in minutes. No credit card required for the trial.

Get Started Free