Here is one persons opinion. I personally agree with it.
http://www.24fightingchickens.com/101/19_belts.html
How long does it take to get a black belt?
It will take between three and seven years in a good karate school for you to earn your black belt. Some people have earned their shodan rank in only two years and some months, but these people are extremely athletic and are very talented naturally. Also, the people who tend to do this train 6 days per week two or three times per day. You probably won't have that kind of time, nor would you be willing to sacrifice everything you hold dear to progress that quickly. Some people take a very long time to earn ranks because they move around a lot because of their jobs. These people may hold low ranks because the clubs that they have encountered have minimum membership tenure requirements attached to each rank to ensure that their club's political power structure and rewards system is not fouled by some guy walking in from out-of-town.