D
DoUnscrambler

Methodology

Written and maintained by The DoUnscrambler Editorial Team · Last reviewed

1. The signature index

Every word in our dictionary is stored alongside its alphabetical signature: the word's letters sorted A–Z. LISTEN, SILENT and TINSEL all reduce to eilnst. Two words are anagrams if and only if their signatures are identical, so anagram lookup becomes a single indexed equality match rather than a search.

The signature column is indexed in the database. Finding all anagrams of a rack is one query, not a scan.

2. Per-letter count subtraction

Sub-anagrams — shorter words built from part of your rack — cannot use signature equality, because the letters are a subset rather than an exact match. For those we store 26 integer columns per word, one per letter, holding how many times that letter occurs.

A candidate is playable when, for every letter A–Z, the candidate's count is less than or equal to your rack's count. Any shortfall is charged against the wildcard pool. This is a pure integer comparison, evaluated in the database, so a full 15-letter rack resolves in milliseconds.

3. Wildcards

A ? or * in your input contributes one unit to the wildcard pool. Words that need more substitutions than you have blanks are rejected. Blank tiles score zero, so a word played with a blank is scored on its remaining letters only.

4. Scoring

Every word carries two precomputed scores: the standard North American Scrabble tile values, and the Words With Friends values, which differ for several letters. Neither score includes board multipliers — double- and triple-letter or word squares depend on your board, not on the word.

5. Which pages we ask Google to index

Not every letter combination deserves a search result. A word page is submitted to search engines only when all of the following hold:

  • the input is 3 to 15 letters, A–Z only;
  • it produces at least 8 valid dictionary words;
  • the letter set is either a real dictionary word or yields a substantial list;
  • it is the canonical winner for its alphabetical signature.

Pages that fail these tests still work perfectly for visitors — they are simply marked noindex, follow, so crawl budget goes to pages that answer a real query. Our sitemap and our page-level robots directives are generated from the same rule, so they can never disagree.

6. Canonical selection for anagram groups

Within a signature group we pick one canonical URL: the highest Scrabble-scoring word, with alphabetical order as the tie-break. The other members of the group render the same list, show a visible notice explaining the relationship, and carry a rel="canonical" pointing at the winner.

7. Update cadence

Word pages are statically regenerated every 24 hours. Dictionary refreshes are applied in bulk and stamped on the dictionaries page and on every word page footer.

Frequently asked

Does DoUnscrambler generate permutations of my letters?

No. Generating permutations of an 8-letter rack means 40,320 candidates, and 12 letters means 479 million — it does not scale. We instead sort your letters alphabetically into a signature and look that signature up in a precomputed index, which is a constant-time operation regardless of rack size.

How are blanks and wildcards handled?

Each wildcard adds one unit to a shared deficit pool. When we subtract a candidate word’s letter counts from your rack’s counts, any shortfall is drawn from that pool. If the pool covers the shortfall the word is playable, and the wildcard tile is scored at zero points, exactly as in Scrabble.

Why do some pages say they are not indexed?

A page is only submitted to search engines if it produces at least eight valid words, uses a real dictionary letter set of 3 to 15 letters, and is the canonical winner for its alphabetical signature. Random letter strings and near-empty results are served normally to visitors but marked noindex, because they add nothing to a search result page.

Which page wins when two words are anagrams?

LISTEN, SILENT and TINSEL all share the signature EILNST and therefore return an identical word list. Rather than publish three competing URLs, we designate one canonical page per signature — the highest-scoring word, with ties broken alphabetically — and point the others at it with a rel=canonical link.