Content-aware fill: paint it out and let the background grow back over it
One stroke, one patch filled. The flatter the background, the more it looks like nothing happened.
It answers one very specific wish: there's something in the frame you don't want — a cable, a passer-by, a logo, a date stamp — and you want it gone, with that spot looking the way it should have looked. Not pixelated (that announces "something was hidden here"), and not cropped away (that costs you the composition too).
How the algorithm works, and when it doesn't. The area you paint becomes a "hole"; the algorithm averages inward from the edge of that hole, round after round, letting the surrounding colour seep in. The flatter the background, the better: sky, walls, a plain desk, a blurred backdrop — you can't tell afterwards. Regular texture gives it away: brick mortar lines, wood grain, grass, a crowd — what you get is a smear rather than texture that lines up. That needs a PatchMatch-style algorithm that copies a similar patch from elsewhere, and this page doesn't have one. On such images, painting tight to the object's edge often still rescues it.
Key features
Paint where you want it filled, change your mind freely
The brush marks the area to fill, and the result appears when you let go. Painted too much? Erase it back, or press Ctrl+Z to undo that stroke — not the whole picture.
Hold to see the original
The first thing you want after a fill is to check what used to be there. Press and hold the picture to flip back to the original, release to return to the result — no hunting for a compare button.
Said plainly: what it does badly
Regular texture (brick, wood grain, checked fabric), dense repetition (grass, crowds, foliage), and large areas that cross a strong boundary. Those three come out smeared. That isn't a setting you got wrong — it's what this algorithm is.
Images aren't uploaded
The diffusion runs entirely in your browser and no request carries image data. Open the network panel in your developer tools and see for yourself.
How to use
- 1 Drag your image inJPG, PNG and WebP are accepted, and Ctrl+V pastes from the clipboard.
- 2 Paint over what you don't wantSet the brush size and cover it completely. If a sliver is left outside the stroke, the algorithm treats that sliver as "the surrounding background" and spreads its colour back in — so the thing you wanted gone grows back. Once it's covered, keep the stroke close to the edges rather than taking a lot of background with it.
- 3 Let go and lookNot right? Erase and paint again, or Ctrl+Z back one stroke. Hold the picture any time to compare with the original.
- 4 DownloadSave the image, or carry it into the full editor in one click to keep working.
FAQ
- Is this the same thing as Photoshop's Content-Aware Fill?
- Same idea, different algorithm. Photoshop uses a PatchMatch family method: it finds a patch elsewhere in the picture that looks similar and moves it in, which is why it can line up mortar lines and wood grain. This page uses low-frequency diffusion: it averages colour inward from the edge of the hole, round after round. On a flat background the two look the same; on complex texture the gap is obvious. We put that in the body text rather than letting you find out after you've painted.
- The fill came out as a smear — did I do it wrong?
- Check one thing first: did you cover all of it? Any sliver left outside the stroke is read by the algorithm as "the surrounding background", so that object's colour diffuses back into the hole — which looks exactly like "the fill did nothing". (It's the most common mistake; we fell into it ourselves the first time we wrote a test for this page.) If it was fully covered and still smears, the background is the problem: regular texture, dense repetition and areas crossing a strong boundary are three things a diffusion algorithm simply cannot rebuild. Two things still help: once covered, keep the stroke tight to the edges rather than taking a lot of background with it — the smaller the hole, the more reliable the edge reference — and work in several small strokes instead of one big loop.
- How is this different from the remove-objects page?
- The machinery underneath is the same. The difference is which word brought you here: that page is written around the task ("I want this passer-by gone"), this one around Photoshop's feature name ("how do I use content-aware fill in a browser"), so the emphasis differs — this page goes further into where the algorithm stops working. Either page is fine.
- Do my images get sent to your servers?
- No. Painting and diffusion both finish in the browser. Open the network panel in your developer tools and try a stroke — no request carrying image data will appear.
Try Content-aware fill: paint it out and let the background grow back over it now
Runs fully in your browser · no install · no signup · images never uploaded