Remove green screen from video
Drop a clip shot against a green or blue backdrop, watch the key run frame by frame, and take the result away with the transparency intact — as a transparent WebM, as a ZIP of PNG frames, or as a single full-resolution still. The file never leaves your machine.
What you are actually exporting
Removing a green screen from a video is a different job from doing it to a photo. A still has one alpha matte; a clip has one per frame, and whatever you export has to carry all of them. That leaves three honest options, and they are not interchangeable:
- Transparent WebM (VP9). A real video file with an alpha channel. Small, and it plays in VLC, Chrome, Edge and most editors. Many other players and most social platforms ignore the alpha and paint the video on black.
- PNG sequence in a ZIP. One transparent PNG per frame at the resolution of the original. The safest choice: every editor and compositor understands it, and nothing can silently flatten it. Larger, and you choose the frame rate.
- Single transparent PNG. One frame of the clip, full resolution. Right when all you need is a still or a plate.
Pick the sequence when the result is going into an editor, WebM when you need a video file that stays small, and the single PNG when you only need one frame.
How to remove a green screen from a video here
- Open the tool and drop the clip in — MP4 (H.264) and WebM (VP8/VP9) are the reliable ones; MOV and OGV work when your browser can decode them. If it cannot read the file, the page says so instead of pretending to.
- Check the key colour. It is read from the border of the first frame, so most clips need nothing. Set it by hand, or use Pick from media and click the backdrop, if auto-detect grabbed the wrong thing.
- Adjust Tolerance, Edge and Spill while scrubbing through the clip. Tolerance is the radius around the key colour; Edge trims or softens the outline; Spill pulls the green cast off hair, shoulders and light clothing. Blue backdrops work the same way — see the blue screen page.
- Export: transparent WebM, the PNG sequence, or the current frame as a PNG.
What the WebM export is really doing
Worth knowing, because it explains the two things people notice first. There is no video encoder in this page. The keyed canvas is captured with captureStream and recorded by the browser's own MediaRecorder while the clip plays — VP9 where the browser supports it and plain WebM otherwise, at roughly 8 Mbps. Two consequences follow:
- It runs in real time. A two-minute clip takes about two minutes to export, and the tab needs to keep working while it does.
- MediaRecorder writes no duration into the WebM header. Players usually work it out, but some editors and tools show an unknown or wrong length until the file is remuxed. The PNG sequence does not have this problem.
The exported frame size is also rounded down to even pixel dimensions, which is what VP9 requires — so a 1921×1080 source comes out 1920×1080.
Shadows are the usual reason a key fails
A shadow falling across the screen is still the same green, only darker, which is the whole reason this keyer measures distance in the Cb/Cr plane and ignores brightness. Ignoring brightness is not the same as tolerating any amount of it. On our synthetic shade ramp, at the shipped tolerance of 25 the backdrop stops keying out once it falls to between 0.65 and 0.60 of full brightness: the pixel's alpha flips from 0 (gone) to 255 (solid), because its chroma distance from the key has reached about 33.5 — past the roughly 29.5 radius tolerance 25 allows. Raising tolerance to 50 keeps that same ramp keyed down to 0.40, the darkest row in the file.
Those are generated fixtures — smooth ramps with no camera noise, no compression and no real fabric — so read them as the shape of the problem, not a promise about your footage. The full measurement is on the chroma key benchmark page, the CSV is in the reference repository, and the write-up is archived at doi.org/10.5281/zenodo.22916767.
When this does not work
Every page on this site has to say where the tool stops. For video, that is:
- Long clips as a PNG sequence. The sequence is capped at 1200 frames; at the default 12 fps that is around 100 seconds. The page tells you to lower the frame rate rather than failing quietly.
- Clips with no readable duration. Live recordings and fragmented streams report no length. Re-encode to MP4 or WebM first.
- Browsers that cannot record a canvas. Without
MediaRecorderandcaptureStreamthe WebM option is unavailable, and the PNG sequence is the fallback. - Uneven, wrinkled or badly lit backdrops. One global tolerance covers a lit screen or a shadowed one, not both in the same frame — the benchmark shows the two fixtures where that breaks.
- Anything that needs rotoscoping. This is a colour key. Semi-transparent detail — smoke, glass, veils, flyaway hair over a moving background — is beyond it.
- Subjects that are themselves green. Green clothing, green props or a green cast in the lighting get keyed out along with the screen. Shoot on blue instead.
Your clip stays on your machine
Every frame is decoded and keyed by your own browser, so there is no upload step, no render queue and no account. A two-minute clip in a phone codec is exactly the kind of file you would rather not hand to a stranger's server — the no-upload page explains what that avoids.