GenerateRandomSearch

Codeword Puzzle Generator

A codeword gives you less than any other word puzzle: no clues, no word list, just a grid of numbers, an alphabet to cross off, and three or four letters free to get you started. Everything else comes from working out what the grid can and cannot spell. It is the one crossword-shaped puzzle a computer can honestly set, because nothing in it was written by anybody — the grid is structure and the code is a shuffle, and both can be checked.

What this generator does

Interlocks your words into a grid, replaces every letter with a number, gives away a few of the commonest letters, and prints the alphabet strip beside it.

How to use this tool

  1. Choose a word list, or type your own — the grid is built from those words.
  2. Say how many letters to give away at the start.
  3. Pick the paper and print size.
  4. Make the puzzle, then print it. The alphabet strip prints with it.
  5. Show the answer for the filled grid and the whole code on a second sheet.

Understanding the controls

Words
One of eight ready-made lists, or your own. These become the grid; they are never printed beside the puzzle.
Letters given away
One to six. They are drawn from the letters the grid leans on most, because three free letters that each appear once tell a solver nothing.
Paper size and print size
A4, A5, A3, US Letter or Legal, portrait or sideways, with the margin in millimetres and a compact, standard or large-print setting.
Show the answer
Adds the filled grid and the whole code as a second sheet.
Seed
A word gives back exactly the same puzzle.

Common use cases

  • A puzzle page for a newsletter or a rainy afternoon
  • Vocabulary revision that does not look like revision
  • A harder puzzle for someone who finds word searches too easy
  • A puzzle built around a set of topic words, without writing clues for them
  • Something to print a stack of, all different, from different seeds

How this generator works

The words are interlocked into one connected grid first, exactly as a fill-in is, and then the whole alphabet — not only the letters the grid happens to use — is shuffled onto the numbers 1 to 26. Numbering only the letters that appear would give the answer away: a solver counting the distinct numbers would know at once which letters are absent, and on a small grid that is most of the puzzle. The finished puzzle is then checked by decoding it. Every number has to stand for exactly one letter and every letter for exactly one number; decoding the grid with the key has to give back words from the list it was built from, with nothing spelt down the joins that nobody put there; and each letter given away has to be the letter its number really stands for, and has to appear in the grid. The answer recorded alongside is not consulted, because a code that had drifted from its grid would still agree with it.

Randomness and fairness

The grid and the code are made using the browser's secure generator. A seed reproduces exactly the same puzzle — deterministic rather than cryptographic, and there so the same puzzle can be printed twice. Enter the same seed and the same grid and letter-to-number mapping come back, which exists for reproducibility, not cryptographic strength.

For how randomness is produced across the whole site, see how Generate Random works.

Limitations and good to know

  • The words come from a list you choose or type. A codeword in a newspaper draws on a whole dictionary, and this does not.
  • Difficulty is set only by how many letters are given away and how long the words are. There is no measured grade.
  • The grid comes out whatever shape the words make, and is not the symmetrical rectangle a published codeword usually is.
  • A word that shares no letter with the grid anywhere it would fit is left out and named.
  • This page makes one puzzle at a time. The printable puzzle pack builds codewords in a numbered run with a matching key, mixed with the other kinds if you want them.

Privacy and your data

The grid, the code and the letters given away are all worked out in your browser. The words you type, and the code they are hidden behind, are never transmitted or stored.