A new WordPress site needs well under 1 GB. WordPress itself unpacks to about 110 MB, and WooCommerce adds about 57 MB. What fills a plan later is what you add: photos, email, the database and any backups kept inside your account. On a shop, photos soon become the biggest part, because WordPress keeps every photo you upload and also saves several smaller copies of it. In our test store, 100 product photos took about 535 MB on disk, 1.6 times the size of the files we uploaded.
Below are the numbers we measured, how to estimate your own site from them, and how much bandwidth to plan for.
How much space does WordPress take on its own?
We downloaded the current WordPress release from WordPress.org and the current WooCommerce plugin from the WordPress.org plugin directory, unpacked both, and added up the files:
- WordPress. About 110 MB in 3,782 files. Most of it, about 86 MB, is the
wp-includesfolder, the code every page runs on. - WooCommerce. About 57 MB in 5,452 files.
- Together. About 167 MB and 9,234 files, before you add a theme, other plugins, a single photo or any email.
A theme and other plugins add more. The code does not grow with your business, though. A shop with ten products and a shop with a thousand run the same WordPress and the same WooCommerce. What grows is your content.
Why do photos take more space than you expect?
Every time you upload an image, WordPress saves your original and then makes smaller copies so each page can load a size that fits. We read the default sizes in the WordPress and WooCommerce code:
- WordPress makes copies up to 150, 300, 768, 1024, 1536 and 2048 pixels wide, as long as the original is larger. The 150 pixel thumbnail is cropped square.
- WooCommerce adds three more for product images, a 100 pixel square for gallery thumbnails, a 300 pixel square for shop pages and a 600 pixel wide copy for the product page. Its image sizes documentation explains how themes can change these.
- Large photos get one more copy. If a photo is wider or taller than 2560 pixels, WordPress makes a scaled-down version at 2560 pixels and uses it as the largest size on the site, but it keeps your original as well. The big_image_size_threshold reference describes this limit.
Your theme and plugins can register further sizes, and WordPress makes those too. So one upload can become a dozen files.
What happened when we added 100 product photos to a test store?
We built a throwaway test store to measure this instead of guessing. It ran the current WordPress and WooCommerce with the default theme and no other plugins. We created 100 products and gave each one a product photo.
The photos were test images we generated, 4,000 by 3,000 pixels, the size of a 12 megapixel camera photo, saved as JPEG at about 3.3 MB each. Together the 100 originals came to 334 MB.
After the import, the uploads folder had grown by about 535 MB and 1,100 files. That is 1.6 times the size of the photos we uploaded. Each photo had become 11 files:
- the original, about 3.3 MB, which WordPress kept unchanged
- a scaled copy at 2,560 by 1,920 pixels, about 0.8 MB, which WordPress uses as the largest size instead of the original
- nine smaller copies from 100 to 2048 pixels wide, about 1.2 MB together
The database grew by about 0.6 MB for the 100 products and their image records. Product records take little space. Photos take almost all of it.
Your own numbers will differ. A photo with lots of fine detail compresses less than a plain product shot on a white background, and a theme with extra image sizes makes more copies. The pattern holds though. At about 5.3 MB per full-size photo, the photos and their copies outgrow WordPress and WooCommerce together after about 30 photos.
How can you make photos take less space?
The simplest saving is to resize photos before you upload them. WordPress keeps the original you upload, so a 4,000 pixel original stays on your disk even though no page shows it at that size.
We tested this with one of the same photos. Resized to 2,000 by 1,500 pixels and saved as JPEG before upload, it was 0.54 MB. WordPress made no scaled copy, because the photo was under 2560 pixels, and no 2048 pixel copy, because the photo was smaller than that. The photo and its 8 copies took 1.2 MB in total, against 5.3 MB for the same photo uploaded at full size. That is under a quarter of the space, and the 1536 pixel copy is still there for large screens.
A few more habits help:
- Delete photos from the Media Library that no page uses any more. Deleting an image there removes its copies too.
- Do not upload the same photo twice for two products. Pick it from the Media Library instead.
- Before you install an image optimisation plugin, check whether it keeps a backup copy of each original. If it does, your photos take more space, not less.
What else uses disk space on cPanel hosting?
The disk figure on a cPanel plan covers your whole account, not only your website. cPanel’s Disk Usage documentation explains what it counts. These are the usual items besides your site:
- Email. Mailboxes on your domain live in the same hosting account as your website. Whether they share its disk quota depends on the host, so ask. cPanel’s Email Disk Usage tool lists each mailbox by size and lets you remove old or large messages.
- Databases. cPanel includes MySQL database size in your disk usage. The documentation adds that it does not enforce the quota when a database alone pushes you over it, but it still shows in your total.
- Backups you keep in your account. A backup plugin that saves a full copy of the site every week inside your account adds another copy of the site, usually compressed, each time. Download backups to somewhere else, or keep only the latest few.
- Cache and log files. A page cache stores copies of your pages as files, and error logs grow if a plugin keeps reporting the same problem.
The same documentation warns that a backup of an account near or over its quota may fail, because the system cannot write the files it needs. Running close to your limit is a risk in itself, so leave room.
Do file counts matter as well as gigabytes?
Some hosts also limit the number of files an account may hold, often called inodes. WordPress and WooCommerce together are already over 9,000 files before you add anything. In our test store, every full-size photo became 11 files on disk, so 100 photos added 1,100 files. If a host limits files, ask for the number, and include photos and cached pages when you compare it. Our checklist on what to check before you buy hosting covers this and the other limits worth asking about.
How much bandwidth does a WordPress site need?
Bandwidth, sometimes called data transfer, is the amount of data your site sends to visitors in a month. Storage is what sits on the server. Bandwidth is what leaves it.
You can estimate it from two numbers:
- Page weight. Open one of your pages in Chrome or Edge, press F12, open the Network tab and reload. The bottom bar shows how much was transferred. Do this for your home page and a typical product or post page.
- Page views per month. Take this from your analytics. For a new site, use a cautious guess.
Multiply the two. As an example, a site whose pages weigh 2 MB on average and get 10,000 page views a month sends about 20 GB a month. Search engine crawlers and returning visitors change that figure in both directions, so leave room. Returning visitors’ browsers often reuse files they already downloaded, while crawlers fetch pages your visitors never open.
The same photo habits help here too. A product page that loads a 600 pixel copy instead of a 2560 pixel one sends far less data to every visitor, which also makes the page load faster.
How much storage should you buy?
Work it out from what you will store, then add room to grow:
- Start with about 170 MB for WordPress and WooCommerce, plus your theme and plugins.
- Add your photos. Multiply the number of photos you expect in the first year by the space one photo takes once WordPress has made its copies. Our test figures above give you a starting point, and the resized example shows how much smaller it gets.
- Add your email. Count the mailboxes and how much mail each person keeps.
- Add your database. For a new site it is small. A shop’s database grows with orders.
- Leave at least a third of the plan free, so backups, updates and cache files never hit the limit.
For a sense of scale, our own hosting plans range from 5 GB for one website to 30 GB for ten. By our test figures, 5 GB holds about 900 full-size camera photos with their copies, or over 4,000 photos resized to 2,000 pixels first, before you count email and backups. If you are planning a shop, our guide on starting a WooCommerce store in Pakistan covers the other parts of the setup.
How do you check how much space your site uses now?
WordPress shows you itself. Open Tools, Site Health, Info and expand Directories and Sizes. The Site Health documentation says this section shows the size of your WordPress folder, uploads, themes, plugins and database, and the total.
For the whole account, including email, open Disk Usage in cPanel. It lists the folders that take the most space. If the total surprises you, the uploads folder and the mail folder are the first places to look.
Frequently asked questions
Is 1 GB enough for a WordPress site?
For WordPress alone, yes, since it takes about 110 MB. It gets tight once you add WooCommerce, photos, email and backups. Work out your own total with the steps above before you choose a 1 GB plan.
Why is my uploads folder so big?
Because WordPress keeps every original photo you upload and also makes several smaller copies of it. Large camera photos get an extra scaled copy as well. Resizing photos before you upload them is the easiest way to keep the folder small.
Does email count against my hosting storage?
It depends on the host, so ask. Mailboxes on your domain live in the same hosting account as your website. If the host counts them toward the same quota, full mailboxes can use up the space your website needs, and cPanel stops saving any files once the quota is full.
What is the difference between storage and bandwidth?
Storage is the space your files, email and database take on the server. Bandwidth is the data the server sends to visitors each month. A small site with large images can use little storage and a lot of bandwidth.
How much storage does a WooCommerce store need?
WordPress and WooCommerce take about 167 MB together. The rest depends on your product photos. In our test store, each full-size photo used about 5.3 MB once WordPress had made its copies, so multiply that by the number of photos you plan to upload.
