Word Search
Build a word search puzzle from your own word list, or solve one by finding every hidden word.
A word search hides a list of words inside a grid of letters. Use the first section to build a puzzle from your own words, or the second section to solve one you already have.
Generate a puzzle
Letters are uppercased and any non-letters are dropped from each word.
Hidden message puzzle
Build a puzzle where the leftover letters, read left to right and top to bottom, spell a secret message such as coordinates or a keyword. Once every word in the grid is found, only your message remains. The grid size and word count are adjusted automatically so the message fits exactly.
Letters and numbers are kept; spaces and punctuation are dropped.
Pick a theme, paste your own words, or both. Leave everything empty to use dictionary words.
Number reveal puzzle
Hide an answer behind wildcards. Each character of your answer becomes one clue, shown with a ? where that character belongs. The solver finds each clue in the grid, and the cells under the ?, read in order, spell your answer. Great for hiding coordinates in a grid of digits.
One clue is created per character. Spaces and punctuation are dropped.
Solve a puzzle
How it works
To generate a puzzle, each word is uppercased and stripped of non-letters, then placed at a random position and direction. The allowed directions are the four straight directions, plus the four diagonals when diagonals are on, and each of those may run forward or backward when reversed words are on. A placement is kept only when every cell is empty or already holds the matching letter, so words can cross and share letters. Each word gets a bounded number of random tries. Any word that still does not fit is reported, and the remaining empty cells are filled with random letters.
To solve a puzzle, the grid is read row by row. Spaces between letters are optional, so both spaced and contiguous rows work. For each word the solver scans all eight directions from every cell and reports the first match it finds, with the starting row and column and the compass direction. Words that never match are listed as not found.
For a hidden message puzzle, your message is reduced to letters and numbers, and the grid is sized so the words leave exactly that many empty cells. The words are placed first, then the empty cells are filled in reading order with your message, so once every word is found only the message is left. When you allow the dictionary top up, extra common words are added as needed to make the count come out exactly right; every word placed is listed for the solver to find.
For a number reveal puzzle, each character of your hidden answer becomes one clue, with a ? marking where that character sits inside an otherwise random string. The clues are placed in the grid, and the cells under the ? positions, read in clue order, spell your answer. The solver section can crack these too: paste the grid and the clues, turn on the wildcard option, and it reports the revealed characters. Every generated puzzle is checked so each clue resolves to the intended character.