SalutGames
Blog

What Happens Between Pressing Play and the First Frame

Abdelilah Marrouss
Abdelilah Marrouss
31 Oct 2026 · 3 min read

Opening a SalutGames game takes a median of 0.69 seconds from the moment its address is requested to the first frame on screen. That figure comes from loading twelve of the thirteen games three times each, with an empty cache, on 14 October 2026, from a home connection in Morocco. Under the total sit five separate steps, and most of the waiting happens before a single byte of the game itself arrives.

The five steps

Step Median
Find the server's address 9.5 ms
Open a secure connection 233 ms
Wait for the server's first reply 126 ms
Download the page itself 2 ms
Scripts, fonts, art, first frame to 688 ms

Finding the server is a lookup of the site's address, usually answered almost instantly because the device or the network has seen it before.

Opening a secure connection is the largest single cost before anything useful arrives. The browser and the server exchange several messages to agree on encryption, and each one has to cross the network. At this distance it took about a quarter of a second.

The server's first reply is the time between asking for the page and the first byte coming back, 126 ms in the median case.

The page itself is tiny. A game's HTML is a short file that names its scripts, and it downloaded in about two milliseconds.

Everything after that is the game: the code, the fonts and whatever art is needed for the first screen, and then the first frame being drawn. That's the part each game controls.

A worked example

Skyhook is close to typical. Its address was found in 6 ms, the connection took 192 ms, the server answered in 119 ms, and the page arrived 2 ms later. The title screen was on display at 532 ms. The full game, every sprite included, finished loading at 1.25 seconds. That last step matters: most of the games show their first screen well before everything has arrived, and keep loading in the background.

Skyhook in play. In the test, its first screen appeared after 532 ms.
Skyhook in play. In the test, its first screen appeared after 532 ms.

The second visit

The same test opened each game a second time, in the same browser. The median first frame dropped from 688 ms to 198 ms, and most games downloaded about one kilobyte.

First frame, first visit and return visit
Gravibot, first visit832 ms
Gravibot, return visit208 ms
Skyhook, first visit532 ms
Skyhook, return visit184 ms
Gravity Lab, first visit624 ms
Gravity Lab, return visit128 ms

The reason is in how the game files are served. Each one is sent with an instruction to keep it for a year and never check it again. That's safe because every version of a game lives at its own address: when a game is updated, its files get new names and a new path, so an old copy can never be mistaken for a new one. On a return visit, nearly everything comes straight from the device, and the connection to the server is often still open.

One run stood out. Trap Castle's return visit took 1.8 seconds to the first frame in this test, and a single run isn't enough to say why.

The game that waits

Tap Burst is the exception among the thirteen. A separate trace of a normal load showed its loading screen, a bouncing balloon, at 0.65 seconds, but its title screen only at 2.28 seconds. The reason is visible in the order of the downloads: the game requests its world's artwork, the balloons, the characters, the Ferris wheel and the background layers, and waits for it before drawing a full frame. On a slow connection that wait grows to many seconds. The other games with large downloads show their first screen first and fetch the rest afterwards.

Swing, release, climb to the top.Open the game page

How the test was run

Each game was opened directly from its address on salutgames.net in Chrome, three times with an empty cache. The figures are the middle result. Timings come from the browser's own Navigation Timing and paint records. "First frame" is the first contentful paint, the moment the browser first draws something meaningful from the page.

Play now