Yes, you have to check the possibilities for the missing words by hand.
The script above brings the possibilities down from 2048 (the whole list of words possible in BIP-39) to 128. It’s less than that for longer seed phrases (because we have more checksum bits, there).
I have given a script for different seed phrase lengthes in:
A more detailed usage explanation is in:
If you don’t know which of the words is missing, it will be much, much more possibilities (possible positions times possibilities per position 128 for 12 words, 64 for 15 words, …).
Someone could implement something that checks on blockfrost.io if there are transactions for the wallet that would be restored. Then, we would not need to manually restore to see lots of empty wallets.