Skip to main content
ilovecalcs logoilovecalcs.

Solver · Live

Flow Free Solver, Numberlink paths for every pair.

Use this free Flow Free solver to finish any Numberlink puzzle: set the grid size, tap the squares where each coloured pair of dots sits, and get non-crossing paths that join every pair and fill the board. If the dots allow no solution, it says so.

How it worksSAT search

Interactive

Flow Free Solver

Grid size5×5

Rows

5

Columns

5

Dot colour0 pairs

Placing A (red). Tap a square for each of its two dots. Tap a dot to remove it.

Try an example

Place at least one pair of matching dots, then press Solve.

Match the grid size to your puzzle, pick a colour, then tap the squares where its two dots sit. Repeat for every colour and press Solve.

Field guide

How the Flow Free solver works.

Flow Free belongs to a family of paper puzzles called Numberlink. A grid holds pairs of matching dots, and you join each pair with a path that moves up, down, left or right. Paths may not cross or share a square. In Flow Free every square must also be covered when you finish, which is what makes the puzzle tight: there is almost never room to wander. Classic Numberlink puzzles allow empty squares, and this solver supports both versions through the fill checkbox.

Entering your level

Match the rows and columns to your board, from 3×3 up to 12×12. Pick a colour in the palette and tap the two squares that hold its dots; the next colour is selected for you once a pair is complete. Every dot carries a letter as well as a colour, so pairs stay easy to compare with your screen. Tap a dot to remove it. The example buttons load practice boards written for this tool, handy for watching a full solve first.

What the solver is doing

Trying paths one at a time becomes hopeless on bigger boards, so the puzzle is turned into a satisfiability problem. Each square gets a yes-or-no question for every colour, and each edge between squares gets one for being part of a path. The rules become conditions on those answers: a dot touches exactly one used edge, every other square touches exactly two, and an edge only joins squares of the same colour. A conflict-driven clause-learning search then fills in answers, and whenever it hits a contradiction it records the reason as a new rule so it never repeats that mistake.

Closed loops are the one thing those conditions cannot see. When a candidate answer contains a stray loop, the solver forbids that loop and searches again. The search runs in a background thread with a step limit and a time limit, so the page stays responsive even when a contradictory board takes a few seconds to rule out.

The chessboard check

Shade the squares like a chessboard. A path alternates between the two shades, so a pair whose dots are both on light squares covers one more light square than dark, a pair on two dark squares covers one more dark, and a mixed pair covers equally many. With the fill rule on, the whole board must be covered, so:

light squares − dark squares = (pairs on two light squares) − (pairs on two dark squares)

If your dots break that balance, no filling exists, and the solver names the mismatch instead of searching. The grid is shaded the same way so you can see it.

Worked example

Take a 3×3 board with A in both top corners, B in both middle-row ends and C in both bottom corners. The only way to cover all nine squares is for each pair to run straight along its own row. Any detour by A would strand a square or block B. The solver confirms that this is the single solution. Bigger boards work the same way, with many more forced moves chained together.

Reading the result

The solution is drawn over the board and revealed one colour at a time. Press replay, or drag the slider to step through the colours. Copy solution puts a grid of letters on your clipboard. The panel also says whether the answer is the only one. A published level has exactly one solution, so if the solver reports several, re-check the dots. If the search reaches its limit you get a time-out message, never a guess.

Tips for solving by hand

  • Start in the corners. A corner square has only two neighbours, so unless it holds a dot, the path through it must use both.
  • Hug the walls. Route a path along an edge or next to a finished path so no thin strip of empty squares gets cut off.
  • Never strand a square. If an empty square would be left with fewer than two open neighbours, that route is wrong.

Disclaimer: This tool is an independent fan creation and is not affiliated with, authorized, or endorsed by Big Duck Games LLC. “Flow Free” is a trademark of its respective owner. Provided for practice and entertainment only.