
Most protein ball recipes fall apart in one of two ways, sometimes literally. Either the mixture is too dry and crumbles the second you bite in, or it’s so loaded with protein powder that every bite tastes chalky and stiff. Getting the ratio right is really the whole recipe.
This version leans on natural peanut butter and honey for both binding and flavor, with just enough protein powder to boost the nutrition without taking over. Rolled oats add texture and help everything hold its shape, so these stay soft and chewy instead of dense and dry.
No baking, no mixer, and they’re ready to eat as soon as you’ve rolled them, though they do firm up nicely after a short chill.
Quick Answer
Stir together peanut butter, honey, oats, protein powder, and a splash of milk in one bowl, then roll into balls and chill for at least 15 minutes. The result is a soft, chewy, no-bake snack with roughly 6 grams of protein per ball, ready in under 20 minutes total.
Difficulty Level
Beginner. There’s no cooking involved. The only thing to pay attention to is the texture of the mixture before rolling, since too dry or too wet will affect how well the balls hold together.
Recipe Highlights
- No baking, no mixer, one bowl
- Naturally sweetened with honey, no refined sugar needed
- Holds together well without falling apart or feeling dry
- Easily customizable with mix-ins like chocolate chips or dried fruit
- Freezer-friendly for make-ahead snacking
Why This Recipe Works
Peanut butter and honey both act as natural binders, which is why they’re doing most of the work here instead of relying entirely on protein powder to hold things together. Protein powder actually absorbs moisture as it sits, which is why too much of it makes protein balls dry out fast.
Rolled oats add bulk and a bit of chew without soaking up too much liquid, keeping the balance between “holds its shape” and “still soft to bite into.” Chilling the mixture briefly before rolling also helps, since cold peanut butter firms up and makes the balls easier to shape without sticking to your hands.
The 3-Step Plan
Step 1: Mix the base
Stir together peanut butter, honey, and a splash of milk until smooth.
Step 2: Add the dry ingredients
Fold in oats and protein powder until a thick, scoopable dough forms.
Step 3: Roll and chill
Roll into balls and refrigerate until firm.
Ingredient Notes
Peanut butter — Use natural peanut butter with just peanuts and salt. Peanut butter with added sugar or stabilizers changes the texture and can make the mixture too loose. Almond butter or sunflower seed butter both work as substitutes.
Honey — Adds sweetness and helps bind the mixture. Maple syrup works as a substitute, though the dough may need slightly more oats to firm up since maple syrup is thinner than honey.
Rolled oats — Old-fashioned rolled oats give the best texture. Quick oats work in a pinch but make the balls slightly softer and less textured. Steel-cut oats don’t work here; they stay too hard.
Protein powder—vanilla or unflavored both work well. Whey and plant-based powders behave a little differently; plant-based powders tend to absorb more liquid, so you may need an extra splash of milk.
Milk — Just enough to loosen the mixture if it feels too stiff. Any milk works, dairy or plant-based.
Ingredients

Base
- 1 cup natural peanut butter
- ⅓ cup honey
- 1 teaspoon vanilla extract
- 1 to 2 tablespoons milk, as needed
Dry Ingredients
- 1 cup rolled oats
- ½ cup vanilla protein powder
Mix-Ins (Optional)
- ⅓ cup mini chocolate chips
- 2 tablespoons chia seeds or ground flaxseed
Step-by-Step Instructions
Step 1 — Mix the peanut butter base
In a medium bowl, stir together the peanut butter, honey, and vanilla extract until smooth and fully combined. If your peanut butter is on the thicker side, warming it for 15 seconds in the microwave first makes this easier to stir.
Step 2—Add the oats and protein powder
Add the rolled oats and protein powder to the bowl. Stir until a thick dough forms and no dry pockets remain. The mixture should hold together when pressed between your fingers; if it feels too dry and crumbly, add milk a teaspoon at a time.
The first time I made these, I used a plant-based protein powder without adjusting the liquid, and the dough turned out crumbly and stiff. An extra tablespoon of milk fixed it right away.
Step 3 — Fold in mix-ins
If using chocolate chips or chia seeds, fold them in now, once the dough has come together. Adding them too early can make it harder to tell if the dough needs more liquid.
Step 4—Chill the dough
Cover the bowl and refrigerate for 10 to 15 minutes. This isn’t strictly necessary, but a slightly firmer dough is much easier to roll without sticking all over your hands.
I usually skip this step if I’m in a hurry, but the balls hold their shape a lot better and stay less messy when I take the extra ten minutes.
Step 5 — Roll into balls
Scoop about 1 tablespoon of dough and roll it between your palms into a smooth ball, roughly 1 inch across. Place on a parchment-lined plate or tray as you go.
Step 6 — Chill until firm
Refrigerate the rolled balls for at least 15 minutes before serving. They’ll firm up further and hold together best once fully chilled.
Expert Tips
- If the dough sticks to your hands while rolling, wet your palms slightly with water or chill the dough a bit longer
- Use a small cookie scoop for evenly sized balls without extra measuring
- Toast the oats in a dry skillet for a few minutes first for a slightly nuttier flavor
- Taste the dough before rolling and adjust sweetness with a little extra honey if needed
- Store a batch in the freezer for a snack that’s ready with zero prep
Common Mistakes
Mistake 1 — Using too much protein powder
Cause: Assuming more protein powder means a healthier snack without adjusting the liquid to match. Fix: Stick close to the ½ cup listed, and add milk gradually if the dough feels dry or crumbly.
Mistake 2 — Skipping the chill time
Cause: Rolling the dough while it’s still soft and warm from mixing. Fix: Chill for at least 10 minutes before rolling. It makes a noticeable difference in how easily the balls hold their shape.
Mistake 3 — Using peanut butter with added sugar or oil stabilizers
Cause: Standard shelf-stable peanut butter can throw off the texture and make the dough too loose or too sweet. Fix: Use a natural peanut butter with just peanuts and salt on the label.
FAQ
Can I freeze protein balls?
Yes. Freeze them in a single layer on a tray until solid, then transfer to a freezer bag or container for up to 3 months. Eat straight from the freezer or let them sit for a few minutes to soften slightly.
Can I make these ahead of time?
Yes, these are ideal for making ahead. They keep well in the refrigerator for up to two weeks, so a batch on Sunday covers snacks for most of the week.
Why did my protein balls turn out dry and crumbly?
This usually means too much protein powder or oats relative to the wet ingredients. Add milk a teaspoon at a time until the dough holds together when pressed.
Can I make these nut-free?
Yes. Swap the peanut butter for sunflower seed butter, which has a similar texture and binding ability.
Do I need to bake these?
No. These are a no-bake recipe from start to finish. Chilling firms them up; baking isn’t part of the process.
Storage and Reheating
Room Temperature
Store in an airtight container for up to 2 days in a cool room.
Refrigerator
Store in an airtight container for up to 2 weeks.
Freezer
Freeze in a single layer, then transfer to a container or bag for up to 3 months.
Reheating
No reheating needed. Serve chilled or let sit at room temperature for a few minutes if frozen.
Variations
Chocolate Peanut Butter Protein Balls
Add 2 tablespoons of cocoa powder to the dry ingredients and increase the milk slightly to compensate for the extra dryness.
Coconut Protein Balls
Roll the finished balls in unsweetened shredded coconut before chilling.
Trail Mix Protein Balls
Fold in a mix of chopped dried fruit, mini chocolate chips, and chopped nuts along with the oats.
Cinnamon Almond Protein Balls
Swap peanut butter for almond butter and add ½ teaspoon of ground cinnamon to the base mixture.
Nutrition
Estimated per serving (1 protein ball), based on 20 balls:
- Calories: 95
- Protein: 5g
- Carbohydrates: 8g
- Fat: 5g
- Sodium: 55mg




