Why Does a Game Targeting 60 FPS Sometimes Stay at 30 FPS and Recover to 60 FPS After Input?
Why does the frame rate sometimes stay steadily at 30 FPS for an extended period and then return to 60 FPS after user input? What should be checked?
This pattern of dropping steadily from 60 FPS to 30 FPS and recovering to 60 FPS after input does not necessarily indicate insufficient scene performance. It is recommended to first check whether the project or device is applying an intentional frame rate limit. If CPU or GPU load is simply too high, the frame rate will typically fluctuate with scene workload. In contrast, a frame rate that remains steadily at 30 FPS for an extended period and then returns to 60 FPS after a state change is more indicative of a frame rate policy being applied. On the project side, first check whether the rendering interval is being modified explicitly. For example, in Unity: In a 60 Hz environment, rendering one frame every two display frames can result in an observed frame rate close to 30 FPS . To restore the normal rendering interval, it can be set to: If the project does not contain similar configurations, compare other devices using the same Unity version and the same operation sequence . If only certain devices consistently drop to 30 FPS in this pattern, the investigation can then shift toward the device's system level behavior. Pay particular attention to: Whether smart frame rate , adaptive frame rate , or similar system level policies are enabled. Whether the device is in power saving mode . Whether the game is correctly recognized by the system as a game. Whether the frame rate changes before and after adding the game to a Game Space or Game Box . If changing system settings or adding the game to a Game Space or Game Box restores the frame rate to 60 FPS, this provides further evidence that the issue is primarily related to a system level frame rate limitation. A stable 30 FPS can be used as a clue that frame rate limiting may be occurring, but 30 FPS alone is not sufficient to conclude that the game is being explicitly locked to 30 FPS . Check for project side frame rate limiting first, then compare across devices and system settings to narrow down the cause more efficiently.