Skip to main content
DCHost / Practical guide

WHM hosting accounts: Create packages, assign plans and check quotas

Creating a hosting account in WHM involves three separate decisions: which resource limits to assign, which tools to make available in cPanel, and which user will own the account. Set up the package, feature list and hosting account in that order to keep customers' settings clear.

This guide is for administrators with authorized WHM access on their own VPS/VDS. If you use DCHost hosting, start with the hosting management guide for files, email and databases. To expand a purchased service, review the customer portal package-change process.

Docs Demo, shown in the screenshots, is an example WHM package created earlier for these guides. It is not the name or resource specification of a DCHost product for sale.

1. Identify the access level​

AccessWhat it manages
DCHost customer portalPurchased services, invoices, support and the access details supplied with a service
cPanel hosting userWebsites, files, email and other permitted tools within that account
WHM resellerThe reseller's hosting accounts within the permissions and resources granted by the server owner
WHM server administratorThe server's hosting accounts, packages, feature lists and shared configuration

Some menus may be unavailable to resellers; this does not necessarily indicate an incomplete installation. Give customers their own cPanel username and password. Do not share the server's root account as a customer login.

2. Separate packages, feature lists, accounts and quotas​

ItemPurposeExample
PackageA reusable definition of resource limits and options5120 MB disk, 10 email accounts, 10 SQL databases
Feature ListDetermines which cPanel tools the user can accessFile Manager, Backup Manager, MultiPHP Manager
cPanel AccountHolds a user's primary domain and account dataA customer's websites, mailboxes and databases
Account QuotaSets a particular hosting account's disk limit; operating-system quota support must also work5120 MB shown in List Accounts

Increasing Max SQL Databases does not create a database. Enabling a tool in a Feature List does not automatically install its required software or license. A WHM package change does not increase the VPS's allocated disk capacity, RAM or CPU allocation.

3. Open the new-package form​

Open WHM → Packages → Add a Package. Choose a clear Package Name that will still make sense later. Package names cannot be renamed, so avoid including a price that may change.

WHMOpen the new hosting-package form

Package naming and resource limits are separate parts of the form.

WHM · Actual demo server
WHM Add a Package form with an empty Package Name and selected Unlimited options.
A closer look
Choose a package name — detail from the screenshot above

Step 1: Choose a package name

  1. Choose a package name

    Package Name identifies the package inside WHM.

    What you should see: Distinguish package names from customer accounts.

  2. Read the selected disk option

    Use the numeric option when setting a quota. The grey 10240 value is not the active limit in this image.

    What you should see: Separate the selected radio option from an inactive number.

  3. Assess traffic separately

    Monthly Bandwidth Limit is separate from disk capacity.

    What you should see: Plan transfer and storage independently.

The actual WHM screen was inspected without saving package or feature changes during capture. Private information is permanently masked.

  1. For each resource, check the numeric limit or the corresponding Unlimited option. A number in an unselected, greyed-out input may not be the active limit.
  2. Under Settings, choose the access options, theme, feature list and language.
  3. When you intend to create your planned package, use Add at the end of the form.
  4. Open the resulting package through Edit a Package and check the saved values.

This capture shows an inspection of the blank form; no second demo package was created. The following screenshots show the actual settings of the existing Docs Demo package.

4. Read the existing package limits​

Under WHM → Packages → Edit a Package, select the package and click Edit. This first button opens the editor; Save Changes inside the editor saves changes.

WHMSelect the package to inspect

The existing Docs Demo package appears in the editor selection.

WHM · Actual demo server
WHM Edit a Package selection with Docs Demo, default and the Edit button.
A closer look
Find the intended package — detail from the screenshot above

Step 1: Find the intended package

  1. Find the intended package

    Select the package you intend to inspect.

    What you should see: Avoid opening another package by mistake.

  2. Open the editor

    The initial Edit button opens the package form.

    What you should see: Inspect settings; this is not the later Save Changes action.

The actual WHM screen was inspected without saving package or feature changes during capture. Private information is permanently masked.

WHMRead the actual Docs Demo resource limits

These saved package values were not changed during inspection.

WHM · Actual demo server
Actual Docs Demo limits: 5120 MB disk, Unlimited traffic, 2 FTP accounts, 10 mailboxes and 10 SQL databases.
A closer look
Match the package and disk limit — detail from the screenshot above

Step 1: Match the package and disk limit

  1. Match the package and disk limit

    Docs Demo has 5120 selected for Disk Space Quota.

    What you should see: Read the example package’s 5 GB allocation.

  2. Check the active traffic option

    Unlimited is selected for Monthly Bandwidth; the grey number is inactive.

    What you should see: Distinguish the panel label from Unmetered (Fair Usage) service terms.

  3. Separate counts from capacity

    FTP, email, SQL and domain fields set object counts; the bottom mailbox quota sets MB.

    What you should see: Ten mailboxes does not mean ten GB of storage.

The actual WHM screen was inspected without saving package or feature changes during capture. Private information is permanently masked.

FieldMeaningThis example
Disk Space Quota (MB)The hosting account's disk-space limit5120 MB, or 5 GB
Monthly Bandwidth Limit (MB)The account's monthly data-transfer limit in WHMUnlimited selected in the interface
Max FTP AccountsNumber of FTP accounts that can be created2
Max Email AccountsNumber of mailboxes10
Max Mailing ListsNumber of mailing lists0
Max SQL DatabasesNumber of databases for each available SQL database type10
Max Sub DomainsSubdomain limit5
Max Parked Domains / Max Addon DomainsDomain-alias and additional-domain limits2 / 2
Max Passenger ApplicationsNumber of Passenger applications0
Maximum Hourly Email by Domain RelayedOutgoing messages per domain per hour50
Maximum percentage of failed or deferred messages…Temporary sending restriction based on the failed/deferred message percentage100
Max Quota per Email Address (MB)Largest quota that can be assigned when creating a new mailbox256 MB

These are saved example settings, not recommendations for every website. In particular, assess sending limits alongside the email-service terms and server-wide limits. A value of 0 in the hourly-email field behaves as Unlimited rather than disabling sending; zero does not mean the same thing in every field.

Traffic terminology: WHM's Unlimited label means that the panel does not set a numeric limit for this field. DCHost service traffic is described as Unmetered (Fair Usage). The panel label does not promise unlimited network capacity or remove the fair-usage conditions.

Mailbox quota: Changing Max Quota per Email Address does not retroactively change existing mailboxes' quotas. Check those mailboxes separately in cPanel. Disk capacity, database count and mailbox count are also separate limits.

5. Check access options and their scope​

WHMCheck package access, theme and feature list

Access and cPanel interface options appear below the resource table.

WHM · Actual demo server
WHM package settings with Shell Access unchecked, jupiter, the default feature list and English.
A closer look
Grant only needed access — detail from the screenshot above

Step 1: Grant only needed access

  1. Grant only needed access

    Assess Shell Access and CGI Access against actual needs; neither is selected here.

    What you should see: Avoid unnecessary access for customer accounts.

  2. Read the feature-list assignment

    The Feature List value default selects this package’s cPanel tool list.

    What you should see: Inspect the correct list in Feature Manager.

  3. Identify the save action

    Save Changes saves edits; Reset returns unsaved edits to the existing values.

    What you should see: Do not treat Reset as a rollback of previously saved history.

The actual WHM screen was inspected without saving package or feature changes during capture. Private information is permanently masked.

OptionWhat to check
Dedicated IPWhether a separate IP is needed and available. This option cannot be edited after package creation.
Shell AccessWhether the hosting user needs command-line access. This does not grant root privileges.
CGI AccessWhether the application needs CGI execution
cPanel ThemeThe customer's theme; jupiter in this example
Feature ListThe list assigned to this package; default here
LocaleThe initial panel language; English here, with Turkish also available
Package ExtensionsOptions supplied by installed extensions; their presence does not establish that every paid feature is licensed

Shell Access, CGI Access and Dedicated IP are not selected in Docs Demo. No settings were saved during this inspection. Before changing a shared package, identify its accounts; if only one customer needs different limits, a separate package assigned to that account is easier to track.

6. Manage cPanel tools with Feature Manager​

Open WHM → Packages → Feature Manager. Choose a list under Manage feature list and click Edit. A separate Add a new feature list field creates a new list.

WHMCompare feature-list scope

default and disabled have different scopes.

WHM · Actual demo server
WHM Feature Manager explanations for default, disabled and Mail Only with list-selection controls.
A closer look
Read the scope explanation — detail from the screenshot above

Step 1: Read the scope explanation

  1. Read the scope explanation

    default affects users assigned to it; disabled blocks features across the server.

    What you should see: Separate a package-specific change from a server-wide block.

  2. Select an existing list

    Manage feature list opens a list that already exists.

    What you should see: Distinguish this from creating a new list.

  3. Inspect with Edit

    Edit opens the list. Delete and Add Feature List are different operations.

    What you should see: Reach the intended list’s checkboxes.

The actual WHM screen was inspected without saving package or feature changes during capture. Private information is permanently masked.

ListScope
defaultControls default tools for accounts using this list. Disabling a feature here also affects other users assigned to the list.
Mail OnlyA list intended for email-focused accounts.
disabledDefines features unavailable server-wide; other lists cannot override it. It is not a normal list to assign to a package.
WHMRead permissions in the default list

Checked boxes in this normal feature list indicate permitted tools.

WHM · Actual demo server
Actual default feature-list checkboxes and the explanation that changes affect all users assigned to it.
A closer look
Check the affected users — detail from the screenshot above

Step 1: Check the affected users

  1. Check the affected users

    The explanation states that changes affect every account using default.

    What you should see: Recognize that this is not a single-user setting.

  2. Read the tool permission

    AutoSSL and Backup Manager are checked here. This alone does not mean a certificate was issued or a backup completed.

    What you should see: Separate permission from a completed operation.

The actual WHM screen was inspected without saving package or feature changes during capture. Private information is permanently masked.

In a normal feature list, selecting a checkbox grants access to that tool. disabled works differently: selecting a feature there disables it server-wide. To remove a tool from only one hosting package, prepare an appropriate separate list instead of changing the server-wide disabled list.

After deliberately saving changes with Save, check the package's Feature List assignment and the customer's cPanel screen. Interface permission, installed services and service/license conditions must all be suitable. This guide's capture only inspected default; no checkboxes or list settings were changed.

7. Assign the package to a hosting account​

For a new account, open WHM → Account Functions → Create a New Account. Enter the primary domain, hosting username, strong password and notification email. Choose your prepared package under Choose a Package.

WHMEnter the hosting account details and package

Prepare a new cPanel user in Create a New Account.

WHM · Actual demo account
WHM account form with domain, username, both passwords and email masked; the Docs Demo package remains visible.
A closer look
Choose a domain and username — detail from the screenshot above

Step 1: Choose a domain and username

  1. Choose a domain and username

    Enter the website name in Domain and this hosting account’s username in Username.

    What you should see: The account is prepared separately from the server’s root user.

  2. Create a separate password

    Enter a strong account-specific password in Password and Re-type Password.

    What you should see: Both entries match; the root password is not shared.

  3. Add contact details

    Enter the hosting account’s notification address in Email.

    What you should see: The account contact is defined.

  4. Select the intended package

    Review Choose a Package. Docs Demo is an example package created for this walkthrough.

    What you should see: The selected package appears in the form.

Five private input values are masked. The real validation indicators and package selection are preserved; this form alone does not prove account creation.

This creates a hosting account inside WHM; it does not purchase a domain or change nameservers at the registrar. The complete creation and separate customer-login steps are in the cPanel installation guide.

After creation, compare your domain, username, package and quota in WHM → Account Information → List Accounts. The actual demo account below shows Docs Demo and 5120 MB.

WHMFind the created account in List Accounts

The actual account list shows one hosting account, the example package and the final saved 5120 MB disk quota.

WHM · Actual demo account
WHM List Accounts showing one account, Docs Demo and a 5120 MB quota; domain, IP, username and email are masked.
A closer look
Read the list and record count — detail from the screenshot above

Step 1: Read the list and record count

  1. Read the list and record count

    Open WHM → Account Information → List Accounts and find the new account.

    What you should see: The example shows Showing all 1 records.

  2. Match the account and package

    Compare Domain, Username and Package with the account you created on your own screen.

    What you should see: The account and package match; there is no need to recreate it.

  3. Compare the quota with the package

    The Quota column shows 5120 MB, the 5 GB disk limit saved for this example. Compare your own account’s value with its package.

    What you should see: The quota column shows the final configured limit; the package name is not the only check.

  4. Verify cPanel access separately

    The cPanel icon in Quick Links opens the account; also check normal username/password login in the next step.

    What you should see: The account list and a customer login are separate checks.

Private account details are masked; other column values are unchanged. This screen does not prove website, DNS or email delivery operation.

Then test a normal login as the hosting user. Opening cPanel from WHM's shortcut alone does not verify the customer's own password.

8. Change one account's package​

Open WHM → Account Functions → Upgrade/Downgrade an Account. If there are several accounts, select the account and click Modify. With only one account on this demo server, the package-selection screen opened directly.

WHMCompare the current and intended packages

With one demo account, WHM opened package selection directly.

WHM · Actual demo server
WHM Upgrade/Downgrade with the account name masked, Docs Demo as current package and available packages.
A closer look
Verify the current package — detail from the screenshot above

Step 1: Verify the current package

  1. Verify the current package

    Current Package shows the account’s existing plan.

    What you should see: Read the starting state for the correct account.

  2. Inspect the intended package

    Select it under Available Packages and compare limits using the adjacent magnifier.

    What you should see: Review the target plan before saving.

  3. Identify the apply action

    Upgrade/Downgrade changes the package. It was not clicked in this capture.

    What you should see: A preview is not represented as a completed package change.

The actual WHM screen was inspected without saving package or feature changes during capture. Private information is permanently masked.

  1. Read the existing plan under Current Package.
  2. Select the intended plan under Available Packages.
  3. Hover over the adjacent magnifying-glass icon to compare package details. In this version, the preview opens while the pointer is over the icon.
  4. After checking the intended change, save it with Upgrade/Downgrade.
WHMRead package details in the magnifier preview

Hovering over the magnifier opens the selected package’s actual summary.

WHM · Actual demo server
Docs Demo preview showing quota 5120, 10 email accounts, 10 databases and the default feature list.
A closer look
Check the previewed package name — detail from the screenshot above

Step 1: Check the previewed package name

  1. Check the previewed package name

    Docs Demo appears at the top of the small table.

    What you should see: Know which package’s details you are reading.

  2. Compare tools and access

    Feature List, Shell access and Dedicated IP show differences beyond storage.

    What you should see: Assess access that a change might remove or enable.

  3. Read the quota and object counts

    Quota shows 5120; email and database limits are 10.

    What you should see: Compare existing usage with the intended package.

The actual WHM screen was inspected without saving package or feature changes during capture. Private information is permanently masked.

Only the selection and preview are demonstrated here; the example account's package was not changed. Before a downgrade, compare used disk space, mailboxes, databases and enabled features with the new limits. Plan the transition first if current usage exceeds them.

This WHM operation does not change the account's IP address. A paid DCHost product upgrade, invoicing and VPS resource changes are separate processes; selecting a WHM package does not complete those processes.

9. When the package and account quotas differ​

Start with List Accounts → Quota. Compare it with the package's Disk Space Quota and, when needed, the account under WHM → Account Functions → Quota Modification. If only the disk allowance needs changing, verify the selected account and save the intended value in MB.

In this demo, the package specified 5 GB while the initial account list showed unlimited. Initial Quota Setup, XFS quota support and the required reboot were completed, then the account's limit was saved again as 5120 MB through Quota Modification. Both the WHM display and native 5 GB soft/hard quota values were subsequently verified. No disk-filling limit test was performed.

SituationNext check
A limited package shows unlimited or an incorrect account valueAccount quota, package assignment and operating-system quota support
Quota setup requests a rebootMaintenance timing, server recovery access and the quota state after startup
Disk use exceeds expectationsFiles owned by the account elsewhere, email and backups
Backups fail when the quota is fullFree space for the backup process to write temporary files

A disk quota is not a separate database quota that automatically stops every MySQL/MariaDB write. Follow cPanel's quota documentation rather than making arbitrary changes to quota files or filesystem settings.

10. Distinguish suspension from deletion​

Manage Account Suspension temporarily suspends or reopens an account. Terminate Accounts permanently removes the account and its data from the server. Suspension, bandwidth limiting and account termination are separate operations.

Do not delete and recreate an account to fix a quota or change its package. When permanent removal is needed, first confirm the account, data to retain, domain/DNS effects and a recoverable backup. No account was suspended or terminated for this guide.

What should you verify afterward?​

  • WHM: The correct account, expected package, quota and feature list.
  • Customer login: cPanel access with that account's own username and password.
  • Website: HTTPS at its normal address, important pages and a controlled write operation.
  • Dependent services: Database connection, mailboxes in use and scheduled tasks.
  • Recovery: A restore check in a separate environment, in addition to having a backup file.

Frequently asked questions​

Can I create WHM hosting packages from cPanel?​

A standard hosting user cannot create WHM packages. You need authorized WHM access on your own VPS/VDS or a reseller account granted that permission.

Does a larger package increase VPS RAM and CPU?​

No. A WHM package controls the hosting account's limits and available tools. Server-resource changes require the relevant DCHost service-upgrade process.

Why is an enabled Feature Manager tool missing from cPanel?​

Check that the account actually uses that list, review disabled, and verify the required service/software and licenses. Selecting one checkbox does not satisfy all of those requirements.

Can I rename an existing package?​

WHM does not rename packages. Create a package with the intended name and assign accounts to it through a controlled change. You do not need to delete the accounts.

Official sources​

Menu paths and explanations were checked on 15 October 2026 against actual WHM 138.0.15 screens and current vendor documentation.