A 2 MB upload cap can stop a simple image update in its tracks. That small number is your WordPress upload limit, and it can turn a five-minute task into a frustrating support ticket.
Your WordPress upload file size limit is usually set by your hosting environment and PHP settings, not by WordPress itself. The good news is that you can often raise it in a few minutes without touching anything risky.
At ZADiC, we believe hosting should remove roadblocks, not create them. Start by finding the setting that is actually holding your site back.
What Sets the WordPress Upload File Size Limit
WordPress shows the upload limit, but it doesn’t always control it. Think of it like a doorway with several locks. Raising one lock won’t help if another one stays closed.
Check the number WordPress reports
Open your WordPress dashboard and go to Media > Add New. Near the upload area, WordPress displays the maximum file size it currently accepts.
Write that number down before changing anything. If it says 8 MB and you need to upload a 25 MB product video, you know the cap is the problem. If it says 64 MB but your file still fails, something else is getting in the way.
You can also check Tools > Site Health > Info > Server for PHP details. The WordPress community troubleshooting guidance shows why upload limits vary so much between hosts and server setups.
Find the layer that owns the limit
Most WordPress upload problems come from one of these places:
- PHP limits set by your hosting account or server.
- A Multisite network cap set by the network administrator.
- Web server rules such as Apache, Nginx, or LiteSpeed settings.
- A security layer that blocks a large request before WordPress sees it.
The reported WordPress upload limit is the visible result. Your hosting configuration is often the source. Make a current backup before editing settings, then change one method at a time.
Match the PHP Settings That Control Uploads
PHP controls how large an uploaded file can be and how long the server gives it to finish. One setting alone isn’t enough.
Use values that work together
These settings should be sized as a group. For a 64 MB file upload target, this is a sensible starting point:
| PHP setting | What it controls | Starting value |
|---|---|---|
upload_max_filesize | Maximum size of one uploaded file | 64M |
post_max_size | Total size of the upload request | 72M |
memory_limit | Memory PHP can use during processing | 128M |
max_execution_time | Time PHP can run before timing out | 300 |
The post_max_size value needs to be larger than upload_max_filesize. File data, form fields, and request overhead all count toward that total.
Raising
upload_max_filesizeto 64M won’t help ifpost_max_sizeremains 32M. The smaller rule still blocks the upload.
Pick a limit your site can support
Don’t set every value to 1 GB because it feels safer. A larger cap lets users send larger files, but it doesn’t add server memory, disk space, or upload speed.
Set the limit around the files you need to upload. A site importing large theme packages may need 64 MB or 128 MB. A site that only adds compressed images may need far less.
A bigger WordPress upload limit should solve a real need. It shouldn’t open the door wider than necessary.
Raise the WordPress Upload Limit in cPanel
For many shared hosting accounts, cPanel is the cleanest place to make this change. You don’t need a plugin, and you don’t need to edit WordPress core files.
Change PHP values in MultiPHP INI Editor
Inside cPanel, look for MultiPHP INI Editor. Some hosts use a slightly different name, but the purpose is the same: it lets you adjust PHP settings for a domain.
- Open MultiPHP INI Editor and select the domain running WordPress.
- Find
upload_max_filesize,post_max_size,memory_limit, andmax_execution_time. - Enter matching values, such as 64M, 72M, 128M, and 300.
- Save the changes, wait a few minutes, then return to Media > Add New to confirm the new limit.
If you manage several domains, make sure you select the right one. Changing the limit for a parked domain won’t help the live WordPress site.
Get hosting support when controls are locked
Some shared hosting plans lock PHP values at the server level. In that case, pasting random code snippets into WordPress can create more trouble than progress.
Our ZADiC WordPress hosting options pair cPanel access with one-click setup, backups, security services, and 24/7 human support. If your business depends on larger media files, migrations, or product assets, you need a hosting team that can check the real server limit and help fix it.
Use a Configuration File When cPanel Isn’t Available
A configuration file can work well when your host permits local PHP overrides. It can also be the right option when cPanel doesn’t expose the setting you need.
Try a .user.ini file first
Open your hosting File Manager and locate the WordPress root folder. This is the folder containing wp-config.php, wp-admin, wp-content, and wp-includes.
Create or edit a file named .user.ini. For a 64 MB upload target, add upload_max_filesize = 64M, post_max_size = 72M, memory_limit = 128M, and max_execution_time = 300.
Some servers take several minutes to read a changed .user.ini file. Check the Media screen again after waiting, then test with a real file below the new cap.
A helpful comparison of .user.ini and .htaccess upload methods explains why the right file depends on the server running your site.
Use .htaccess with care
The .htaccess method is for Apache-based hosting that allows PHP directives in that file. Nginx doesn’t read .htaccess, and some hosts block these changes even on Apache.
A bad line in .htaccess can trigger a 500 server error. Back up the file first. If the site errors after your edit, remove the added lines and use cPanel or hosting support instead.
We don’t recommend relying on wp-config.php as your first choice. Many hosts disable PHP overrides from WordPress files, so the change may do nothing.
Adjust Multisite Upload Caps Separately
WordPress Multisite adds one more rule to the mix. You can raise PHP limits and still hit a smaller network-wide upload cap.
Check Network Admin settings
Go to My Sites > Network Admin > Settings > Network Settings. Find the Upload Settings area and look for Max upload file size.
This field uses kilobytes. For a 64 MB limit, enter 65536. Save the setting, then test from a subsite dashboard.
The network setting can’t override a lower PHP limit. PHP still needs to allow at least the same file size, with enough room in post_max_size for the full request.
The Multisite upload cap overview is useful if the network setting and server setting don’t match.
Keep the policy practical
Network administrators should set limits based on what member sites truly need. A portfolio network may need higher image limits. A network with many casual contributors may need tighter controls.
File size isn’t the only rule. WordPress can restrict file types, while your hosting account can still run out of available storage. A higher upload cap doesn’t remove those limits.
Fix Upload Errors That Aren’t Size Problems
Sometimes you raise the limit and the upload still fails. That’s your signal to read the error instead of raising every number again.
Match the error to the likely cause
Common upload failures point to different layers:
- An HTTP 413 error often points to a web server, proxy, or security rule.
- A 500 error after editing configuration files usually means the server rejected a directive.
- A message naming the maximum file size points back to PHP or Multisite settings.
- An upload that starts but fails later may involve a timeout, low disk space, or an unstable connection.
Check your hosting error logs if they’re available. The exact error message can save hours of guesswork.
Know when better hosting is the answer
A larger limit doesn’t make a crowded server faster. Bulk imports, WordPress backup restores, high-resolution media libraries, and large WooCommerce catalogs need more than a bigger number in PHP.
That is where a hosting upgrade can make sense. Our managed Web Hosting Plus and VPS plans give growing sites more room to handle demanding work, while our support team can help you choose the right path.
A bigger plan isn’t a shortcut around every issue. It does give your site more breathing room when large files are part of the job.
Keep Larger Uploads Safe and Sensible
Larger uploads are useful, but they should stay controlled. A 500 MB file can fill storage quickly, slow down backups, and create a long failure if the connection drops near the end.
Set limits around real file needs
Use the smallest practical cap for your workflow. A site importing full WordPress backups needs a different allowance than a brochure site with a few image galleries.
Review who can upload files, too. Limit administrator access, keep WordPress updated, and use security monitoring to catch suspicious activity before it becomes a bigger problem.
Treat uploads and backups differently
An uploaded file is not a backup. Before changing PHP settings or importing a large archive, confirm that you have a recent backup you can restore.
For public video, a dedicated video platform can be a smarter fit than filling the WordPress Media Library with huge files. Your website stays lighter, and visitors get a better viewing experience.
A Better Upload Experience Starts With the Right Limit
That frustrating 2 MB message isn’t a WordPress dead end. Check the displayed cap, match the PHP settings, and adjust the hosting or Multisite rule that is actually blocking the file.
The right WordPress upload limit is large enough for your work and sensible for your server. With dependable hosting behind it, uploads stop feeling like a fight and get back to being a routine part of running your site.






