The WHMCS alternative that doesn't charge more as you grow
Ottsa handles everything you rely on WHMCS for, from billing and provisioning to domains and support, on your own hosting and with unlimited clients in a single license. A guided importer brings your existing data across.
License cost as you grow
For illustration only, not to scale
Why hosting companies switch
The same capabilities, without the friction
Pricing that doesn't penalize growth
WHMCS licenses are priced by the number of active clients and move to a higher tier automatically once you pass a limit. An Ottsa license includes unlimited clients, and its price does not change as your business grows.
No ionCube or SSH required
Ottsa is written in plain PHP, with no ionCube Loader, Composer or SSH access to set up. Upload it to standard shared hosting, install it from your browser and update it in one click.
Open to inspect and extend
The source code is unencoded and readable, plugins and themes install from a zip file, and a theme can restyle or replace any client-area page. The REST API and webhooks handle everything else.
An admin your team will enjoy using
A command palette for fast search across clients, invoices and domains, built-in Arabic and Hebrew, and a client area designed for phones as well as desktops.
Ottsa and WHMCS side by side
Swipe to compare both columns →
| Ottsa | WHMCS | |
|---|---|---|
| Pricing model | A single license with unlimited clients | Tiered by number of active clients |
| When you add clients | The price stays the same | Moves to the next tier once you pass a limit |
| Hosting | Self-hosted on your own server | Self-hosted, or managed cloud |
| Server requirements | PHP 8.4.1+ and MySQL 8 or MariaDB 10.6+ | PHP, MySQL and ionCube Loader |
| Source code | Plain, readable PHP | Encoded with ionCube |
| Billing, provisioning, domains & tickets | Built in | Built in |
| Moving your data | Guided WHMCS importer included with every license | - |
WHMCS details are based on WHMCS's published pricing and documentation as of October 2026 and may have changed since. WHMCS is a trademark of its respective owner. Ottsa is not affiliated with or endorsed by WHMCS.
Migration
Four steps, on your own timeline
WHMCS stays live until you decide to switch, and nothing changes for your clients before the cutover date.
-
01
Connect
Give the importer read-only access to your WHMCS 8 or 9 database and, optionally, a zip of ticket attachments. Nothing in WHMCS is modified.
-
02
Dry run
The importer reads all of your data and reports anything that cannot be carried over unchanged, before a single record is written.
-
03
Run side by side
Import into a trial install and keep billing from WHMCS while you check invoices, test provisioning and train your team.
-
04
Cut over
Choose a date, import into a fresh install so nothing is missed, then update your gateway webhooks and point your client area domain to Ottsa.
What the importer brings across
- Clients, contacts and users
- Products, addons, bundles and configurable options
- Active services and next due dates
- Invoices, transactions and credit balances
- Domains, TLDs and their prices
- Tickets, replies, notes and attachments
- Knowledge base, announcements and downloads
- Promotion codes, quotes and affiliates
- Saved payment methods, where your gateway supports it
- Servers, server groups and tax rules
What needs planning
A few things cannot be copied one-to-one, and the dry run lists them before you commit.
Custom modules & hooks
Rebuilt as Ottsa plugins or on the API and webhooks, and we can build them for you.
Custom client area themes
Recreated as an Ottsa theme that carries your brand.
Email templates
Ottsa's own templates in English, Arabic and Hebrew, ready to adapt to your wording.
Third-party add-ons
Usually replaced by a built-in feature or an integration.
Test the import on a copy of your data
Start a free trial, point the importer at a copy of your WHMCS database and review the dry run before you decide.