Every account on CloudLinux has a physical memory (PMEM) limit: the total RAM all its processes may use together. When a request would push usage over the limit, the process is stopped and visitors see a 500 or 503 error. This is different from PHP's own memory_limit, and the fix depends on which one you hit.
Before you start
- cPanel access to the account.
- When the errors happened and on which pages.
Two different memory limits
| CloudLinux PMEM | PHP memory_limit | |
|---|---|---|
| Applies to | All processes of the account together | One PHP request |
| Typical error | 500 or 503, sometimes no PHP message | Allowed memory size of … bytes exhausted |
| Where to see it | Resource Usage: memory faults | Error log |
| Changed by | Plan or reseller limits | Select PHP Version → Options |
Check for PMEM faults
- Go to cPanel → Metrics → Resource Usage → Details.
- Look at the physical memory graph and the PMemF fault column at the time of the errors.
If you see PHP's "Allowed memory size" message instead, raise memory_limit (see PHP options and memory size exhausted errors).
Why accounts run out of memory
- Many simultaneous PHP requests: each uses memory; 20 uncached requests at 64 MB each is over 1 GB.
- Memory-hungry plugins: page builders, large WooCommerce reports, backup plugins.
- Imports and image processing: large files processed in one go.
- Node.js or Python apps holding memory permanently.
Reduce memory use
- Turn on page caching so most visits do not start PHP (see LiteSpeed Cache).
- Do not set memory_limit very high: a 1 GB per-request limit lets one runaway request use your whole account allowance. 256–512 MB is plenty for most sites.
- Run heavy tasks in batches or from cron at quiet times (see cron jobs).
- Remove unused plugins, especially ones that load on every page.
- Block bad bots that create many parallel requests.
Note: Raising PHP memory_limit above the account's PMEM limit does not give you more memory; the request still fails at the CloudLinux limit.
When to upgrade
If memory faults happen at normal traffic with caching on, the site needs more resources. Upgrade your plan, or ask your reseller to raise your limits. Resellers see faults for all customers in resource monitoring.
Frequently asked questions
Why do I get 503 instead of 500?
On LiteSpeed, a PHP process that cannot start because of memory often produces a 503 (see the LiteSpeed 503 guide).
Does email count towards PMEM?
Mail delivery runs as system services, not inside your LVE, so normal email does not use your memory limit. Webmail sessions run PHP and do count.
How much memory does a WordPress request use?
Typically 40 to 128 MB, more with page builders or WooCommerce. Multiply by simultaneous uncached requests to see why caching matters.
