Knowledge base

Help / Timing & solving

CFOP phase splits explained

Every timed solve is broken into four laps — Cross, F2L, OLL and PLL — automatically, with no setup and nothing to press. The split is read straight from the state of your cube as you turn, so it costs you nothing and works on any solve.

The four phases

cubrs watches the facelet state after every move and marks each phase the moment it’s reached:

  • Cross — the four cross edges of a face placed and oriented. It’s colour-neutral: all six faces are checked, and the first cross to complete is adopted as the solve’s cross face. You don’t have to tell cubrs which colour you crossed on — it figures that out from what you actually did.
  • F2L — the first two layers finished, meaning everything outside the last layer is solved.
  • OLL — F2L done and the last-layer face is a single uniform colour.
  • PLL — the finish: the whole cube solved.

How each lap is timed

Each phase is recorded as a time and a move count. The time comes from the same clock source as your total — the cube-clock linear fit when it’s available, and local timestamps otherwise — so the four laps always add up to exactly the solve time you see. For more on that clock, see how timing works. The moves come from the same milestone points, so the per-phase move counts always sum to the solve’s total move count. Turns-per-second is worked out at display time as moves divided by seconds.

Skipped phases read 0.00

If a phase is already done when the previous one finishes — a lucky OLL or PLL skip, or a scramble that happens to leave part of the solve in place — that lap simply reads 0.00. Because the laps always sum to the total, a skip shows up honestly as zero time rather than being folded into the phase around it.

Where the splits show up

Two panels on the Timer view carry the results:

  • Solve details — click any time in the Session list to inspect that solve (the selected row highlights). It defaults to your latest solve and re-follows the newest one as you go. It shows the overall time, moves and TPS, a per-phase table of Cross / F2L / OLL / PLL with each phase’s time, moves and TPS, and a meta line with the solve number, cross colour and date.
  • Session — carries a phase-averages table: mean, ao5 and ao12 for each CFOP phase, computed only over solves that have splits, and hidden until at least one exists. Each row in the session list also keeps its split summary (Cross 1.20 · F2L 4.56 · OLL 1.02 · PLL 0.88 (white cross)) in its hover tooltip.

When splits aren’t recorded

Splits need usable per-move timestamps. On a solve where the cube didn’t stamp every move, no splits are stored for that solve — the total time is still recorded, just without the lap breakdown.

Splits are the fastest way to see where your time actually goes. A slow F2L with a quick last layer points you at a very different practice plan than the reverse — watch the phase averages over a session and train the phase that’s costing you most.

This browser can’t reach your cube.

cūbrs talks to smart cubes over Web Bluetooth, which lives in Chrome, Edge, and Opera on desktop. Safari and Firefox don’t ship it, and iPhones and iPads can’t run it at all — that’s Apple’s call, not ours.

One email with the link, nothing else. Or open the app anyway if you know your browser supports Web Bluetooth.