Apr 12, 2011

I'm trying to understand how the disk space quota works for resellers in WHM. As far as I can tell, mailbox quotas form part of the overall disk space limit. Firstly, is that right? If so, is there any way this can be changed?

My scenario is that I want to be able to sell disk space for web storage, and I don't want to provide loads by default because I don't want customers using their web space as a file store when they don't need to.

For example, I think 100 MB is more than enough to start with for web space.

However, as far as I can tell, the mailboxes with a domain also use the same disk space. As such, if that same customer had 20 mailboxes, each with (for instance) a 50 MB quota, then I need to raise the total disk space allocation to at least 1000 MB to cover the mailboxes, and an extra 100 MB for the original disk space.

But then there's nothing stopping the website file storage from gobbling up the whole 1100 MB of disk space.

This presents two problems (which I shouldn't need to spell out, but I will); Firstly, there's little point in enacting a 100 MB web space limit, because it includes mailbox capacity as well, and can just be used up willy-nilly. Secondly, any overuse of the disk space from website storage then reduces the capacity of the mailboxes.

However, here is my real world scenario: a customer with a 100 MB website storage limit, and a 2 GB single mailbox size limit. It's not possible, as far as I can tell.

Am I barking mad, or is that just the way it is?


Last edited:


Well-Known Member
May 20, 2003
cPanel Access Level
Root Administrator
100MB is a very small account. If you could edit your config to allow what you wanted, you still wouldn't be able to allow backups, as the mail dir is also owned by the user even if not checked by quotas for the account itself. So when the system attempts to backup the account it would probably fail as that user is out of space. (he's got a quota of 100MB and needs to backup his willy-nilly 900MB of emails.) The system checks to see how much space is available, sees that its 100MB and bails out.

I don't want customers using their web space as a file store when they don't need to.
As long as it's legal (and doesn't make the account over quota), why would you want to restrict what a user puts on his account?

If the user has a 100MB account and needs to create 20 email accounts he'd do better to make them very small accounts to go with his very small hosting plan. If he needs more space, he'll upgrade to your larger plan (or move to a host that offers larger plans. read: most do, IMHO.).


Apr 12, 2011
Thanks for the reply. I see what you're saying, but what I'm suggesting is that cPanel know what the disk space quota is set to, and what each mailbox quota is set to. It already knows these figures, because I can set and see each of them already in cPanel.

What you're suggesting is that mailboxes should usually expect to have relatively small limits, and that the web space limit should be relatively large.

Given the ideal scenario currently, lets say I provide a customer with 2 GB of web space (seem fair?) and they have 10 mailboxes with 50 MB limits. So I need to assign a total of 2,500 MB disk space for them.

Lets say (all things staying legal) they have a 40 MB website, but start storing files on their web server, knowing they have a 2 GB limit. They get to 2 GB, and realise they haven't been limited yet. So they think they can keep going. They continue to store files until they do reach their limit. By which point, mailboxes become instantly full, even though they haven't reached their own 50 MB limits.

Then I have to contact the customer and explain that their mailboxes are full because they overused their web space quota, but there was no warning or limit because that's not how the system works - the space is shared with the mailboxes. And there never will be a warning or a limit, so just be careful and don't overuse your 2 GB allowance.

Unlikely, perhaps. Not ideal, certainly. It means without keeping an eye on each customers disk usage, neither we nor they will know if they're getting close to their 2 GB web space limit.

This doesn't get around the problem that the disk space allocation is per package, not per customer, and if I set it based on one customers web space plus mailbox total, it changes it for any other customers using the same package. The number of mailboxes in that instance are the governing factor as to the total limit. That almost makes packages pointless, because they're no longer reusable, instead each one is tailored to a customer. Unless I set up packages for the following:



If this seems like a lot of hassle and not worth it, then I suppose I could just create some packages with overall limits of 3 GB, 5 GB etc. But assuming my published web space limit is still 2 GB, and the remaining overhead is for mailboxes, this seems to negate the purpose of providing a disk space limit.

What seems to me to make most sense, is if the web space disk quota is set per package, and calculated as everything in the customers' account not including the mail directories. Then mailboxes can be added with individual quotas, and managed separately. Reporting will be accurate, package quotas will make more sense, and if hosts want to allocate a small amount of web space and a massive amount of mailbox space, they can. It would be 100% configurable.

What's more, backup would surely be no problem. The expected space required would be a total of the mailbox quotas plus the disk space quota. How does backup work at the moment if the disk space quota and mailboxes are set with no limits?

I presume this isn't the way you find most people configure their hosting packages? But nevertheless, I don't understand this unnecessary restriction.

Have I got totally the wrong end of the stick?


Aug 26, 2009

While I don't have much to add to the actual discussion of how to configure the server to remove the e-mail usage from the overall quota calculations, I would really like to ask rather or not it's really worth the amount of time and effort to worry about disk space usage.

It seems to me that the average web-hosting customer isn't going to use very much space and that artificially limiting them to 100MB is going to invite more problems than it's going to solve. The average hard disk size is probably close to a terrabyte now. Wouldn't it just be easier to have some scripted checks run through the accounts and provide reports that identify accounts that have files with ominous data types or sizes in excess of the normal image or short video?

Isn't the worse case scenario that your service is so popular and that you have so many clients that you just need to add another disk? :)


Jun 30, 2011
It seems to me that the average web-hosting customer isn't going to use very much space and that artificially limiting them to 100MB is going to invite more problems than it's going to solve. The average hard disk size is probably close to a terrabyte now.
apage makes a good point. We provide high peformance options and there's no such thing as a 1TB SAS 15k HDD currently. The biggest I'm aware of is 600GB for $700. In a RAID configuration some storage aint cheap. :)



Well-Known Member
Jan 5, 2010
Orlando, FL
cPanel Access Level
DataCenter Provider
I hate to bump an old thread, but I wanted to see if there was any progress made on this.

I prefer having the option of being able to *ENFORCE* the limits on a reseller's account.

I came to this thread after one of my resellers decided to not pay attention to one of his databases, and it ended up consuming 5GB in space, which pushed him over his limit. It didn't cause a problem at the time, but I had a similar situation on another server became nasty for others on that server when a single reseller had one account with an incredibly large error_log file in one of his user's /public_html/ directories -- which practically crippled the entire server since the log file was over 40GB in size, and the server (which is actually a VPS) only had 100GB of space available to it.

This stopped Apache from spawning new processes, mail from being received to other clients/resellers/accounts on the server, and a slew of other things I don't really care to go into further detail about -- let's just say it was a support nightmare for me for that day, and the above prior experience yesterday with this reseller on one of my new servers (which is dedicated with a 500GB hard drive) got me thinking -- his MySQL database issue, had it been allowed to proceed could have left me in a position with yet another server crippled by allowing one user to bring everyone else down -- so before this gets out of hand, I wanted to check and see if cPanel has created, or is in the process of further developing an enforcement feature.

I vote for having the option to enforce resource allotments. Notifications about a user's resource usage are nice, but enforcement is better.

I do not oversell, nor do I allow me resellers to, but I have to agree with the posters on this thread who are championing enforcement -- I'd like to give them the opportunity to do so, but not without enforcement being an option.

I'm not babysitting any resellers to figure if they are within their allotments or not.

I agree with the assertion one poster made where he asserted that the person who owns the server should have more power than the reseller does.

If a reseller screws up and doesn't pay attention to his resource allotment and pisses off his customers. . .that's his problem.

I'd have other resellers/clients to answer to if I allowed one reseller to screw things up for all my other resellers on the same system -- I'd rather lose the business of one reseller by enforcement (which is his fault anyway if he doesn't pay attention to his allotted resources) than a bunch of resellers who I have to explain things to, and in turn have to explain to their customers.

As the server owner, I do not get unlimited space or bandwidth, therefore neither should my resellers in practice.

Resellers over-selling is fine, within their resource limits.

If I give a reseller 10GB of space, and he wants to create 1,000 accounts on that space, that's his prerogative -- but as soon as he hits that 10GB mark in ACTUAL disk space usage, his account (and customers) should either be suspended, or he should be unable to create files/databases or anything else that would use more disk space by definition (i.e. creating e-mail accounts, databases, ftp accounts, uploading ftp files, etc.)

My 2 cents. . .if anyone knows what cPanel has decided to do, please let me know! =0)