How to use the maze generator
The maze generator starts with a classic square grid so you can make a puzzle without studying dozens of controls. Choose Small, Medium or Large, select a difficulty, and click Generate Maze. Every new maze is connected from its entrance to its exit. The preview stays on the page while you change settings, so you can decide whether the puzzle is suitable before saving it.
To save an exact puzzle, choose Save this maze beneath the preview and copy its link. That link contains the maze code and all settings. You can also recreate a maze with a code in More controls. The maze generator also offers three carving algorithms: backtracking for longer flowing corridors, Prim for branchier layouts, and Kruskal for a different distribution of connections. Difficulty is an approximate preset based on grid size and layout, not a guarantee of a fixed solving time.
Maze generator downloads and printing
Download PNG for sharing or SVG for crisp scaling. The Print / PDF option opens your browser's print dialog; choose Save as PDF to create a PDF file. You can show the solution on screen or print a separate answer key. The maze generator uses the same path data for the puzzle and the answer, so the highlighted route is not a decorative guess.
Maze generator settings for different needs
| For | Try |
|---|---|
| A young beginner | Small grid, Easy, thicker lines |
| A quick brain break | Medium, square maze |
| A long challenge | Large, Hard, Prim |
| A distinctive look | Hex or circular geometry |
Maze generator questions
Are the mazes generated at random?
Yes. A fresh seed produces a new maze. Copy the Save this maze link to reopen exactly the same puzzle, or enter its code with identical settings in More controls.
Does the maze generator always have a solution?
Yes. Every generated maze is a connected, acyclic maze, and the generator verifies a route from start to finish before displaying it.
Can I use the maze generator without an account?
Yes. Generation and file exports run locally in the browser without registering.