About this tool
Add realistic film grain, vintage noise, and cinematic textures to your photos.
The Image Noise & Grain Adder adds synthetic film grain to a photo by overlaying seeded Gaussian noise whose amplitude is weighted by 4L(1 − L), a parabola that peaks at mid grey and falls to zero at clipped black and blown white — the same way density fluctuation behaves on real silver-halide film. Grain size is simulated by generating the noise on a coarser lattice, so a size of 3 gives 3 × 3 pixel clusters, and chromatic grain uses independent noise per channel the way colour negative dye layers do. It is for photographers and video editors who want a filmic texture on clean digital files, and everything runs in the browser with no upload.
Open Image Noise & Grain Adder on AltFTool — it loads instantly in your browser.
Drop in Your photo (JPEG, PNG or WebP); anything over 2000 px on the long edge is scaled down first.
Pick a Look such as Classic black & white, ISO 400, then dial Intensity, Grain size (1-8 px), Midtone bias, Shadow lift and Grain seed.
Watch the grain preview canvas and the Pixels changed count, then hit Download PNG to save a file named after your photo, ending -grain.png.
Grain fades out of the deep shadows and highlights instead of muddying them, which is what makes it read as film.
The same seed and settings always produce byte-identical grain, so a whole sequence can be matched.
Pixels are read from a canvas and processed in JavaScript; nothing is uploaded anywhere.
An intensity of 15 to 35 out of 100 covers most looks — that is a standard deviation of roughly 7 to 17 code values out of 255 at mid grey. Above about 50 the texture starts to compete with the subject, which is the point of the pushed and cinematic presets.
Because real grain is not even. Density fluctuation on film is largest where the characteristic curve is steepest, around the midtones, and effectively disappears in clipped blacks and blown highlights. This tool applies a 4L(1 − L) weighting on Rec. 709 luminance so the shadows stay clean.
Monochrome grain uses one noise sample per pixel applied equally to red, green and blue, which is how black-and-white film and most luminance noise look. Chromatic grain draws an independent sample per channel, producing the colour speckle you get from colour negative dye layers and high-ISO sensors.
PNG. Grain is high-frequency detail and JPEG's chroma subsampling and quantisation smear it, so a heavily compressed JPEG can undo most of what you just added. Export PNG here, then compress once at the end if you need a smaller file.