Rendering is where the waiting happens. The good news is that most Blender scenes render far slower than they need to, usually because of two or three settings, and fixing those doesn't cost much visual quality. This guide covers both Cycles (the path-tracer) and EEVEE (the real-time engine), aimed at people who haven't done much optimization yet.
TL;DR - quick tips for faster renders
- Use GPU Rendering if Possible: Enable your graphics card for Cycles to massively accelerate renders (Preferences > System > Cycles Render Devices). Modern GPUs crunch numbers faster than CPUs for rendering.
- Lower Sample Counts & Use Denoising: Don't automatically crank samples to the max. Use just enough samples for a clean image and enable the denoiser to clean up noise without extra render time. Adaptive sampling (noise threshold) can also cut down unnecessary samples in clean areas.
- Reduce Light Bounces: High bounces = more realistic lighting but much longer renders. Try lower bounce settings (especially for diffuse/glossy or if your scene has no glass) to speed up with minimal quality loss. Also consider turning off Caustics (difficult light effects through glass) to avoid noise and flickering.
- Optimize High-Impact Effects: Heavy features like volumetric fog, motion blur, or high-resolution shadows can slow renders. Simplify or disable them if they're not crucial. For EEVEE, lower the Render Samples (for anti-aliasing) if you can tolerate a bit of aliasing, and use baked lighting probes instead of real-time GI when possible.
- Simplify Your Scene: More objects and polygons = more to render. Use modifiers like Decimate to reduce poly count on dense meshes, limit 4K textures if outputting at 1080p, and hide objects that the camera doesn't see. Blender's Simplify settings can globally cap subdivision levels, particle counts, and even cull objects outside the camera view to improve performance.
- Use EEVEE if it fits the shot: when you don't need physically accurate lighting, EEVEE renders in a fraction of Cycles' time and still handles ambient occlusion, bloom, and depth of field.
- Test low, finalize high: iterate at 50% resolution or fewer samples, then raise the settings for the final render.
- Know when to use a render farm: for long animations or ultra high-res stills that your hardware can't finish in time, a farm renders frames in parallel. We run one (RenderDay), so take that as you like, but test a few frames before committing to a full job either way.
Read on for detail on each of these.
Understanding Blender's render engines
Before tweaking settings, make sure you're using the right engine for the job:
- Cycles - Blender's path-tracing engine that simulates light realistically (great for realism, product viz, architectural lighting, etc.). The trade-off is that it can be slow and noisy if not optimized, because it calculates many light ray bounces and fine details of global illumination. We'll focus on speeding up Cycles renders with smart settings tweaks.
- EEVEE - Blender's real-time rasterization engine (like a game engine). It's much faster than Cycles since it uses clever approximations instead of brute-force ray tracing. The downside: some lighting effects are simplified or missing (for example, indirect light must be pre-baked, reflections are screen-space approximations, etc.). Still, for many scenes - especially stylized visuals, previews, or animations where perfect realism isn't required - EEVEE can produce beautiful results in a fraction of the time.
Which to use? Cycles if you need accurate reflections, global illumination, or caustics and can absorb the render time. EEVEE if speed matters more and your scene survives the approximations. Plenty of artists ship final animations out of EEVEE to hit deadlines.
Tip: the engine is a per-scene setting, so using EEVEE for look development and previews and switching to Cycles for the final is a normal workflow. Materials and lights can look different between the two, so render a few test frames before you commit to the swap.
Hardware: GPU vs CPU rendering
The single biggest Cycles speedup available to most people is rendering on the GPU instead of, or alongside, the CPU. Graphics cards are built for exactly the kind of parallel math a path tracer does, and Blender's manual says as much.
How to enable GPU rendering in Blender (Cycles):
- Check your GPU: First, ensure you have a compatible graphics card. NVIDIA cards (with CUDA or OptiX support) and newer AMD cards (with HIP or OpenCL support) can work. For Apple Silicon Macs, Blender also supports Metal GPU rendering.
- Blender Preferences: Go to Edit > Preferences > System > Cycles Render Devices. Here, choose the appropriate compute device type (CUDA, OptiX, HIP, etc.) for your GPU. You should see your GPU listed - check its box to enable it. For NVIDIA RTX cards, OptiX is recommended (it's usually faster with ray tracing hardware).
- Set Render Device to GPU: Next, in your Render Properties panel (the render tab in Properties), find the Device setting and switch it to GPU Compute. By default it might be CPU; you want Blender to actually use the GPU when rendering. (In newer Blender versions, if a GPU is selected in preferences, it may auto-use it, but it's good to double-check.)
- (Optional) CPU + GPU: Newer versions of Cycles allow using both CPU and GPU together for final renders. This can sometimes speed things up further, especially if you have a high-core-count CPU that can contribute. In the Preferences where you select your GPU, you can also tick the CPU. Keep in mind though, mixing devices can be limited by the slowest device (and on Windows there's a known issue that CPU+GPU rendering may not always scale well). It's worth a test - some scenes get a boost from using every bit of hardware.
Why GPU? GPUs generally perform many ray calculations simultaneously. In many scenes, this means you'll render in a fraction of the time it would take on CPU alone. The caveat is that GPUs have limited VRAM (memory). If your scene is extremely large or uses huge textures that don't fit in GPU memory, you might be forced to use CPU or simplify the scene. Blender will usually warn if a scene doesn't fit in VRAM. Strategies like reducing texture sizes (or using Simplify > Texture Limit) can help fit a scene into GPU memory.
What about EEVEE? EEVEE is always running on the GPU (it's real-time). So for EEVEE, the main hardware concern is just having a reasonably powerful GPU. If EEVEE is slow in the viewport or final render, it might be a very heavy scene for your graphics card - consider the tips in the EEVEE section to lighten the load. Also, check that you're not accidentally rendering EEVEE at an absurd resolution; even a fast engine can bog down if you output a 4K or 8K image on a mid-range GPU.
Other hardware tips:
- Update drivers. Basic, but Blender picks up optimizations and bug fixes from NVIDIA and AMD driver releases.
- Tile size (for CPU): If you're stuck with CPU rendering in Cycles (or choose it), try adjusting tile size. Smaller tiles (like 16x16 or 32x32) often work best for CPU rendering, whereas old advice for GPU was larger tiles (like 256x256). However, Blender 3.0+ (Cycles X) changed how tiling works - it now uses progressive rendering by default for GPU, so tile size isn't as critical. You can usually leave it on auto. For CPU, if you disable Progressive Refine, using smaller tiles can still help keep all CPU cores busy.
- System resources: close other programs. Rendering is CPU and GPU intensive and eats RAM, and once your system starts swapping to disk, render times go through the roof. Blender's status bar shows memory usage while rendering. If you're running out, simplify textures or geometry, or add RAM.
Short version: if you have a GPU, use it. It's the least effort for the most speed in Cycles. With hardware sorted, on to the settings.
Optimizing Cycles render settings
These are the Cycles settings with the largest effect on render time:
1. Samples and adaptive sampling
Samples are how many rays per pixel Cycles fires. More samples means a cleaner image and a longer render, so the job is finding the point where extra samples stop buying you anything visible.
-
Use fewer samples than you think. Don't default to 4,000 because a tutorial said so. Many scenes look fine at a few hundred or fewer, especially with the denoiser on. Start at 128, do a test render, and step up (256, 512) only until the noise stops bothering you. Blender's sample field accepts arithmetic, so you can type
256*2or512/2to move quickly. A useful method is to keep dividing by 4 until quality visibly breaks, then back off one step; scenes that end up at 64-128 samples are common. Overshooting "just to be safe" costs hours and buys nothing. -
Adaptive sampling (noise threshold). This is the big one. In Cycles' Sampling panel, enable Adaptive Sampling and set a Noise Threshold. Cycles then stops sampling pixels that are already clean and spends the effort on the noisy ones, so a smooth background costs very little while detailed hair or caustics get what they need. A higher threshold like 0.1 tolerates more noise and finishes sooner; 0.001 tolerates almost none and takes far longer. Start at 0.01 for final renders. For animations where slight noise is acceptable, 0.05 or 0.1 cuts render time substantially and the difference is hard to spot once denoising runs. You can also set a minimum sample count to guarantee a baseline per pixel.
-
Denoising: Turn on Denoise for the render (find it under Sampling or its own Denoising section, depending on Blender version). The denoiser (such as OpenImageDenoise or OptiX) will smartly filter out remaining noise after rendering. This lets you get away with far fewer samples yet still have a clean result. For instance, an image that's splotchy at 100 samples can look nearly clean after denoising, whereas without denoise you might have needed 500+ samples. There is a slight post-processing time for denoising, but it's usually seconds and definitely faster than brute-force sampling. Tip: Use the OptiX AI denoiser for interactive viewport (in viewport render shading, enable denoise) to get an instant idea of how a low-sample image might look when cleaned up. For final renders, OpenImageDenoise is also excellent for stills and animations (it's AI-based but does temporal smoothing well). In Blender 3.5+, there's also a new Deep Denoiser option (for animations) - check the docs for details. In any case, don't be afraid of a little noise in your raw render; denoising can handle it and save you tons of time.
-
Sampling pattern and scrambling: leave these alone for now. Cycles' default sobol/progressive pattern is close to optimal, and the "scrambling distance" tweaks some guides recommend trade quality for the speed they gain.
Short version: use as few samples as you can get away with and let adaptive sampling and denoising cover the rest. This is usually the single biggest time saver in Cycles.
2. Light bounces and path depth
Light bounces (found in the Light Paths section of render settings) control how many times a ray of light can bounce around your scene. More bounces = more realistic indirect lighting, but also more computation. In reality, light bounces practically infinite times, but Blender doesn't need to simulate all of that - you can cap it for speed.
-
Total bounces: Blender's default max bounce count might be around 12 (for diffuse/glossy) and even higher for transparency. Often, you don't need that many. For many scenes, you can't visually tell the difference beyond a certain number of bounces. Reducing the max bounces can make renders faster and also reduce noise (fewer bounces means fewer opportunities to create noisy light paths). For example, if you set max bounces to 4, light will only bounce at most 4 times. This might slightly reduce the bounce lighting in enclosed scenes, but in a well-lit scene you might not notice much difference compared to 8 bounces, except that it renders faster. Diffuse surfaces often look fine with even 2-4 bounces, while glossy reflections may need a few more to capture multiple mirror-bounce effects, and glass/transmission often needs the most (to see through many layers of glass). So you could, for instance, set overall max to 4, diffuse to 2, glossy to 4, transmission to 8 (if you have glass), etc. If your scene has no glass or transparent materials, you can safely drop transmission bounces way down (even 0 or 1) without issue. Blender even has a preset called "Limited Global Illumination" which lowers bounce counts for you - a quick way to test low-bounce settings.
-
Minimum bounces: Cycles also has a "min bounces" (or "bounces until termination becomes probabilistic"). By default min is lower than max; beyond the min, each bounce has a chance to terminate early. You usually don't need to mess with this - the default logic is fine. It basically helps ensure at least a few bounces are always calculated for basic light transport, while saving time on very deep bounces that contribute little.
-
Transparency bounces: If you use transparent shaders (alpha masks, leaves with transparency, etc.), note that each layer of transparency counts as a bounce. If you get black areas where transparent layers should be (e.g. dense leaves on a tree turning black), you might have too few transparency bounces. But if not using much transparency, you can lower this. It directly affects speed when transparent surfaces stack up.
-
Caustics: Caustics are those bright, focused light patterns you see when light refracts through glass or reflects off a curved mirror (think of the light patterns at the bottom of a swimming pool or the focused spot from a magnifying glass). They are very expensive and noisy for path tracers to resolve. By default, Cycles may have caustics enabled, which can cause a lot of noise (fireflies) in scenes with glass or water. If your scene doesn't rely on caustic effects, you can check "No Caustics" (in Light Paths section) to disable them entirely. Blender's documentation notes that many renderers disable caustics by default because they are a common source of noise and slow convergence. Disabling caustics will eliminate those pesky firefly noise points at the cost of not rendering the caustic light patterns (your glass will still cast light, but not the sharp focused kind - usually a fine trade-off for faster rendering). For most architectural renders or product shots, you won't miss caustics. If you do need caustics, you'll have to leave it on and likely use many samples plus perhaps the "Clamp" option to control fireflies (more on that below).
-
Clamp brightness (firefly control): In the Light Paths settings, you'll see Clamp Direct and Clamp Indirect values. Clamping limits the maximum brightness a single sample can contribute. By clamping, you can greatly reduce "fireflies" (those super bright pixel speckles caused by rare caustic paths or small light sources). For example, setting indirect clamp to something like 5 or 10 can stop insanely bright noise from bouncing light, but if set too low, it might make your image darker or duller because it's capping bright lighting contributions. It's a balancing act. A moderate clamp on indirect light often helps render cleanly faster, allowing you to use fewer samples without hot pixels. Clamping direct light is usually not needed (direct lighting tends to converge fast), but clamping indirect is common. Tip: Try values like 1, 2, 5 for indirect clamp and see if fireflies disappear while overall brightness remains okay. Always compare to an unclamped render, because clamping can remove genuine lighting (especially if you had a small but important bright source). If you find you have to clamp very low to remove fireflies, you might instead consider increasing light size or turning off caustics as mentioned.
-
Filter Glossy: blurs very sharp glossy reflections after a certain number of bounces, which makes hard-to-sample paths easier to find. A tiny specular highlight seen in a blurry reflection is the classic case. Higher values mean more blur, less noise, and more deviation from the accurate result. It's a gentler lever than clamping. Leave it at the default unless glossy reflections are producing noise, then try 0.1 or 0.2.
Cutting light path complexity is one of the more reliable speedups available. Fewer bounces, caustics off, and a sensible clamp all help Cycles converge faster. The limit is where the image visibly degrades, which for many scenes is further out than people assume: 8 bounces versus 4 is often indistinguishable. When you're unsure, A/B it. Render a small region or a low-sample preview both ways and look.
3. Volumes, subdivision, and other heavy features
Some features cost a lot by their nature. If you're using them, know what their settings do:
-
Volumetrics (smoke, fog): Volume rendering in Cycles is notoriously slow because the ray has to sample inside the volume many times (step size). To speed up volumes:
- Raise the step size. In the volume shader, a larger Step Size means fewer steps and a faster render, at some cost in detail. Max Steps and Step Rate live in Render Properties > Volume. Mist and fog rarely need a fine step size, so increase it until quality suffers, then back off.
- Confine the volume. If only part of the scene needs fog, use a bounded volume object rather than a domain covering everything.
- Avoid high-res smoke. Simulation resolution drives render cost directly. Enable "Use High-Res Smoke" only when you can see the difference. Rendering smoke in EEVEE, which handles volumes much faster, or compositing it in, are both reasonable alternatives.
-
Subdivision and geometry: A dense mesh can slow rendering, not just in processing geometry but also in shading (more polygons = more shading calculations). If you have objects with a Subdivision Surface modifier, don't crank the render levels higher than necessary. Often a level 2 or 3 looks fine; level 5 will exponentially increase poly count. Blender's Simplify settings let you cap the max subdivision level for the whole scene, which is handy if you set something too high and want to globally dial it down for a test. Similarly, particle hair systems can be heavy - use the "Child Particles" value in Simplify to reduce the amount of hair children if needed. You can also reduce geometry by:
- The Decimate modifier on high-poly props that don't need the detail, particularly background objects. It collapses triangles and degrades shape as it goes, so it suits dense sculpts and distant terrain rather than hero models.
- Instancing. For many copies of an object (grass, trees), use particle systems or collection instances. Cycles reuses the data, so instances cost far less than unique objects.
- Remove unseen objects: Objects fully outside the camera view, or inside closed spaces where the camera never goes, need not be enabled for render. You can disable render visibility for such objects in the Outliner (the camera icon). This saves Blender from even considering those objects. If you have a super complex environment but the camera only sees 30%, consider splitting your scene or at least culling via the Simplify options (Camera Cull and Distance Cull). Camera Cull will automatically not render objects outside the camera frustum (with a margin you set). Distance Cull will not render objects farther than X distance away. These are powerful for large environments (think forests, cities) where beyond a certain distance, things don't contribute much except slowdown.
-
Textures: Large image textures can slow down both memory usage and possibly render if they cause caching issues. If you're rendering at 1080p, you likely don't need 8K textures on every object. Use smaller textures or JPGs for test renders. Blender's Simplify has a Texture Limit option that auto-scales down textures above a certain size (e.g., limit to 1024 px or 2048 px) - helpful when you import assets with huge 8K maps that are overkill. Lower texture sizes will also speed up load times between frames.
-
Motion blur and depth of field: both add noise. Motion blur needs more samples to converge moving objects, and DOF produces bright bokeh that samples badly. Use them when the shot needs them, but know the cost:
- A lower shutter makes motion blur cheaper. If the blur isn't essential to the shot, do it in post instead: render a vector pass and use Blender's vector blur node, or add it in the edit. Slightly less accurate, much faster.
- Heavy depth of field, like macro focus, makes Cycles throw samples at out-of-focus areas to clear noise. Compositing the blur from a Z-depth pass is often faster, though Blender's Defocus node struggles with complex scenes. If you're doing DOF in Cycles, expect to need higher samples or denoising for the bokeh. Clamping highlights helps with bright bokeh spots, and extra aperture blades add bokeh shape variety and a little more noise.
-
Adaptive subdivision and displacement: If you're using adaptive subdivision (microdisplacement) in Cycles (experimental feature in some Blender versions), it can hugely increase geometry detail at render time. This is great for quality, but make sure to use the dicing rate wisely - higher dicing (lower number = finer) can explode render times. Use feature adaptivity if available to not subdivide flat areas too much. This is an advanced area; if you're new, you might avoid adaptive displacement until you're comfortable with simpler optimizations.
-
Out-of-core and GPU limits: on GPU, unsupported features and out-of-memory conditions can fall back to CPU. Huge textures that don't fit in VRAM are the usual trigger. If a GPU render suddenly crawls, check the console for "out of core" messages or a CPU fallback notice, then reduce textures to fit, render on CPU, or split the scene.
The theme across this section: cut what isn't showing up in the final image. Every effect and detail layer adds render time whether or not anyone notices it.
4. Other Cycles performance tricks
-
Persistent Data (for animations): when each frame is broadly the same scene with something moving through it, enable Persistent Data in the Performance panel. Blender then keeps geometry and the BVH in memory between frames instead of rebuilding the acceleration structures every time, which cuts frame-to-frame overhead considerably. The cost is memory, so check you have headroom before rendering a long sequence. It does nothing for single frames, since there's no next frame to reuse anything for.
-
GPU threads and timing: When using GPU, especially with small scenes, your GPU might finish a render tile quickly and then wait for the next task. Newer Blender versions handle this well by using one tile (auto-tiling) or tiling adaptively. If using older versions, you might experiment with tile sizes and enabling dual GPU (if you have) to ensure the GPU is fully utilized. Generally, Blender 3.x+ does a good job here automatically.
-
Branched Path Tracing: the old Branched Path integrator let you sample shader components separately. It reduces noise in some scenes, particularly heavy indirect lighting or SSS, but usually raises total samples and modern denoisers have made it largely unnecessary. Stick with the default Path Tracing integrator.
-
Upgrade Blender. Cycles has gotten substantially faster. Blender 3.0 shipped Cycles X, a rewrite that sped up many scenes outright, and 3.3 onward added the Light Tree and further optimizations. If you're still on 2.8 or 2.9, moving to a current release can halve render times on the same scene with no other changes. The release notes list the specific speedups.
Optimizing EEVEE render settings
EEVEE is fast by construction, but it slows down as you stack effects, raise quality, or push resolution. Its settings are more straightforward than Cycles', which makes the balance easier to find:
1. EEVEE sampling and TAA
Unlike Cycles, EEVEE doesn't progressively refine with samples in the same way - but it does use sample-based temporal anti-aliasing (TAA). Essentially, it renders multiple slightly jittered samples to reduce aliasing and smooth out effects like depth of field or motion blur.
-
Render samples: the Samples count for Render (there's a separate one for Viewport) sets the TAA samples for the final image, usually defaulting to 64 or 128. More samples means less aliasing and better DOF sampling, and render time rises linearly. Without heavy DOF or motion blur, 16 or 32 often produces a crisp image. With them, you need more, because those effects are sampled across these frames and come out blotchy otherwise. Start at the default: raise it if you see jaggies or DOF noise, lower it if the image is already smooth. Note that EEVEE at 64 samples is often still faster than Cycles at low samples, so don't starve it to save time that wasn't going to cost much.
-
Viewport samples: drop these (16 or so) for responsive navigation. It has no effect on final output. Setting them to 0 samples indefinitely, which you rarely want.
-
Temporal stabilization: options like Viewport Temporal Reprojection reduce noise while you move the view. EEVEE accumulates samples across frames for anti-aliasing, so a static view converges on its own.
32-64 samples covers most work. Push to 128 when you need it. Above that is unusual in EEVEE.
2. Shadows and lighting settings
EEVEE simulates shadows and lighting in a simplified way. You have control over shadow quality which can impact performance:
-
Shadow resolution: Each light in EEVEE that casts shadows uses a shadow map. By default it might be 512 or 1024 px. Higher resolution shadow maps give crisper, less jagged shadows - but they take longer to render and consume more memory. If you have lots of lights, shadow maps can add up. Optimizations: Use the lowest shadow resolution that still looks good enough. For small lights or less critical shadows, 512 might be fine. For key sunlight, maybe 2048. But don't set everything to 4K shadows unless needed. Also, lights that don't contribute much or aren't visible could have shadows turned off entirely to save performance.
-
Shadow settings (EEVEE): In render settings under Shadows, you'll see Cube Size and Cascade Size (for sun lights cascades). These are global default resolutions. Lowering them (e.g., from 1024 to 512) will speed up shadow calculation at the cost of blockier shadows. EEVEE also has a "Soft Shadows" toggle and "High Bitdepth" option. High Bitdepth reduces banding but is a bit slower; Soft Shadows add a more realistic penumbra but also increase calculations. If every millisecond counts, you could disable soft shadows (shadows will be harder edged). However, soft shadows usually look nicer - it's a quality vs speed call.
-
Shadow rays and steps: In EEVEE's Sampling section, there are advanced shadow settings: Rays and Steps. These relate to EEVEE's screen-space soft shadow technique. Rays is how many dithered shadow rays to sample per pixel (higher reduces shadow noise, but slower). Steps is for soft shadow expansion (higher = softer but more costly). If you find your shadows are noisy in EEVEE (especially with area lights or large light sizes), you can increase Rays a bit - but that will slow down the render. Conversely, if you can tolerate a little noise in shadows or if shadows are hardly noticeable, you could lower the Rays count to speed up renders. The default is usually balanced; adjust only if you know what you're doing.
-
Lighting and effects: every optional effect in EEVEE costs something:
-
Ambient Occlusion (AO): This approximates contact shadows/darkening in corners. It's not very expensive, but it does add some cost. If you're not really noticing its effect or you're doing a bright outdoor scene (where AO is less needed), you can disable it to gain a bit of speed. If enabled, keep radius reasonable; large radius AO can be costlier and look bad.
-
Screen Space Reflections (SSR): If you have reflective surfaces, SSR gives you those nice reflections of other objects (within screen constraints). SSR in EEVEE is moderately expensive because it traces rays in screen space. If your scene doesn't need reflections or you can manage with simpler reflection probes, turning SSR off will boost performance. If you keep SSR on, you can optimize within it:
- Disable SSR Refraction if you have no refractive materials.
- Enable Half Resolution trace. It renders SSR at half res for some added blur, which is usually invisible on surfaces with any roughness.
- Lower the Max Roughness cutoff. SSR handles very rough reflections badly and turns them to noise anyway, so cutting off earlier skips rays that weren't contributing.
-
Volumetric lighting: fog and god rays in real time, and one of EEVEE's heavier features. Tile Size controls volume processing resolution, so a larger tile (8px) is lower quality and faster. Fewer volumetric Samples is faster with more noise. For mild fog, raise the tile size or drop the samples. If volumetrics aren't central to the shot, turn them off and fake it with a mist pass.
-
Bloom: cheap, being pure post-processing, but free to turn off if you don't want the glow.
-
Depth of field: far cheaper than in Cycles, though still sampled over multiple frames. Leave it off when the shot doesn't need shallow focus; strong DOF needs higher render samples to avoid noise.
-
Motion blur: a post-process that renders multiple subframes behind the scenes depending on shutter, so it does add time. Keep the shutter low, or do it in post.
-
Subdivision: EEVEE has no adaptive subdivision, so modifier subdivisions apply in full. Same rule as Cycles: lowest poly count that still looks right.
-
-
Bake your lighting. EEVEE's Light Probes, meaning Reflection Cubemaps and Irradiance Volumes, are where the real speed is. On a mostly static scene, place probes and bake indirect lighting from the Indirect Lighting panel (Bake Cubemap, then Bake Indirect Lighting). The environment lighting gets stored in textures, so EEVEE stops recomputing screen-space approximations of bounce light every frame and reads the baked data instead. For indoor scenes with bounce lighting the difference is large, and the frames come out with less noise too. The catch is that moving objects or changing lights can invalidate the bake, though a static environment with some movement in it usually holds up. If everything moves, you're back to screen-space methods.
-
Simplify applies here too. Camera Culling and Distance Culling limit what geometry EEVEE considers, and the particle count reductions work the same as in Cycles.
EEVEE optimization is mostly subtraction: turn off what you don't need, lower what you do. Because it starts fast, you compromise less than with Cycles. If an EEVEE frame is taking a minute, something specific is wrong. Check for high sample counts, high-res shadows across many lights, or volumetrics, and you'll usually find seconds hiding behind one setting.
One caveat: EEVEE Next in Blender 4.x adds real-time ray tracing and better GI, which shifts these trade-offs. Ray-traced shadows and GI are slower than the older approximations, so enabling them makes EEVEE behave more like Cycles. Use them when the image needs them.
Final considerations and using render farms
Engine choice, hardware, settings. With practice you'll know which lever a given scene needs, and the gap between a 10-hour render and a 1-hour one is often two or three adjustments.
Some scenes are just heavy, though, or the deadline doesn't care how well you optimized. That leaves hardware or a farm.
-
Upgrading hardware: If you frequently render, a better GPU or more RAM can be a worthy investment. Blender scales well with more powerful GPUs - a higher-tier card can nearly linearly decrease render times. Likewise, if you're CPU rendering, more cores or a newer CPU architecture helps. Ensure your power supply and cooling can handle any upgrades. And if you do a lot of animations, even adding a second GPU (if your motherboard allows) could double your throughput. That said, not everyone can upgrade, especially if on a laptop - which is where render farms come in.
-
Render farms: you send a .blend, a fleet of machines renders it, you download the results. A hundred frames across a hundred machines turns a 10-hour render into something closer to 10 minutes. Studios do this routinely; there's nothing clever about waiting on one computer. We run RenderDay, a Blender-specific farm, so treat that as disclosure rather than a recommendation. The workflow at any farm is roughly the same: pack external files into the blend, upload, and the farm renders with your exact Blender version.
A few things worth knowing:
- Optimize first. Farm minutes cost money, so everything above still applies. Paying for brute force is only sensible if budget genuinely isn't a constraint.
- Test with a few frames. Most farms support this or provide a cost estimator. Missing textures and version differences are the usual surprises, and catching one on a single frame is much cheaper than catching it after a full animation.
- Stills can be distributed too. Some farms, and Blender's own Flamenco and CrowdRender, split a single image into tiles across machines. For an 8K or 16K print render, that's the difference between overnight and lunchtime.
- Do the arithmetic. Farms charge by machine time or per frame. For a hobby project, probably not. For a deadline animation, spending $75-150 to avoid running your machine flat out for 48 hours is usually the better trade once you count electricity and wear.
It doesn't have to be all or nothing. Rendering most of a project locally and farming out the parts that hurt is a perfectly normal way to work.
Conclusion
If you only change three things: turn on adaptive sampling with a threshold you've actually tested, turn on denoising so you can drop the sample count, and check that Cycles is really using your GPU. Those three account for most of the speedup available to most scenes.
After that it's scene-specific. Bounces and caustics if your lighting is expensive, geometry and texture sizes if your scene is heavy, EEVEE instead of Cycles if the shot doesn't need path tracing. And hardware or a farm when the project has outgrown the machine.
The side effect of all this, which is worth more than the render time, is that you start noticing which details actually reach the final image and which ones you've been paying for out of habit.
Blender's manual is the reference for anything here you want to go deeper on, particularly the pages on Sampling and Denoising and Light Paths . Community tutorials are plentiful; just check they're written for a Blender version close to yours, since the advice ages badly.
