Roblox StreamOutBehavior: LowMemory vs. Opportunistic
Posted: Mon Jul 20, 2026 1:06 pm
Roblox StreamOutBehavior: LowMemory vs. Opportunistic
Roblox recommends Opportunistic for instance-streaming experiences because it can remove regions beyond StreamingTargetRadius without waiting for memory pressure, reducing memory usage and helping prevent out-of-memory crashes.
By contrast, LowMemory streams out eligible regions beyond StreamingMinRadius only when the client is in a low-memory situation. Regions inside StreamingMinRadius never stream out. Under Opportunistic, instances inside StreamingTargetRadius are retained during normal operation but may be removed during low-memory conditions.
Recommended starting configuration
Roblox recommends these starting values:
The streaming properties are non-scriptable and must be configured on Workspace in Studio. The StreamOutBehavior enum also includes Default, whose behavior Roblox describes as subject to change.
Verify the choice on hardware
Studio's device emulator is useful for testing screen layouts and controls, but Roblox says it is not accurate for memory measurement. Test both modes on physical hardware representative of the devices your players use.
Keep the project revision and streaming radii unchanged while comparing the modes. Follow the same route in each test and examine memory, frame time, and visible loading behavior. Roblox recommends testing active gameplay on a mobile device for 10–15 minutes when checking for thermal throttling.
The Developer Console can display client memory consumption, while MicroProfiler can capture frame-time data on client devices. Use those measurements to determine whether Opportunistic delivers acceptable loading behavior for your experience while providing its documented memory benefits.
Roblox recommends Opportunistic for instance-streaming experiences because it can remove regions beyond StreamingTargetRadius without waiting for memory pressure, reducing memory usage and helping prevent out-of-memory crashes.
By contrast, LowMemory streams out eligible regions beyond StreamingMinRadius only when the client is in a low-memory situation. Regions inside StreamingMinRadius never stream out. Under Opportunistic, instances inside StreamingTargetRadius are retained during normal operation but may be removed during low-memory conditions.
Recommended starting configuration
Roblox recommends these starting values:
- StreamOutBehavior = Opportunistic
- StreamingMinRadius = 64
- StreamingTargetRadius = 1024
The streaming properties are non-scriptable and must be configured on Workspace in Studio. The StreamOutBehavior enum also includes Default, whose behavior Roblox describes as subject to change.
Verify the choice on hardware
Studio's device emulator is useful for testing screen layouts and controls, but Roblox says it is not accurate for memory measurement. Test both modes on physical hardware representative of the devices your players use.
Keep the project revision and streaming radii unchanged while comparing the modes. Follow the same route in each test and examine memory, frame time, and visible loading behavior. Roblox recommends testing active gameplay on a mobile device for 10–15 minutes when checking for thermal throttling.
The Developer Console can display client memory consumption, while MicroProfiler can capture frame-time data on client devices. Use those measurements to determine whether Opportunistic delivers acceptable loading behavior for your experience while providing its documented memory benefits.