wordle autosolver

written on 06/05/2025 11:43 AM

i was kinda bored and i played wordle for a few days in the past couple weeks so i built a little autosolver. i am aware this is nothing special at all and there's probably a hundred other people that built one too but whatever, i think its cool so here goes:

my idea was to analyze all english 5-letter words for their letter frequency at each position of a word. i got a set of over 12k words from some random site and threw that into a jupyter notebook. the chart for that looks as follows:

letter distribution chart

aaand if you really care, here's the letter frequency for each position:

position 1 letter frequency position 2 letter frequency position 3 letter frequency position 4 letter frequency position 5 letter frequency

from there, i added a pattern specifier for my solver, so letters that are not contained within the correct word, letters that are contained but not at a certain position and of course correct positions for letters.
i also wrote a little function to determine a probability score for each word based on which letters are at what position and how common that condition is.
with those two things, writing a solver function wasn't really a challenge anymore, so my script just checks through all words in the textfiles and collects those that match the specified pattern. when finished, they're sorted by their previously assigned score and the 10 most likely words are outputted.
i didnt really bother to write a script that does everything automatically as i had better things to do, but that's also very easily possible if you care that much. in my experience, the auto solver solves most commonly at the 4th try, which is decent i guess, but my list of words also has a lot of words, wordle would never choose for a solution as the actual amount of answer options for wordle is just around 2k words while i check for over 12k.
if you have a list of only those words, my solver would probably perform way better. if you care that much tho, maybe also consider suggesting words with no duplicate letters if the pattern is empty (which means it's probably the first try) to cover more letters as the current most likely word outputted by my script is "SORES" which contains an S twice and there's only a very very tiny chance this word will actually be the solution so why bother trying to get it right on the first try.



go home