How to restore an old photo
- Scan or photograph the print and drop the file into the box. Scratches and dust are found automatically and marked in red.
- Check the red marks. Paint over any scratch it missed and unmark real detail it caught, such as the light in someone's eyes.
- Choose the steps: scratches, fading, colourise, and 2× upscale as the last step.
- Press Restore photo, compare with the slider, and download.
What each step does
Thin bright or dark marks are found by shape and filled from the surrounding photo by MI-GAN, at full resolution. Real detail outside the marks isn't touched.
A gentle levels correction brings back the blacks and whites of a print that has gone flat and grey, without changing its tone.
DDColor predicts colour for each part of the picture and lays it under the photo's own detail, so the sharpness of the original is kept.
Real-ESRGAN doubles the resolution and cleans grain and JPEG noise. It runs last, so it sharpens the repaired photo, not the scratches.
What restoration can and can't do
Good restoration removes damage without inventing a different photo. This tool repairs what is clearly damage (scratches, dust, fading) and leaves the rest alone. It does not redraw faces, so a face that was blurry in the original stays honest rather than becoming a sharp stranger. Colourising is always a guess: treat the colours as an illustration of the past, not a record of it. If a piece of the print is torn away, the fill will be plausible texture, not what was really there.
Privacy
Your photo is opened, processed and saved by your browser on this page. It is not uploaded, stored or seen by anyone. The page downloads the model (28-166 MB, depending on the steps) and the ONNX Runtime engine (about 7 MB compressed) from this site the first time and keeps them in your browser’s cache.
Credits and licences
- MI-GAN (Sargsyan, Navasardyan, Xu and Shi, ICCV 2023) by Picsart AI Research, Picsart-AI-Research/MI-GAN, MIT licence. ONNX pipeline file published by the first author (andraniksargsyan/migan), 28 MB. Trained on the Places2 dataset.
- DDColor (Kang et al., ICCV 2023), piddnad/DDColor, Apache-2.0. The “tiny” model in a 135 MB fp16 ONNX export by edgetools (Apache-2.0).
- Real-ESRGAN general v3 (Wang, Xie, Dong and Shan, 2021), xinntao/Real-ESRGAN, BSD-3-Clause. ONNX export by vlad-grig (BSD-3-Clause), 2.4 MB (fp16) or 4.9 MB.
- ONNX Runtime Web (MIT) runs the models in your browser.
- Sample photo: a fictional 1910s studio portrait made with an image generator, with scratches, dust and fading added by our own script. It shows no real person.
Questions people ask
Is this photo restoration really free?
Yes. Every step (scratch and dust removal, fading, colourising and 2× upscaling) is free with no sign-up, no watermark and no limit on the number of photos, and you download the full-resolution result.
Is my photo uploaded anywhere?
No. The AI model is downloaded to your browser once and runs on your own computer or phone, on the graphics card when your browser supports WebGPU and on the CPU otherwise. Your photo never leaves your device, and once the model is cached the tool works offline.
What does it fix, and what can't it fix?
It removes thin scratches, cracks, dust and specks, restores contrast in faded prints, adds colour to black-and-white and sepia photos, and doubles the resolution while cleaning grain. It can't bring back parts of the photo that are missing or torn away, it doesn't redraw blurred faces, and it can't know the real colours of the scene: the colours are the model's best guess.
Does it restore faces?
No, on purpose. The face-restoration models other sites use (GFPGAN, CodeFormer) carry non-commercial licences, and they work by drawing a new face that looks sharp, which can change who the person looks like. We'd rather keep your grandmother's face exactly as the photo recorded it.
How accurate are the colours?
Plausible, not historical. DDColor learned from millions of colour photos, so skin, sky, grass and wood usually look right. Clothes, cars, painted walls and flowers can come out in a different colour than they really were. The Colour slider lets you tone it down.
How do I scan an old photo for the best result?
Use a flatbed scanner at 600 dpi if you have one. With a phone, lay the print flat in soft daylight, avoid reflections and your own shadow, and hold the phone parallel to the photo. Crop away the background before you restore.
Why is it slow on my computer?
The models run fastest on your graphics card through WebGPU (Chrome or Edge on desktop, Chrome on Android, Safari 26). Without WebGPU they run on the CPU, which is several times slower but gives the same result. The tool tells you which one it is using and how long the job will take before you start.
How big are the downloads?
Each step downloads its model the first time you use it: about 28 MB for scratch removal, 135 MB for colourising and under 5 MB for upscaling, plus the 7 MB engine. They're cached, so the next photo starts at once.