What a computer means by “black and white”
Photographers say black and white. Software says grayscale, and the gap between the two words is where most disappointing conversions come from. A colour photo stores three numbers for every pixel, one each for red, green and blue. A monochrome image needs one number, brightness. Converting means throwing two of those three numbers away and deciding what single value deserves to stand in for all three.
That question has several defensible answers and they do not look alike. Take the largest of the three channels and you get a bright, chalky picture. Take the plain average and everything sags toward the middle. Take a weighted sum tuned to how human vision works and you get the version people recognise as a photographic black and white. This tool takes the third route, every time, with the same coefficients on every pixel.
The REC.601 weights, and why averaging red, green and blue looks wrong
The conversion is gray = 0.299*R + 0.587*G + 0.114*B, rounded to the nearest whole channel value. Those are the REC.601 luma coefficients, the same weighting broadcast television used to derive a black and white signal that still looked right on an old set.
The numbers are worth seeing in action. A fully saturated red pixel comes out at 76. A fully saturated green comes out at 150. A fully saturated blue comes out at 29. Under a plain three-channel average all three would land on 85 and be completely indistinguishable from each other, which is exactly why an averaged conversion flattens a picture of, say, a red car against green trees into one grey smear. A mid-toned mixed colour like (100, 150, 200) lands on 141.
Green carries the most weight because your eye’s cone response peaks there; blue carries almost none, which is why a blue sky renders darker than beginners expect and why the old darkroom trick of a red filter over the lens was such a dramatic effect. The arithmetic runs on the sRGB values as they are stored in the file, not on linearised light, which is what nearly every image editor’s default grayscale command does too. A linear-light conversion would place some mid-tones slightly differently; the figures above are what this tool genuinely produces.
Converting a photo, or a whole folder of them
- Drop your JPG, PNG or WebP files into the box above, or click Choose files. Batches are fine and every file gets identical treatment.
- Pick a Style, either black & white (grayscale) or sepia.
- Click Convert Photo to Black and White. Each image is decoded into a canvas, rewritten pixel by pixel, and re-encoded on your own device, so the whole batch never touches the network.
- Download the results. A
-bwor-sepiasuffix is added to each name so a converted copy can never be confused with the original.
Files are processed one after another rather than all at once, and the progress bar moves per finished file. A batch of a hundred phone photos is fine on a normal laptop; a batch of hundred-megapixel scans is where you will want to split the job into a few passes, because every image is fully decoded into memory before it is rewritten.
What the sepia option is actually doing to each pixel
Sepia is not a tint layer painted over a grey image. It is a 3x3 matrix applied to each pixel’s original colour: the new red is 0.393*R + 0.769*G + 0.189*B, the new green 0.349*R + 0.686*G + 0.168*B, the new blue 0.272*R + 0.534*G + 0.131*B. This is the standard matrix that Microsoft’s and the W3C’s filter definitions popularised, so the result matches what other tools call sepia rather than being a house recipe.
Notice that the red row sums to 1.351 and the green row to 1.203. Both are above 1, so bright input gets pushed past the top of the range and clamped. Pure white becomes (255, 255, 239): still white in red and green, slightly yellowed in blue. The practical consequence is that highlights compress. A backlit portrait or a snow scene can lose the detail in its brightest areas, and the fix is to pull the exposure down a stop in the Photo Adjuster before you convert, not afterwards.
Format, transparency, and one round of re-encoding
The output format always follows the input. A JPG stays a JPG, a PNG stays a PNG, a WebP stays a WebP, and anything with an unrecognised extension is written as PNG so nothing is lost silently. Extensions are normalised on the way out, so Holiday Pic.JPEG becomes Holiday Pic-bw.jpg. Because only the colour bytes are touched, an alpha channel survives untouched.
The one honest caveat is the re-encode. Rewriting pixels means writing a new file, and for JPG and WebP that new file goes through a lossy encoder again. It is a single generation and invisible at normal viewing sizes, but it is a real reason to convert from your highest-quality copy rather than from something already squeezed for the web.
Where this tool ends
There is one grayscale formula and one sepia matrix here, with no sliders. If you want channel-mixer control (simulating a red or yellow filter to darken a sky, the way film photographers did), a contrast curve, film grain or a 1-bit halftone, this is not that tool. For a monochrome pass over a whole document rather than an image, use Grayscale PDF, which flattens the pages instead of the pixels. For the opposite direction, AI Photo Colorizer predicts colour for an old print, and Photo to Sketch pushes a photo past monochrome into line art.

