Rising bars stopped by a hard orange ceiling line
Blog

What Unlimited Hosting Really Means

Somewhere in every hosting terms of service there is a sentence that goes roughly like this: unlimited storage is intended for files that are part of the normal operation of your website. Then comes a short list of what is not, usually archives, backups of other machines, and media you are not actually linking to. That sentence is the product. Unlimited hosting is a promise about your invoice, and that line is where the capacity quietly goes back to the host.

The sentence that defines the word

Read it once and the marketing stops being confusing. A disk holds what a disk holds. A 2 TB drive in a rack somewhere holds 2 TB whether the plan page says unlimited or not. Nobody at the host believes otherwise, and the terms of service is where they say so, because that is the one place it has to be said.

What the plan is actually selling is a flat bill. You will not get an overage invoice because your gallery grew, or because a good month brought more traffic than usual. That is worth something. Predictable cost is one of the main reasons small businesses leave metered platforms in the first place.

But a flat bill and a finite machine cannot both be open ended. One of the two has to give. It is never the machine.

A disk holds what a disk holds.

Inodes are the limit most people hit first

An inode is one file or one folder. Not one gigabyte, one file. Plans that advertise unlimited disk space almost always publish an inode cap somewhere in the control panel instead, and a quarter of a million is a common number to see.

Here is how an ordinary business gets there without doing anything unusual. A photographer uploads 40 images to a gallery. The site generates six resized copies of each one for thumbnails and responsive layouts, so 40 originals become 280 files. A hundred galleries over five years is 28,000 files, and that is before plugins, caches or the theme itself. Now add the mailbox. IMAP stores each message as its own file, so an office that has kept 60,000 emails across four staff accounts is holding 60,000 inodes against the same quota. Then a backup plugin starts writing full copies of the site into a folder inside the site, ten copies deep.

The counterintuitive part is that big files are harmless. A 4 GB video is one inode. The accounts that hit the wall are almost always the ones whose owner says they have barely used any space, because the space really is barely used. It was the file count that ran out, and file count was never on the price table.

What unlimited hosting is really selling

Unlimited is a decision made by whoever sets the price, not by whoever racks the server. The host works out how many accounts fit on a machine, assumes most of them will use a small fraction of what they could, and prices so that the average account pays for the hardware. That is not a trick. It is the same arithmetic behind every flat rate ever sold.

The engineering question does not go away, though. Somebody still has to decide how much one account may consume before the other accounts on that box notice. That answer exists. It just lives in a resource usage page, or a support article, or an email you get on a Tuesday, rather than on the page with the buy button.

Which is why a plan can say unlimited storage and 250,000 files on the same screen without anyone blushing. The first one is the billing model. The second one is the server.

The limit did not disappear. It moved to a page with no buy button on it.

CPU seconds and the process cap

Disk is the polite limit. Processor time is the one that takes your site off the air. On shared hosting your account gets a slice of a machine you share with other accounts, usually described as a percentage of a core, or a number of CPU seconds in a window, plus a cap on how many of your pages may be building at the same moment.

Put numbers on it. Say a page takes 400 milliseconds of processor time to assemble. One core builds two and a half of those per second, 150 per minute, which is plenty for a business site. Now say the site runs a heavy theme and thirty plugins with no page cache, and the same page takes a full second. You are down to 60 per minute. Send a newsletter to 2,000 people, get 300 clicks in the first five minutes, and you are sitting at one request per second at exactly the moment the slowest version of your site is the one being served.

The concurrent process cap is the other half of it. Twenty simultaneous entry processes is a typical figure. Requests past that do not fail politely, they queue, and when the queue fills, people get a 508 Resource Limit Is Reached page. Your uptime monitor may report the site as up the entire time. And 99.9 percent uptime allows 8.8 hours of downtime a year anyway, so the number on the marketing page would survive the afternoon even if the monitor did catch it.

For most sites, none of this matters

This is not an argument that unlimited plans are a bad deal. A brochure site for a contractor is maybe 400 files and a few hundred megabytes with images, serving a few thousand visits a month. It will never see an inode warning or a CPU throttle. For that business, web hosting for small business at a flat monthly price is exactly the right product, and the flat price is the feature, not the bait.

The plans break at edges that are easy to name in advance. Sites with large media libraries. Offices that have never deleted an email. Sites doing real work on every request, like a search across a big catalog, a booking calendar, or a filterable product list. And sites that get popular in a single afternoon, which is the good problem, arriving in the form of a 508.

What makes that unpleasant is not the limit itself. It is that the limit was never quoted, so nothing was planned around it. You find out at the ceiling, in an email that uses the word suspension, on the day the traffic finally showed up.

You find out at the ceiling, which is the worst possible place to learn a number.

A named limit is a better deal than an unnamed one

The useful test of a hosting page is not whether it says unlimited. It is whether the same company will also tell you the inode cap, the CPU allowance, the concurrent process cap, and what happens when you reach any of them. Getting throttled and getting suspended are very different Tuesdays, and the difference is a policy choice the host has already made.

Two other answers are worth having before you sign anything. Whether backups count against your quota, because a backup of your site stored on your site is the fastest way anyone has ever doubled a file count. And whether mailboxes share the quota with the website, because on most shared plans they do, and the mailbox usually grows faster than the site does.

A host that names its numbers is telling you the size of the machine you are standing on. A host that only says unlimited is telling you the size of the invoice. Both are true statements. Only one of them helps you decide anything.

Unlimited is a word from the billing department, and read that way it is honest enough. It means your invoice will not move. It has never meant that the disk, the processor or the process table stopped being finite objects sitting in a building somewhere with a generator out back. The limit is still there, whole and unchanged. It has just been moved onto a page nobody reads until the morning it stops them, and that, rather than the word itself, is the part worth being annoyed about.