Generator · Print-true
Crossword puzzle maker
Give it your words and clues and it interlocks them into a numbered criss-cross crossword with a matching answer key — the vocabulary-list shape, not a newspaper grid. Built in your browser at true page size, with no watermark, no account, and nothing sent anywhere.
How this generator works
Interlocking an arbitrary list of words is a search problem, and this page searches rather than guesses. The longest entry is laid down first, and every entry after it is offered every position where one of its letters lands on a matching letter already on the grid. Each offer is checked against the two rules that keep a criss-cross honest — a newly filled square may not have a filled neighbor alongside the word's axis, and the squares immediately before and after the word must be empty — so no unintended second word can form beside one of yours. Surviving offers are then scored: crossings are worth a great deal, and growth of the bounding box counts against, which is what pulls the shape into a compact island instead of a sprawling cross.
The whole layout is then rebuilt fourteen times from different orderings of your list, and the densest, squarest result is the one printed — a word that had nowhere to go in one arrangement usually finds a home in another. Numbering happens last and is read back off the finished grid by the standard rule: a square gets the next number when it opens an across entry, a down entry, or both. Deriving numbers from the grid rather than tracking them during placement is exactly why the numbers on the puzzle sheet and the numbers on the answer key cannot disagree. Both pages are SVG in real millimeters, and your browser's own print dialog turns them into paper or a single two-page PDF.
The honest limits. This makes freeform criss-cross puzzles, not symmetric newspaper grids with black squares — that shape requires every run of squares in both directions to be a real word, which is only achievable when the puzzle is built from a dictionary rather than from your eighteen vocabulary terms. An entry that shares no letters with any other entry cannot be placed at all, and the page names it rather than dropping it silently. Clues are fitted into two columns beneath the grid at a font size chosen to fit; a very long clue set will run out of room, and the page tells you that too instead of clipping in silence. Print at 100% or "Actual size" — "Fit to page" rescales the sheet.