The error message is usually useless
Most upload forms validate on the server, fail, and return something generic. Invalid file. Upload failed. Requirements not met. None of these tell you which requirement.
That is partly laziness and partly deliberate, since detailed validation errors can leak information about the system. Either way you are left guessing.
There are really only five things that go wrong. Working through them in order of likelihood resolves almost every case in a couple of minutes.
One: the file is too large
The most common cause by a wide margin. Limits of 1 MB, 2 MB, or 5 MB are typical, and a modern phone photo is 3 to 5 MB straight off the camera roll.
Two levers fix it. Resizing reduces the pixel count, which is the bigger one — halving both dimensions quarters the file. Compressing reduces the encoding cost at fixed dimensions.
Do them in that order. Resize the long edge to something sensible for the purpose, then compress at quality 70 and check the size. If the form states a KB limit, aim just under it rather than far under, since some systems have a minimum too.
Two: the dimensions are wrong
Many forms specify pixel dimensions as well as file size, and some enforce a minimum rather than a maximum — a passport photo system may reject anything under 600x600 as insufficient.
Others enforce an exact size, which means resizing to precisely those numbers. If your source has a different aspect ratio, crop to the target ratio first and then resize, otherwise you will either distort the image or miss the specification.
Read the requirements page rather than the error. Dimension requirements are almost always documented somewhere even when the error message is silent about them.
Three: the format is not accepted
Many systems accept only jpg, jpeg, and png. WebP is the usual casualty now that browsers save images in it by default, and HEIC is the other — iPhones store photos in HEIC and plenty of forms have never heard of it.
Converting to JPEG solves both. It is universally accepted and there is essentially no upload form that refuses it.
Note that renaming the extension does not convert anything. A .webp renamed to .jpg is still WebP internally, and a server that checks the file header will reject it, often with a more confusing error than before.
Four: the aspect ratio is wrong
Less common but genuinely maddening when it happens, because the error rarely mentions it. Photo ID systems in particular enforce ratios — a 3:4 requirement will reject a 4:3 image even at exactly the right pixel count.
Some systems crop automatically rather than rejecting, which is worse in a different way: the upload succeeds and the result has your head cut off.
Crop to the required ratio deliberately before uploading so you control what stays in frame.
Five: colour mode or bit depth
Rare, but it happens with systems that talk to print pipelines. A CMYK JPEG uploaded where RGB is expected can fail, as can a 16-bit PNG where 8-bit is assumed.
Files from professional design software are the usual source, since those default to print-oriented settings that consumer tools never produce.
Re-saving through a browser-based tool normalises this as a side effect — the output is a standard 8-bit RGB file regardless of what went in.
A checklist that resolves most cases
Work down it in order; the first two catch the large majority.
- Check the stated file size limit and compare it to your file
- Resize the long edge to whatever the form specifies, or 1200 pixels if it does not say
- Compress at quality 70 and check the resulting size against the limit
- Convert to JPEG if the file is WebP, HEIC, or anything unusual
- Crop to the stated aspect ratio if one is given
- Re-save through a standard tool to normalise colour mode and bit depth
Check the result before resubmitting
At small file sizes it is easy to compress past the point of usefulness. If the upload is a document or an ID photo, a human will look at it eventually, and legibility is the real requirement rather than the byte count.
Look at the file at full size before submitting. If text has become unreadable, go back and reduce the dimensions less aggressively while keeping quality higher.
A rejected upload wastes a few minutes. An accepted upload that a caseworker cannot read wastes weeks, because you usually find out long after the fact.
Frequently asked questions
Why does my upload keep failing with no explanation?
Almost always file size, then dimensions, then format. Work through those three first — they account for the large majority of rejections.
What file size do most forms accept?
Commonly 1 to 5 MB. A phone photo is 3 to 5 MB straight off the camera, which is why so many uploads fail on the first attempt.
Why was my iPhone photo rejected?
Probably HEIC format, which many systems do not recognise. Converting to JPEG resolves it.
Can I rename a .webp to .jpg to get it accepted?
No. That changes the label, not the contents. Servers that check the file header will still reject it, often with a worse error.
The form wants exact dimensions. What order do I do things in?
Crop to the required aspect ratio first, then resize to the exact pixel dimensions, then compress. That order avoids distortion.
Should I make the file as small as possible?
No. Aim just under the limit. Some systems enforce a minimum too, and an unreadable document gets rejected later by a person.