Why does noise show up the moment you put up a green screen?
A green screen does not create noise, it removes the last place the noise had to hide. Until you key, the frame is full of real detail and the sensor's grain disappears into it; afterwards the background is one flat colour, so the grain is the only thing left to see - and this keyer decides every pixel on its own, with no neighbour and no previous frame consulted, so grain goes in as brightness and comes out as opacity. On a flat screen whose noise measures 8 levels, it leaves nothing: 0 stray pixels per 1080p frame. At 12 levels it leaves 8,541, at 16 levels 95,157, and they are a different set every frame. The fix is photons, not sliders.
The noise was always there - the screen just took its hiding place away
A green screen is usually the first large area in your frame with no structure at all: one paint colour, one illumination, one code value repeated a few hundred thousand times. Every variation in it is the camera, not the scene. Point the same sensor at a bookshelf and the grain is still there, but real detail at every scale hides it.
Keying makes it worse for a second reason, and this one is about the tool. The keyer here is a pure per-pixel function: three bytes in, a distance to the key colour, an alpha out. There is no blur, denoise or median step anywhere in the code, the preview canvas runs at the source resolution, and every video frame is keyed on its own. Noise that was a small brightness wobble becomes a small opacity wobble, and with nothing linking one frame to the next, it flickers.
Distance is a magnitude, so noise can only push a pixel away from the key
The score is the normalised RGB distance to the key colour. At the defaults - similarity 42, smoothness 14 - a pixel is fully removed inside 0.161, fully kept past 0.259, and ramps between. The keyer never sees a signed difference, only a length, and a length cannot be negative. Three channels each carrying noise of sigma levels give a chi distribution with three degrees of freedom: expected distance 1.5958 x sigma/255, never zero.
On a flat screen whose mean is exactly the key colour, counting pixels per 1080p frame that keep any opacity: sigma 8 gives mean distance 0.0446 and 0 stray pixels; sigma 12 gives 0.0669 and 8,541; sigma 16 gives 0.0895 and 95,157; sigma 24 gives 0.1341 and 510,030; sigma 32 gives 0.1778 and 886,563. The measured means run slightly under theory because one channel clips - the next section. Nothing happens for a long time, and then eight levels of noise eat the last third of the budget.
The red channel of a green screen is clipped at zero, which turns noise into a bias
A saturated green screen sits at the bottom of the range in red: nominal #00B140 has R = 0. Noise that would push it negative is discarded at the sensor, so the average of a clipped channel is not zero but 0.399 x sigma. Measured on a flat screen at sigma 4, 8, 16 and 24, the average red reads 1.60, 3.20, 6.35 and 9.61 instead of 0.
That is an offset, not a variance: averaging removes variance but not an offset. Box-averaging that screen 4x4 leaves the mean red at 6.39 while the spread falls from 9.35 to 2.36. At sigma 16 the offset alone spends 6.35/255 = 0.0249 of distance, about 15% of the 0.161 you started with, on a screen whose colour never changed. A screen with a little ambient light reads R = 20, stops clipping, and keeps its mean.
What noise really eats is the margin your lighting left
In practice the screen is never exactly on the key: falloff, wrinkles or spill from the subject lamp put its average some distance d0 away, and noise only has to cover the rest, 0.161 minus d0. With d0 = 0.13, sigma 4 leaves 37,692 stray pixels per 1080p frame and sigma 8 leaves 312,705. With d0 = 0.10, sigma 8 leaves 58,203 and sigma 16 leaves 442,008; at d0 = 0.05, sigma 16 leaves 171,963 and sigma 8 leaves 603.
The pattern is a ratio, not an absolute: speckle starts once the margin drops below about four times sigma/255, and is unmistakable below twice that. So the useful question is whether your margin is four times your noise - which is why a badly lit screen and a slightly noisy camera fail together, long after either alone would have passed.
The first place it shows is the edge, not the screen
The flat middle of the screen is the last thing to go: it has the whole 0.161 to spare. The rim - hair, fur, knitted fabric - is a band of half-covered pixels inside a soft ramp only 0.098 wide, so the same noise moves alpha there far more. Two frames of a locked-off shot, fresh noise on each, nothing moving:
At sigma 4, 1.52% of rim pixels swing by more than half an alpha between frames, mean swing 0.062. At sigma 8, 8.90% and 0.115. At sigma 16, 19.00% and 0.195. The screen interior over the same pairs stays at 0.000 until sigma 8 and reaches only 0.022 at sigma 16. That is the dancing edge: the subject never moved, the threshold did.
What the sliders can and cannot do about it
Similarity trades screen for subject, as it does for every other problem. On a screen 0.10 from the key with sigma 12, going from 42 to 50 cuts the area above half alpha from 1.80% to 0.14%, but hair pixels more than half gone rise from 15.8% to 29.9%. Similarity 60 gets the screen to 0.00% and takes 46.4% of the hair with it; 100 leaves hair at mean alpha 0.094.
Smoothness does not average anything - it widens the distance ramp, it does not touch the pixels. At smoothness 0, 1.80% of the screen carries alpha and all of it is solid. At 14 the pixels above half alpha are still 1.80%, but 14.64% now carry some. At 70, 99.92% of the screen carries alpha with a mean of 0.177. Widening it converts specks into haze: a translucent veil over the new background instead.
The eyedropper makes it worse: it samples exactly one pixel, so on a noisy screen the key colour is one noisy sample. At sigma 16 the sampled key lands 8.93 levels off on average, and the screen area above half alpha goes from 0.73% with the true mean to 6.28% with a one-pixel key.
Two things that genuinely help: fewer pixels, and more photons
Fewer pixels is a real denoise: averaging four pixels halves sigma. In the video path this tool draws each frame at the Long edge size before keying, so that control reduces noise whether you meant it to or not. Same frame, sigma 16, screen 0.10 off the key: 442,008 stray pixels per 1080p frame at full size, 15,876 at half, 36 at a quarter. Far steeper than 4x, because crossing the threshold is a tail event. Stills get no such path - the canvas is the source size - so downscale a noisy photo first.
More photons is the only thing that lowers sigma at the source. In code space the noise is the linear noise times the gamma slope, 112 x L^(-7/12) at the screen's green. In the shot-noise limit the linear noise grows as the square root of the light, so code-space noise goes as L^(-1/12): a stop of extra exposure buys only 5.6%. Keep the level and double the photons instead - add a lamp, then stop down or drop ISO - and a stop buys 29%. While still read-noise limited, a stop of exposure buys 33%. A stop of ISO at the same exposure adds 33%: gain spreads the same electron noise over more code levels.
Bit depth is not the culprit. Eight-bit quantisation is noise of 0.289 levels, worth an expected distance of 0.0018, about 1.1% of the budget. Halving chroma to 4:2:0 cut surviving pixels from 5.82% to 3.54% at sigma 16 and did not clump them: what pushes a pixel over the line is mostly luma noise, which subsampling does not touch.
Related questions
How do I tell whether my own footage is too noisy for this?
Freeze a frame, pick a flat patch of screen away from the subject and any wrinkle, and take the standard deviation of each channel in 0-255 levels - that is the sigma every table on this page is indexed by. At 4 or below this keyer leaves the screen clean by itself. Around 12 the first stray pixels appear; at 16 and above you are looking at tens of thousands per 1080p frame. Then compare it with the margin your lighting left, not with the noise alone.
Will denoising the clip before keying help?
Yes, and it is the most direct fix: sigma is the only input these numbers care about, and the keyer itself has no denoise stage - nothing in it blurs, averages or consults the previous frame. Denoise the source before you load it, then check the rim: a strong temporal denoiser also softens hair, and can smear a moving edge into the very artefact you were trying to remove.
Does shooting 10-bit or 4:2:2 fix the speckle?
Only marginally. Eight-bit quantisation contributes 0.289 levels of noise, worth 1.1% of the distance budget. Going to 4:2:0 chroma cut surviving pixels from 5.82% to 3.54% at sigma 16, and left them randomly scattered rather than clumped. Both are small next to a single stop of light, which is worth 29%.
Do I need a bigger sensor, or just a brighter lamp?
Both arrive at the same place, because the only thing that matters is how many photons land on each pixel at the level you are recording. A brighter lamp, a wider aperture and a larger sensor all buy the same 29% per stop if you then stop down or drop ISO to keep the screen where it was. They differ in cost, heat and depth of field, not in what they do to noise.