Home Scripts Knowledge Base Contact Download Executor

Understanding Performance Metrics

You cannot improve what you cannot measure. Before optimising a script, it helps to know the numbers that describe performance — frame rate, frame time, memory and network — and what each one is telling you.

Get a free executor

You need an executor to run any Roblox script. Grab one free.

Download

Frame rate and frame time

FPS (frames per second) is the headline number — 60 is smooth, drops mean lag. Its twin is frame time (milliseconds per frame); 60 FPS is about 16ms per frame. Frame time is often the more useful of the two because a single heavy script shows up as a spike in it.

If a script causes stutter, it is usually adding work to some frames — pushing their frame time up past the budget.

Memory

Memory usage climbs as your game creates instances and tables. Steady growth that never comes back down is a memory leak — usually objects or event connections that are never cleaned up. Watching memory over time tells you whether a script tidies up after itself.

Managing this is its own topic — see managing resource usage.

Network

In multiplayer, data sent between server and clients (via RemoteEvents) costs bandwidth. Firing remotes too often or sending big payloads causes network lag that feels like delay rather than low FPS. This is central to best practices for multi-player scripts.

Reading the numbers

Roblox surfaces these in the developer stats and the MicroProfiler. Knowing what "good" looks like lets you spot a regression. The next step is finding which code is responsible — that is profiling your scripts.