I had a question this past week from a lady who was having difficulty finding a particular ancestor. I was able to find this ancestor for her because I did something she hadn't done; I checked for name variations.
There are several reasons why someone's name might be spelled differently than you think it should be. If you are looking at transcribed records it could simply be a miss transcription. A transcription is only as good as the transcriber. You will find this problem on Ancestry.com, HeritageQuestOnline.com and on FamilySearch.org. Another problem with the online databases is that you must type the name exactly as they have it in their database or you won't get a hit. If you type William you will not get Will, Willie, Bill, Billy or Wm.
Census records are one place you really must consider name variations. Not everyone was literate back in the old days and they might not know exactly how to spell their own name. Sometimes the census taker himself wasn't that sharp. Many were hired just because they were unemployed and needed a temporary job. Something that you will see in the Deep South is Deller for Della, Eller for Ella and Elisher for Elisha. These names are often spelled the way they were pronounced. You might find the name Simmons spelled Simons, Simmins, Simmon or Simmones.
You also need to consider nicknames. Did you know that in colonial times the name Polly was a nickname for Mary? A long name like Theodocia was commonly shortened to Docie or Dosha. Sometimes you will have family feuds in which one section of the family will start spelling their name differently than the rest of the family. This was more common than you would think.
Take the time to investigate all possible name variations, and you just might be surprised how much more information you will find.