Panellicense

Set up cPanel Team Manager for delegated account access

Replace shared cPanel passwords with scoped, auditable team users — roles, role limits, 2FA, password expiry, and the WHM toggles you need to flip first.

8 min readUpdated 2026-05-16cpanel · team-manager · access-control · rbac
schema: HowToschema: FAQPageschema: TechArticle

Team Manager is the per-account delegation system inside cPanel. It replaces the old Sub-Accounts feature and the unofficial workflow of just sharing the cPanel password with a developer or agency. A team user logs in with their own email and password, sees only the parts of cPanel their role grants, and shows up under their own name in the activity log.

This guide covers the WHM-side prerequisites, adding a team user end-to-end, what each of the four roles actually unlocks, and the operational settings — expiry, 2FA, password strength — that decide whether the feature is worth turning on for paying customers.

What Team Manager replaced

Sub-Accounts let a cPanel user create a single combined login that shared a password across Email, FTP, and Web Disk. It did not delegate cPanel UI access at all. Team Manager is structurally different — each team user is a real cPanel login, with its own 2FA, its own API tokens, and a role that scopes what they can see and do.

If you are migrating away from cPanel SubAccounts, the WHM Transfer Tool does not carry team users — they are recreated on the destination by the account holder after the transfer completes.

Prerequisites

Team Manager has shipped on every cPanel release since v102, but the role catalogue expanded substantially in v110 and the Web role only became useful in v112. Run a recent release before exposing it to customers:

/usr/local/cpanel/cpanel -V

Confirm v110.0 or newer. If you are on an LTS branch, you want the latest LTS point release.

Then check that team users are actually enabled at the server level. WHM → Server Configuration → Tweak Settings → Team Manager must be On. It is on by default for new installs but explicitly off on some control-panel images from cloud providers — worth verifying on a fresh cPanel VPS install.

The per-package limit is set under WHM → Packages → Edit a Package → Maximum Number of Team Users with Roles. Default is 7. Setting this to 0 disables Team Manager for every account on that package without touching the global toggle.

Add a team user

Inside cPanel, the account holder opens Preferences → Manage Team, then Create Team User. Three fields matter:

  • Username — local part only. The team user logs in as developer@example.com where example.com is the primary domain on the account. They cannot pick a different domain.
  • Contact email — must not be on the same cPanel account. Password resets and notifications go here.
  • Password — generate one. The team user can change it on first login.

Tick one or more roles before saving. Roles are additive and can be edited later without recreating the user.

The four roles

Each role gates a specific slice of the cPanel UI and the corresponding API. A user with no roles still exists but cannot log in usefully — they see an almost empty home screen.

RoleGrants access toCommon use case
AdministratorEverything the primary user can do, except deleting the primary user or other AdministratorsCo-owner of a small business account
WebFile Manager, FTP, Domains, Subdomains, Aliases, Redirects, SSL/TLS, Cron Jobs, Site Publisher, Indexes, Error Pages, MultiPHPDeveloper or agency building the site
DatabaseMySQL Databases, Remote MySQL, phpMyAdmin, PostgreSQLDBA, data engineer, app contractor
EmailEmail Accounts, Forwarders, Autoresponders, Routing, Default Address, Spam Filters, Calendars & Contacts, Track DeliveryOffice manager or VA handling mailboxes

The Administrator role is the dangerous one — it grants API token creation, which means that user can mint long-lived credentials with their own access scope. Treat Administrator team users as equivalent to handing over the primary password and only use it when you trust the person with the whole account.

Password expiry and 2FA

By default a team user's password never expires and 2FA is optional. Both should change before you rely on team users for a real workflow:

  • Expiration — on the team user's row, click Edit, then set Expiration to a fixed date. Useful for contractor engagements. The user can still log in until the date, then is locked out automatically.
  • 2FA — if WHM → Two-Factor Authentication is set to Required for all users, team users inherit that requirement. Otherwise it is per-user opt-in via the team member's own Security tab. Server-wide enforcement is the only sane setting for a shared hosting product.

There is no per-role 2FA enforcement. Either everyone must use it or nobody must — a gap that has been on the cPanel roadmap for two releases now.

Auditing what team users did

Team Manager writes to the standard cPanel access log, but under the team user's identity. The fastest way to review activity is Manage Team → View Activity in cPanel, which surfaces logins, password changes, and role edits. For richer auditing — specifically, which files a Web-role team user touched — you need the underlying session log on the server:

grep "team_user=developer" /usr/local/cpanel/logs/session_log | tail -50

If you need to ship team-user activity to a SIEM, the cPanel JSON access log under /usr/local/cpanel/logs/access_log includes the team_user field on every authenticated request. Forward that, not just /var/log/secure, or you will miss everything that happened inside the panel.

Automating with the API

Team users can be managed via WHM API 1 and cPanel UAPI. The two endpoints worth knowing:

# create a team user (WHM, runs as root)
whmapi1 create_team_user user=customer \
  team_user=developer \
  password=GENERATED_HERE \
  contact_email=dev@agency.example \
  roles=web,database

# list team users on an account (cPanel UAPI, runs as the account holder)
uapi --user=customer Team list_team

Useful for provisioning developer access during onboarding flows in Blesta or any other billing platform that already calls WHM on signup. The token used for whmapi1 needs the account-management ACL.

Common gotchas

Team users cannot see the account's API tokens. Even Administrator team users only see tokens they themselves created. The primary user's tokens are invisible to them — by design, but it surprises agencies who expect a single token list.

Web role does not include MultiPHP INI Editor on every version. Until cPanel 116, that page was Administrator-only. If your developer needs to flip a php.ini value, either upgrade or temporarily promote them.

Resellers see team users in their account list. They count against the reseller's account limit only as the parent account, not per team user — but they do appear in list output, which trips up scripts that count rows. Filter on is_team_user=0 if you want primary accounts only.

Removing a role does not revoke active sessions. A demoted user keeps their session until it expires (24h default) or until you terminate it under WHM → Manage cPanel Sessions. For contractor offboarding, delete the team user rather than removing roles — deletion ends the session immediately.

FAQ

How many team users can a cPanel account have?+
Up to 7 by default, capped by the package's Maximum Number of Team Users with Roles setting. The hard upper limit is 50 per account regardless of package.
Do team users count against my cPanel license tier?+
No. Team users are not separate accounts — they share the parent cPanel account's resources and do not consume an additional slot on your cPanel license. See cPanel license tiers explained for how account counting actually works.
Can a team user have their own SSH access?+
No. SSH access is tied to the primary cPanel user's shell. Team users only get cPanel UI and FTP. For SSH on a per-developer basis, use jailed shell with separate Linux users instead.
What happens to a team user if the primary cPanel account is suspended?+
All team users are suspended with the parent account and cannot log in. They are re-enabled automatically when the account is unsuspended — no need to recreate them.
Can I move a team user to a different cPanel account?+
No. Team users belong to a single primary account and cannot be transferred. If the customer changes hosting plans within the same WHM, the team users move with the account; cross-account moves require recreating them.

Next steps

Switch in an afternoon

Switch from your current reseller — free.

We migrate active cPanel, Plesk, LiteSpeed and CloudLinux licenses from any reseller. We prorate the first month so you never pay twice, and your customers see zero downtime during the swap.