How Sharpmonk works
Everything a resizer does to your file, stated plainly — including the one trick that makes exact sizes possible.
1. Your images never leave your device
Sharpmonk is a static website. There is no server that accepts images — no upload endpoint exists. Your photo is opened by your browser, drawn onto an HTML canvas, re-encoded as a JPEG by your browser, and handed back to you as a download. You can check this yourself: open the page, switch on airplane mode, and resize an image — it still works. Or open your browser's developer tools, watch the Network tab while you resize, and see that nothing is sent.
That matters more than usual here. Exam uploads are identity documents: your face, your signature, your fingerprints. They shouldn't pass through a stranger's server to be resized.
2. What “50 KB” means
Some websites count a kilobyte as 1,000 bytes, others as 1,024, and exam notifications never say which. A 50,500-byte file is 50.5 KB by one count and 49.3 KB by the other — accepted by one portal, rejected by another.
So Sharpmonk aims for a file that passes either way: at least the minimum × 1,024 bytes, and at most the maximum × 1,000 bytes. For a 20–50 KB window that's 20,480 to 50,000 bytes. The size shown is always measured on the actual file you download.
3. How the size is hit
First the image is drawn at the exact pixel dimensions, stepping a large photo down by halves so it shrinks without jagged edges. Then the JPEG quality setting is searched by bisection: encode, measure, adjust, repeat, until the highest quality that fits under the maximum is found. In “Keep proportions” mode, if the quality would have to drop below 60% the pixel dimensions are reduced a step instead, because a slightly smaller image looks better than a heavily compressed one.
4. Reaching a minimum size
Small images often can't reach a portal's minimum. A signature at 140 × 60 pixels is usually 3–8 KB even at maximum JPEG quality, yet IBPS asks for at least 10 KB. Upscaling it or adding noise would make it worse.
Instead, Sharpmonk adds a comment segment to the file. The JPEG format has always allowed comment blocks (the COM marker, FF FE); every decoder skips them, so the picture is bit-for-bit the same. The comment is filled with repeated plain text reading “sharpmonk.com size padding”, and it brings the file just above the minimum. When this happens, the tool says so and shows how many bytes were added.
This is not hidden data and it carries nothing about you. If a portal ever rejected a padded file, choosing a larger pixel size (where the form allows one) gets you to the minimum without padding.
5. DPI
DPI (dots per inch) is a number stored in the file's header saying how large the image should print. It doesn't change a single pixel. Where a notification specifies one — IBPS asks for 200 DPI for the thumb impression and the declaration — Sharpmonk writes it into the JPEG's JFIF header. Elsewhere it's left as your browser wrote it.
6. Cleaning up signatures
A phone photo of a signature has paper that shades from grey to off-white across the frame, so a single brightness cut-off either loses faint strokes or leaves grey patches. The cleanup estimates the paper's brightness locally, across a grid, and measures every pixel against the paper around it. Paper becomes white, ink becomes near-black, and the edges of strokes stay smooth. It changes tone only — never the shape of what you wrote.
7. Where the exam figures come from
Every exam page is built from that exam's official notification or information bulletin, downloaded from the conducting body's website. The page links the document and names the pages the figures are on and the date we read it. Where a notification is silent — NTA doesn't fix pixel sizes for NEET or JEE Main — the page says so rather than inventing a requirement, and where it contradicts itself, we say that too.
Notifications change from one cycle to the next. If the one in front of you differs from ours, follow yours — and please let us know.