Description
Background chroma noise (or chroma noise) manifests as a sky background scattered with colored patches (red, green, purple) that have no astronomical reality.
Unlike luminance noise, which is neutral and perceived as simple grain, this noise affects the color channels in a decorrelated way: each pixel drifts independently in red, green, or blue, creating the characteristic multicolored mottling.
It is most visible on color sensors (OSC), where Bayer matrix interpolation amplifies differences between neighboring pixels, and reveals itself at the moment of stretch when the faint sky background is heavily stretched.
It is not a blocking defect: the image remains usable, but the background looks "dirty" and lacks the deep neutrality expected of a beautiful night sky. It differs from walking noise (directional pattern) and from a simple uniform green cast.
Visual signature
At 100% zoom on the sky background, clusters of colored pixels (red, green, magenta) appear in a random distribution, with no coherent direction or structure.
The phenomenon is amplified by stretching: the more aggressively the faint background is stretched, the more the colored mottling stands out. It is nearly invisible in the linear image and explodes after aggressive stretching.
On OSC, the patches are typically a few to several dozen pixels across, larger than pixel-by-pixel readout noise because of Bayer interpolation.
Distinguishing sign: the background remains overall the correct color (neutral or slightly tinted), but its texture is color-grainy rather than luminance-grainy. It is the coloring of the grain, not the grain itself, that is the problem.
Differential diagnosis
Not to be confused with walking noise: walking noise forms fine directional streaks (diagonal, translated from one sub to the next by drift), whereas chroma noise is purely random, with no orientation.
Also to be distinguished from banding, which draws lines aligned with the sensor axes: here, no lines, just scattered patches.
Nothing to do with a green cast: a cast is a uniform tint across the whole background, correctable in one step (SCNR), whereas chroma noise is a local pixel-by-pixel variation that a simple color balance cannot fix.
Not to be mistaken for IFN or galactic cirrus: these faint nebulae are coherent structures, confirmable against a DSS reference, whereas chroma noise has no real counterpart in the sky.
To be distinguished from over-denoising: pushing denoising to mask chroma noise gives a "plastic" background without micro-texture. Better to treat the cause (integration, SPCC) than to over-smooth.
Probable causes
- Total integration time too short on OSC: signal per channel is divided by the Bayer matrix
- No color calibration (SPCC / PCC) applied before denoising
- No dithering between subs: the noise pattern freezes instead of being averaged
- Denoising applied to luminance only, ignoring chrominance
- Overly aggressive stretch of the faint background, revealing color channel noise
- Heavily light-polluted sky: low signal-to-noise ratio in the background, especially on OSC
Course of action
- Increase total integration time (at least 4-6 hours on OSC for a faint target, more under light-polluted skies)
- Apply SPCC (PixInsight) or PCC to neutralize the background before any processing
- Enable dithering on the mount, driven by NINA, SGP, or PHD2, between each sub
- Denoise chrominance specifically (NoiseXTerminator, chrominance mask)
- Remove gradient (DBE / GraXpert) before SPCC to start from a clean background
- Reduce saturation of the sky background only via a luminance mask
- Raise the black point slightly to suppress residual background mottling
The Doc's advice
Chroma noise is almost always a cumulative integration time problem, not a true defect. On an OSC, each pixel only sees one in three colors, so your signal per channel is divided accordingly. If your background is crawling with colored pixels, you have not integrated enough: aim for 4-6 hours minimum on a faint target. And before reaching for the denoising artillery, apply a clean SPCC first: once the background is neutralized, half the mottling you thought you saw disappears on its own. And dithering: if you are not dithering between subs, you are freezing the noise pattern instead of averaging it out. It is free, turn it on.
Think you can see this defect in your image?
Run a diagnosisFrequently asked questions
Why is chroma noise more pronounced on color sensors (OSC)?
On a color sensor, each photosite is covered by a red, green, or blue filter (Bayer matrix): a given pixel measures only one color, the other two being interpolated from its neighbors. This demosaicing propagates and amplifies noise differences between adjacent pixels, turning pixel-by-pixel noise into multi-pixel colored patches. On a monochrome sensor with LRGB filters, each channel is captured at full resolution and then cleanly combined, which strongly limits the phenomenon. That is why, at equal integration time, an OSC always shows more chroma noise than a monochrome setup.
Should I denoise before or after color calibration (SPCC)?
Always after. SPCC (or PCC) realigns the three channels to neutralize the sky background: once the color balance is correct, a good portion of the mottling you perceived as noise disappears, because it was actually a color imbalance. Denoising before would lock that imbalance into the image and sacrifice signal for nothing. Recommended order: gradient removal (DBE or GraXpert), then SPCC, then chrominance denoising on the neutralized image.
How much total integration time does it take to eliminate chroma noise?
There is no magic threshold: noise (including chroma noise) decreases as the square root of cumulative time, so halving the noise requires quadrupling the integration time. On an OSC targeting a faint object (galaxy, diffuse nebula), aim for at least 4-6 hours, more under light-polluted skies. Because OSC divides signal per channel, it typically takes 2-3 times more integration than a monochrome setup to reach the same background cleanliness. Increasing integration remains the cleanest solution, far better than compensating with denoising, which also smooths real detail.
Is dithering enough to prevent chroma noise?
Dithering does not reduce noise in an individual sub, but it is essential for stacking to average it out correctly. By slightly shifting the framing between each sub, it prevents noise and fixed defects (residual hot pixels) from always landing on the same pixels: the statistical rejection in stacking can then eliminate them rather than locking them in as a pattern. Without dithering, you accumulate walking noise on top of chroma noise. It costs nothing and only a few seconds between subs: there is no reason not to use it.