Now THAT'S the million-dollar question. There is no straight answer to how long it takes to get a black belt in Brazilian Jiu Jitsu. It really all depends on your individual journey. That being said, there are some things that determine whether your journey is relatively fast, or much slower than your peers.
On average, most jiu jitsu practitioners receive their black belt in anywhere from 6 to 15 years. For most academies, this depends on a number of factors:
Time on the mat
Nothing beats time on the mat. You can't progress in your jiu jitsu career without putting in hours upon hours of time on the mat, and practical experience trumps any other kind of experience. YouTube Cowboys will not receive their black belt without time on the mat, no matter how many John Danaher videos they religiously watch. You have to be able to feel the technique, feel how it works or doesn't work, feel how it must be adapted depending on your opponent's movements or reaction. You can't fully learn a technique unless you apply it. Of course, there's something to be said about supplementing your jiu jitsu practice with study. Jiu jitsu is a physically intensive activity. Depending on how old you are - or even if you're a young whipper snapper - packing in too much jiu jitsu takes a toll on your body or causes burn-out. Exercising your brain will allow you to continually advance in your progress without compromising your body or your journey.
Every person learns at a different rate. Two people can be training for the exact same time, yet have a very different level of amassed knowledge. And that's okay. Everyone's journey is his or her own. It certainly doesn't mean one person is better than another... nevertheless, this definitely causes some people stress. It's hard not to compare yourself to others, especially when your homeboy that you started with is getting promoted to brown, while you feel like you're stagnating in your purple belt. The worst thing you can do is freak out and quit jiu jitsu. The best thing you can do is assess why you're not learning as fast and come up with strategies to help yourself improve.
It's no secret that competitors advance through their belts a lot faster than hobbyists. This isn't because of some inherent bias in the jiu jitsu community. It's because competition affords you an incredible experience to learn what works and what doesn't work, with opponents that are going 100 percent. I tell my students that every competition is worth about three months of solid training. Plus, competition gives your professor the best view of how you compare to others in your belt division. If you're getting smashed, obviously you should spend a little more time developing in your current rank. But if you're dominating your division each and every time you enter a competition, you're probably ready to rank up or risk being called a sand-bagger by the opposing teams.
Ultimately, the decision lies with your professor. Even if you've been sitting on a belt for years, you're dominating your divisions and you've demonstrated a sophisticated understanding of the gentle art, you're professor just might not promote very easily. Or he or she might not like you (I've seen it happen). Or - God forbid - you had actually asked to be promoted. One thing that is ingrained into the Brazilian jiu jitsu culture is: you do not ask for your belt. Don't even give hints. If you ask, you've just added more time onto your journey. And to be really honest, if you're asking for your next belt, why are you really doing jiu jitsu anyway? Are you doing it just to say to the ladies "I'm a BJJ blackbelt"? Pfft. Get out of here. Then you don't deserve it. Sure, work hard toward earning your black belt, but don't let that be the primary reason you're doing jiu jitsu.
Again, there's no clear cut answer to this question, but hopefully I've provided some enlightenment on how you might advance through your belts and one day - hopefully - achieve that prestigious title of "professor".
Train on... Oss.