A full account quota can stop uploads, updates, cache writes, email and database operations. The largest visible WordPress directory may not be the cause: cPanel backups, mailbox data, logs and database usage often share the quota.
Do not run another local backup or delete unknown files. First measure every storage category.
Confirm the quota scope
Use cPanel/Plesk disk usage plus provider quota details. Record bytes and inodes separately.
Measure:
home/public_html
databases
mailboxes
backup/snapshot archives
logs
cache/temp
staging copies
Panel totals may update slowly; compare filesystem/provider evidence.
Contain further growth
Pause local backups, imports, scans, image generation and verbose debug logging. Put high-write features into an appropriate maintenance mode if database writes fail.
Do not repeatedly attempt updates/uploads; each can leave more temporary data.
Preserve external access and one known-good off-server backup.
Find safe candidates
Old local ZIP/tar backups, abandoned staging copies, generated cache and rotated logs may be removable after ownership/retention review.
Move backups off-host and verify checksum before deletion. Use plugin/panel purge controls for cache rather than deleting arbitrary directories.
Never delete wp-content/uploads, active database files or unknown PHP to create space.
Review mail storage
Mailbox attachments, Spam/Trash and catch-all accounts can dominate shared quotas. Use webmail/panel reports and business retention rules.
Archive required email to an approved system before removal. Do not delete mail to repair WordPress without the mailbox owner’s authorisation.
Fix forwarding loops or spam floods that refill storage.
Inspect logs and debug files
debug.log, PHP error logs, access logs and security logs can grow rapidly during an error loop. Preserve a bounded incident sample, then rotate through supported controls.
Disable temporary debug mode after repair and configure rotation/retention. A log filling disk is a symptom of an unresolved repeating error.
Do not remove audit logs needed for an active incident.
Measure database growth
cPanel database usage can count separately or within the same quota. Identify large sessions, scheduled-action logs, transients, revisions or plugin tables.
Restore supported cleanup jobs and fix their failure. Do not delete posts/orders/submissions based only on table size.
Database optimisation may require additional temporary disk; do not start it at near-zero headroom.
Budget temporary restore and update space
Plugin/core updates often download an archive, extract another copy and retain the current directory briefly. Restores can require compressed backup, decompressed files and database temporary space simultaneously.
Estimate peak rather than final site size. Schedule large restore/import only after moving source archives off the quota where supported and confirming enough headroom. Do not start a repair that can fill the disk halfway and leave mixed files.
Check hidden and panel-managed storage
Dot-directories, Softaculous/WordPress Toolkit backups, Git data, Composer/npm dependencies and panel trash may not appear in a simple public_html view.
Use panel reports with hidden files enabled and identify the owner before removal. A .git directory may be the deployment history; vendor/node_modules may be build-time only or runtime-required. Move build artifacts out of production through the supported pipeline, not arbitrary deletion.
Plan headroom and backups
Leave space for uploads, temporary extraction, MySQL operations and restore. Establish alerts well before the hard quota.
Send backups to external storage with encryption/retention and test restores. Keeping three local full copies of the same site defeats recovery during quota exhaustion.
Estimate campaign and import peaks, not only normal growth.
Verify all write paths
After safe cleanup/upgrade, test draft save, upload, update extraction, cron, database and email. Inspect logs and quota through several cycles.
Recurring care should report bytes, inodes and top growth sources. The durable repair creates headroom and removes the recurring producer, not merely enough space for the next request.