Noise ecspecially in shadows with shadow catcher on

Hi all. I’m shooting for a realistic product shot style render, and I’m getting a lot of noise in my shadows. I don’t want to solely rely on the denosier to clean up because I find it smooths things out to a degree that often makes the image feel fake.

Anyone found that sweet spot for render settings that leaves just the right amount of noise? Increasing the samples are having a diminishing return in my shadow areas so that doesn’t seem to be the answer. I’m posting my settings, and a close up of my noise levels. Have a look and LMK if you see anything I’m missing in my settings

I often need to render with shadow catcher on, and there seems to be a documented issue with noisy shadows and alpha. Have a look at my side by side and you’ll see the difference. If anyone has a known solution for this issue I think it could be helpful as well.


Thanks a ton!

Your sampling settings are not optimal. This is probably taking longer to render than it needs for the number of samples.

A noise treshold of 0.01 is rather high in quality, it won’t get to really do much with only 600 max samples. 250 min samples would be useful in an interior scene with lots of complex lighting, but is probably way more than you need in a plain scene like this.

I would try:

  • noise treshold: 0.02 or 0.03
  • max samples: 1200
  • min samples: 32

If this is confusing, you might want to learn what the sampling settings do. Here is an explanation.

  • Noise treshold: used to speed up the render. It does this by looking at each pixel and trying to figure out if it’s below a certain amount of noise. When the pixel is clean enough, it gets deactivated, so Cycles doesn’t waste time rendering pixels that are already clean. A smaller treshold = less noise tolerated = better quality / slower render.

  • Max samples: the point at which the render will get stopped no matter what. By setting a high max samples value, you allow enough time for the small, noisier areas to reach the treshold and become as clean as the rest. Or, you could set a low value and cut the render short if you don’t want those small noisy areas to hold your render hostage while the rest is done. You could also choose to disable it (set it to 100000), in which case the render will be stopped by the noise treshold instead, when every pixel has been finished (takes longer, but ensures an even amount of noise everywhere).

  • Min samples: how many samples are rendered before the noise treshold starts being used. This is important, because Cycles needs to observe the render for a while to judge the noise accurately. If you don’t have enough min samples, complicated light scenarios could be misdjudged and get stopped too soon, leaving artifacts in the noise. If you don’t pick a min samples value (leave at 0), Cycles will pick one for you based on your other settings, which may or may not be enough depending on the scene.

I see you disabled light tree. Do you have only one light source in the scene? If yes, it’s a good idea to disable it. If you have multiple light sources however, the lack of light tree might be causing part of the noise. Light tree helps Cycles choose more accurately between multiple light sources and not waste rays on lights that are unlikely to affect a pixel.

It can be a bit confusing, because light tree slows down the render, but reduces the noise at the same time. So even though each sample is slower, it can actually speed up a render by requiring fewer samples and reducing the noise.

The 2 look like the same noise to me, it’s just more noticeable over a white background. In the “typical render”, the shadow is on a surface that’s closer to its color, so there is less contrast between the surface and the noisy shadow.

It’s exponential. You need to double the samples to halve the noise (provided you don’t have a noise treshold cutting that short, of course).

If you wanted to halve the noise, you would need 1200 samples. Then 2400 to halve it again. In the settings I suggested, I did double the samples, but adjusted the noise treshold to a value that should speed up the render, so it should increase your quality without doubling the render time. Big movie studios would usually render with thousands of samples. They have render farms to do it though (a big cluster of computers to render faster).

Taking a few minutes per frame isn’t unexpected in a path tracer like Cycles. There are ways to deal with it though.

If you have access to multiple computers, you could split the animation into sections and do one section on each computer. There is also the possibility of using an online render farm. There is even a free one (sheepit), where other users will render your project at the condition that you also render some of their frames.

Or you could render overnight, lots of people do that.

And indeed you shouldn’t rely on it. But the more samples you have, the less this smoothing problem happens. Denoisers are there to remove the last bit of noise, not for doing half the render.

The problem is how can we measure and quantify the appropriate amount of noise.
I don’t think it’s possible. :thinking:

The method of reducing noise to the appropriate level should be tested by increasing the sample until the appropriate noise level is achieved without the use of Noise Tracehold.
In addition, the amount of noise varies from scene to scene (the same scene may also be different)

Noise Tracehold and Denoise are meant to speed up rendering.
The method I’m looking for now is to give up on improving rendering speed.

And there is more noise in the image on the right than in the image on the left because the shadow is darker.
When it’s dark, noise is more prominent.

The right way to resolve this issue is to use Noise Tracehold and Denoise to render clean images and add noise with editing

It’s available in Photoshop and also in blender.

Thank you for taking the time to put together a thorough response and sharing your knowledge. I understood a little how the sample settings related to one another but it’s way more clear now. And I never really knew what an appropriate combination or starting point for my type of work (product shots) would be. Thanks for the context.

Fortunately, for now, my scenes are simple and static, though I do have two lights and a reflective surface (for bouncing light back into the shadows)…the old product light set-up. I did NOT know that light linking could have an impact. I’ll dig into all those settings too.

Super helpful. Making changes now.

1 Like

I didn’t mention light linking in my response? Are you thinking of what I said about light tree? They aren’t the same thing.

That could be a cause of noise. I know that’s what you would do in real life photography, but in a render, it would be more performant if you could do the same with an area light.

whoops, I meant light tree. I really know nothing about it, so I’ll look into those settings.

it would be more performant if you could do the same with an area light.

So in other words bounced light is more for Blender to figure out than a projected light. That makes sense. I’ll change that to a low powered fill light, or bring up the shadows in post. Good suggestion.

1 Like

When you have a light object, Cycles knows it exists and needs be sampled with rays.

Indirect light is not so clear. Cycles doesn’t know in advance how bright a diffuse surface is going to be, so the only light rays that will hit your reflector are the ones that happen to bounce its way by chance. The smaller and farther away the reflector, the smaller the chance.

A common case where that’s a problem is an interior scene where a narrow but very bright patch of sunlight enters through a window and hits the floor. The patch of light on the floor acts as an important light source, except Cycles doesn’t know it exists. Those scenes will take thousands of samples unless you cheat the lighting in some way.

There is a solution that’s being implemented: path guiding. It helps Cycles figure out where the bright surfaces are and send more rays their way. It’s just that it’s only for the CPU for now and is too slow to be useful.