Step 1 of 3

Brigadeiros

Stir condensed milk, cocoa and butter over medium-low heat 10โ€“12 minutes until the mixture pulls from the bottom in a mass.

Watch: Burnt milk is bitter. Keep stirring.

Questions about this dish

Answers taken from this dish's times, amounts, swaps and tips โ€” not a chatbot.

How long does Brigadeiros take?

1 hr 30 min all in โ€” 15 min prep, 15 min cook, 1 hr rest. Cook and rest follow the method. Leftover storage and optional extra waits are not included.

How many does it serve?

The recipe is written for 20 balls. Scale the ingredient list on the page if you are cooking for a different number.

How hard is it?

Easy.

How spicy is it?

No chilli.

What allergens should I watch?

This recipe is labelled for Milk. Labels are informational โ€” check the packets in your kitchen. This is not medical advice.

Does it fit a diet?

The published recipe is labelled Vegetarian, Gluten-free.

What does it cost to cook?

Cheap night โ€” about Under $8 USD, as a grocery budget for this recipe, not a restaurant price.

What equipment do I need?

Saucepan.

How much salt do I put in?

This recipe does not list a salt amount. We will not invent one.

What can I use instead?

Sprinkles โ†’ Cocoa powder or chopped pistachio. Less birthday, still a truffle.

What should I watch for?

Burnt milk is bitter. Keep stirring.

Any tips from this recipe?

The spoon should leave a trail that slowly fills. That is done. Pistachio or coconut coats are allowed and still brigadeiros-adjacent.

Can I use an air fryer?

This method is not written for an air fryer. The core technique on the page still applies.

Exit

Before you start cooking

Your pantry, saved recipes and meal plans are stored on this device so the site works โ€” that part can't be switched off. Google Analytics and Vercel Analytics count page visits; Vercel Speed Insights records how fast pages load. Google AdSense and profitableratecpmnetwork.com may show ads (not in Cook Mode) and set advertising cookies. Separately, we can count anonymous feature usage in our own database. That part is your call, and it stays off unless you say yes.

What gets stored