Course contentsShow
← Unreal Engine Game Development
Lesson 754 of 88010. Networking and ReplicationFree lesson

Reducing Replication Frequency with NetUpdateFrequency

Tune the NetUpdateFrequency property to throttle replication rates for non-critical actors, saving bandwidth without compromising the game's core responsiveness.

In this lesson, you will learn how to optimize your network bandwidth by strategically throttling the replication rate of non-critical actors using the NetUpdateFrequency property.

Understanding NetUpdateFrequency

In a multiplayer environment, every replicated actor sends data packets to clients at a set interval. By default, many actors might be updating at 100 times per second, which is overkill for background objects like flickering lights, ambient NPCs, or decorative physics items. NetUpdateFrequency defines how many times per second the server evaluates whether the actor’s properties have changed and need to be synchronized with clients.

If you set this value too high, you waste precious bandwidth on objects the player rarely notices. If you set it too low, your world becomes unresponsive and "laggy" for important objects. The goal is to strike a balance where critical actors (like the local player or projectile weapons) stay at high frequencies (e.g., 60–100Hz), while cosmetic actors are throttled to lower rates (e.g., 5–10Hz).

Implementation

You can adjust this directly in the constructor of your C++ class or via the Blueprint Defaults panel.

AMyDecorativeActor::AMyDecorativeActor()
{
    // Lower the update frequency to save bandwidth
    // Only update this actor 5 times per second
    NetUpdateFrequency = 5.0f;
    
    // Ensure NetPriority remains low for non-critical actors
    NetPriority = 1.0f;
}

Strategic Tuning

When you lower the NetUpdateFrequency, remember that the MinNetUpdateFrequency also plays a role. If the actor hasn't changed its state significantly, the engine may fall back to this lower bound to save even more traffic. For background props, keeping the NetUpdateFrequency low ensures that even if you have hundreds of actors in a scene, the server only processes their network state updates intermittently. This keeps your packet overhead small, preventing network congestion that could otherwise cause stuttering for more important gameplay systems.

Always profile these changes using Unreal Insights to verify that your bandwidth footprint is shrinking without causing noticeable visual "teleporting" or state desyncs in your actors.

Key Takeaway: By lowering NetUpdateFrequency for non-critical actors, you drastically reduce server-to-client bandwidth usage, allowing you to prioritize network resources for high-intensity gameplay systems.