If you have a program that allows people to achieve different levels by doing different things, a points program is probably for you! With a points program, you add a value to different actions.
For example, reading for 30 minutes might be worth one point, attending an event may be worth one point, writing a review may count as one point, and completing an activity may be worth one point. You set up your program to have badges based on point levels.
I might have a badge that is awarded when someone has earned 10 points, and another when they have earned 20 points. One person may complete 5 hours of reading to earn the 10 point badge, and another may do a variety of things -- write reviews, read for an hour, and complete activities.