You drag a photo into the WordPress Media Library, wait a moment, and instead of a thumbnail you get a red error: something like “filename.jpg exceeds the maximum upload size for this site.” It is a frustrating wall, because the image is perfectly fine — it is just larger than the ceiling your particular install allows. The good news is that this is one of the most solvable problems in WordPress, and you almost never need to edit a server config file to get past it.
Why WordPress rejects the upload
WordPress runs on PHP, and PHP decides how big an uploaded file is allowed to be. Two settings govern this: upload_max_filesize (the largest a single file can be) and post_max_size (the largest a whole submission can be). Whichever is smaller wins. Your web host sets these values, and they vary a lot from one host and plan to another — you will commonly see a limit of 2 MB, 8 MB, or 64 MB, but there is no single number that applies everywhere.
That is the key honesty here: there is no universal WordPress upload limit. It is whatever your host has configured PHP to allow. So before you assume anything, check the actual number for your site.
How to find your own upload limit
WordPress tells you directly. In the admin dashboard, go to Media → Add New Media File (older versions call it Media → Add New). At the bottom of the uploader you will see a line such as “Maximum upload file size: 8 MB.” That figure is the real ceiling for your install — not a guess, not a number from a blog post, but what your server is enforcing right now. Read it, and treat any file bigger than that as something you need to shrink first.
Raising that limit is possible — you can ask your host to bump it, or edit php.ini, .htaccess, or wp-config.php — but that means server-level changes, some hosts lock them down, and it does nothing for the real problem underneath. Which brings us to the better path.
Big images are a problem even when they upload
The upload error is really a symptom. Even if your host allowed a 20 MB photo through, putting it on a page would hurt you. Large images are the single most common reason pages load slowly, and page speed feeds directly into Core Web Vitals — Google’s measurements of loading, interactivity, and visual stability. A heavy hero image drags down Largest Contentful Paint, and slow pages rank worse and lose visitors who give up waiting.
So the goal is not merely “get under the limit.” It is to publish images that are the right size for how they are actually displayed. A photo shown in a 700-pixel-wide content column does not need to be a 4000-pixel export straight off your camera. Serving those wasted pixels to every visitor is pure overhead.
The fix: compress before you upload
The reliable, no-server-config solution is to compress and right-size the image on your own device first, then upload the smaller version. Two moves do almost all the work:
- Right-size to the display width. Figure out how wide the image will actually appear — often somewhere between 800 and 2000 pixels depending on your theme — and resize it to about that. Anything wider is invisible detail the browser throws away anyway.
- Compress to a few hundred KB. For most content photos, a target in the low hundreds of kilobytes looks great and loads fast. That is comfortably under almost any host’s limit and light on your page budget.
You do not need a plugin or a subscription to do this. Use the compressor below to pick a target size and shrink your image right now — it runs entirely in your browser, so the file never leaves your device and nothing is uploaded to a server.
Compress your image for WordPress
Pick a target size under your upload limit — runs in your browser, nothing uploaded.
Drop your images here
or click to browse your device
Supports JPG, PNG, WEBP, HEIC, AVIF, GIF, BMP · up to 50 files · max 100 MB each
Your images never leave your device.
Once you have the smaller file, upload that to the Media Library instead of the original, and the “exceeds maximum upload size” error disappears. If you would rather do this on its own page or need to compress a batch of images before a big post, our standalone compress-image tool does the same job. And if you are still deciding which file type to publish, our guide to the best image format for the web walks through the trade-offs.
What about WebP?
Modern WordPress (5.8 and later) supports the WebP format, and it is worth using. WebP typically produces noticeably smaller files than JPG or PNG at the same visual quality, which means faster pages and easier uploads. Every current browser displays it, so there is little downside for the web. If your images are currently JPGs, you can convert them first — see our convert JPG to WebP tool — and then compress the result to trim it further before uploading.
A caveat worth knowing: a few hosts have PHP configured without WebP support, which can cause a rare upload error for that format specifically. If a WebP file is refused even though it is small, fall back to a well-compressed JPG, which every host accepts.
Extra tips for lean WordPress images
- Check the limit before a big upload session. Glance at the Media → Add New screen so you know the number you are working under, rather than discovering it one failed upload at a time.
- Use JPG for photos, PNG for graphics. JPG compresses photographic images efficiently; reserve PNG for logos, screenshots, and anything with sharp text or flat color where crisp edges matter.
- Do not upscale. Enlarging a small image to look “higher quality” only inflates the file without adding real detail — and pushes you back toward the limit.
- Convert phone formats first. If your image is a HEIC file from an iPhone, WordPress may reject the format outright. Convert it with our HEIC converter on the home page, then compress the result before uploading.
Frequently asked questions
What is the maximum image size for WordPress?
There is no single answer — it depends on your host’s PHP configuration (upload_max_filesize and post_max_size). It is commonly 2 MB, 8 MB, or 64 MB, but the only number that matters is yours. Find it under Media → Add New, where WordPress shows “Maximum upload file size” for your specific site.
How do I fix the “exceeds maximum upload size” error without editing server files?
Compress and resize the image before uploading so it lands under your limit. That sidesteps php.ini and .htaccess changes entirely. Resize toward the width the image will actually display at and compress to a few hundred KB — the compress-image tool does both in your browser.
Will compressing images hurt my site’s quality?
Not when done sensibly. Right-sizing to the display width removes only pixels no one sees, and moderate compression is close to invisible on screen. In exchange you get faster pages and better Core Web Vitals, which help both visitors and search rankings.
Should I use WebP for WordPress?
Usually yes. WordPress 5.8+ supports WebP, and it produces smaller files than JPG or PNG at similar quality, so pages load faster and uploads stay small. If a host has not enabled WebP in PHP and rejects it, a well-compressed JPG is a safe fallback.
