Skip to content

Resizing your cPanel package

Every cPanel account sits on a package, and the package is what sets the account's limits. When an account outgrows its limits — or is bigger than you need — you change the package from your CloudPress workspace. The change is billed against the subscription the account already has, so there is no new order and no new subscription.

This page covers the whole path: opening the package picker, why some packages may be greyed out, what you actually pay for an upgrade, what you get back for a downgrade, and what happens while the change is being applied.

Before you start

  • cPanel hosting is enabled per workspace. If the cPanel Accounts item isn't in your workspace sidebar, see cPanel hosting on CloudPress — there is nothing to resize.
  • You need permission to manage billing for the workspace that owns the account. Anyone who can see the account can open the resize screen, but submitting a change without that permission returns you to the account list with "You do not have permission to manage billing for this account."
  • A payment method must be on file for the workspace that pays for the account. Because a package change is charged against an existing subscription, the payment step shows No payment method on file and an Add a payment method button instead of the payment form until one is saved.
  • The account must be in a normal state. A suspended account or one that's scheduled for deletion can't be resized, and only one package change can be in progress at a time.

Open the package picker

  1. Open your cPanel accounts. In the workspace sidebar, look for cPanel Accounts.

  2. Choose Upgrade / Downgrade. Open the actions menu at the end of the account's row and choose Upgrade / Downgrade. The screen that opens is headed Resize hosting account followed by the account's username, with Back to hosting in the corner.

When the action isn't there

A suspended account shows no actions menu at all — its row reads "Account suspended. Contact support to resolve." An account that is scheduled for deletion offers only Restore and Purge now; restore it first, and see Deleting and recovering an account.

Choose the new package

Under Choose a new package you get one card per package — Mini, Basic, Pro and Max — each showing the package name, its price for your billing term, the term itself, and a short description of what it includes.

  • The package you're on is marked Current plan and can't be picked.
  • Any package you can move to shows Choose; selecting it switches the card to Selected.
  • A package you can't move to is greyed out and reads Not available — see the next section.

Underneath the cards, the screen shows the figures the check is made against: Current usage: (disk used against the account's quota), Mailboxes in use: and Addon domains in use:.

When you're happy with the selection, choose Request change to go to checkout, or Cancel resize to leave the account as it is.

A resize never changes your billing term

The cards are priced for the term your subscription is already on, and there is no monthly/annual toggle on this screen. Changing the billing term of an existing subscription isn't supported, so a term change isn't something a resize can do for you — contact us if you need one.

Why some packages are unavailable

A cPanel package sets three separate limits, and every one of them is a hard cap in its own right:

Cap What it limits
Storage Total disk the account may use
Mail accounts How many mailboxes the account may hold
Websites How many sites the account may host — the main domain plus its add-on domains

They are not one pooled quota you can trade between. Being comfortably inside the storage cap doesn't buy you extra mailboxes, and an account that fits a smaller package on two of the three still can't move to it.

When a package doesn't fit what the account is currently using, its card is greyed out with Not available, and a panel headed Why some packages are unavailable lists each blocked package with the reason — worded as disk usage (…) exceeds …, too many mailboxes (… used, limit …) or too many websites (… used, limit …), and more than one reason where more than one cap is exceeded. A greyed-out card has no Choose button, so it can't be selected.

The cards and the submit check don't use quite the same rule. When you send the change, the usage check applies to a downgrade only — an upgrade can only make the caps bigger, so current usage is never a reason a submitted upgrade is refused. The cards, though, are each compared against their own package's caps whichever direction they are in. So an account whose real usage sits above the caps of the packages sold today — typically an older account carried over on a legacy package — can find a larger package greyed out as Not available even though submitting that change would have been allowed.

To move to a smaller package, first bring the account under that package's limits from inside cPanel — delete mailboxes you no longer need, remove add-on domains (see Managing your account's domains), and free up disk — then come back to the resize screen. If it's a package you would be upgrading to that is greyed out, there is no way to select it from this screen; contact us.

The mailbox and add-on domain figures are read from a copy of the cPanel server that refreshes periodically, so a mailbox you deleted moments ago in cPanel may still be counted. If a package you expect to be available is greyed out just after a clean-up, give it a few minutes and reload.

Confirm the change and pay

  1. Review the change. Request change takes you to the standard checkout, which opens at Ready to apply with the note "Your cPanel account will be updated to the selected package when you click apply." A summary card is headed You're upgrading this cPanel account or You're downgrading this cPanel account — or You're changing this cPanel account's plan where the two packages come to the same monthly price, or the package you're leaving carries no monthly price of its own — followed by for cPanel account and the username, and shows Current plan and New plan side by side.

  2. Check what's due today. The payment step shows an Order summary with a Due today total. What that total is depends on the direction of the change:

    • An upgrade is charged straight away, prorated. The change is invoiced immediately rather than at your next renewal, and you're billed only the difference between the two packages for the remainder of the current billing cycle. The button reads Pay {amount}.
    • A downgrade costs nothing today. The unused value of the package you're leaving is credited, so a downgrade nets out to nothing to pay — the summary card carries the note "Any unused amount will be credited to your account and automatically applied to your next invoice." The payment step shows No payment due today and the button reads Confirm change instead of a payment amount.
    • Credit already on your account is used first. If you have available credit and it covers the whole amount, the step shows Covered by account credit and again offers Confirm change. If it covers only part, the summary tells you how much was applied and what's left to pay.
  3. Complete the checkout. Choose Pay {amount} or Confirm change, depending on what the step offered you. Your package change is applied after the payment (or the confirmation) goes through — never before.

Credit is a balance, not a refund to your card

The credit from a downgrade is held on your account and drawn down automatically against your next invoices. It isn't returned to the card you paid with. See Downgrading or canceling issues a credit for how account credit works and where to see it.

While the change is being applied

Applying a package change means updating your subscription and then changing the package on the cPanel server itself, so it isn't instantaneous.

Only one package change at a time. From the moment the charge starts until the change finishes, another attempt on the same account is refused with "A package change for this account is still being applied. Wait for it to finish before starting another." This is deliberate: it's what stops a re-sent request from building and charging a second proration. It applies to a new change — retrying your own checkout is fine, so a card that gets declined or a 3-D Secure prompt you have to redo won't lock you out.

Don't re-send a change that appears to have worked. If the account is already on the package you're asking for, the request is refused with "Your account is already on this package." rather than charging you again.

The hold clears itself. As soon as the attempt concludes — applied, refused or failed — the account is free to be resized again, and if a run dies part-way the hold lapses on its own within about half an hour.

If the change fails after you've paid

You aren't left paying for a package you didn't get. The order is marked failed, the subscription change is reversed, and a credit note is issued against the proration invoice so the amount comes back to you as account credit. You'll also get an email with the subject "Your order could not be completed". If the account is still on the old package after that, contact us rather than retrying repeatedly.

Mail-only accounts change plan through support

If the account is a mail-only MailXXL account, Upgrade / Downgrade in the actions menu doesn't open the package picker at all. It opens a dialog, also headed Upgrade / Downgrade, reading "To upgrade or downgrade your MailXXL hosting account ({username}), please contact our support team." — with the account's own username in the parentheses — and offering Contact support and Close. Reaching the resize screen by its URL instead gets you the same sentence without the username, and the same two buttons. There is no self-service package change for these accounts — use Contact support and we'll make the change for you.

Over the API

A package change also exists on the REST API, so an integration can resize an account unattended — see Change Package (Resize). The API applies the same guards this page describes, including refusing a package the account is already on and refusing a second change while one is still being applied, and like the dashboard it requires an API key rather than an OAuth token because the action moves money.

Next steps