Everything here is weighed on a scale, so there are no cups or spoons to guess with. Read the short overview first so you know where the whole thing is going, then work down the steps and tap each one off as you finish it. Your check marks stay on this phone if you close the page.
The whole recipe at a glance
Three groups of ingredients
Every ingredient belongs to one of three containers. If you can picture these three, you already understand the recipe.
1. The bloom
Bronze pan
Plain fat-free Fairlife heated until steaming208 g
Black cocoa Cup 1, whisked in first33 g
Dutch cocoa + Nescafé Cup 2, whisked in second35 g + 4.5 g
Hot milk wakes up the cocoa. This is where the deep chocolate flavor comes from.
2. The rest of the wet
Stainless steel bowl
The cooled bloom poured in from the bronze panall of it
Whole eggs, beaten 2 large100 g
Egg whites about 2, no yolk66 g
Chocolate Fairlife cold, the chocolate one65 g
0% Greek yogurt375 g
Vanilla14 g
Avocado oil8 g
All of this goes straight on top of the bloom in the same bowl. No separate containers.
3. All the dry
Clear bowl
AP flour90 g
Ryse Milk Chocolate protein105 g
Nonfat dry milk45 g
SF chocolate pudding mix goes in here with the powders60 g
Allulose135 g
Cup 3: baking powder, soda, salt13.5 g
Weighed into one bowl without pressing tare between them. The number climbs to 448.
TARE means zero. Put the empty container on the scale, press TARE, and the display goes to 0. From then on it only counts what you add, not the container.
When a step shows a RUNNING TOTAL column, do not press tare between ingredients. Tare once at the start, then keep adding and watch the number climb to each target. This is the part people get wrong.
If you overshoot a powder, scoop some back out. If you overshoot a liquid, note it and move on. A gram or two never matters here except where the page says it does.
Two scales
Big scale
The regular kitchen scale. Whole grams, no decimals. Big platform, holds bowls and pans. This is the one for almost everything.
Small scale
The little jewelry scale. Reads to 0.01 g. It maxes out at 200 g, so never put a bowl on it. Weigh into one of the little light plastic cups, then tip it in.
The small scale is only for the three cups. Everything else goes on the big scale.
The reason the small scale exists at all is the baking soda. It's 1.5 g. On the big scale that reading is a coin flip between 0.5 and 1.5, and soda is the one ingredient where that error shows up in the finished crumb.
Four containers
Each one is tagged wherever it appears, so you always know which container you're in.
Bronze pan
Heats the milk and holds the bloom.
Little light cups
Everything weighed on the small scale.
Clear bowl
All the dry ingredients.
Stainless steel bowl
The bloom gets poured in here, then all the wet ingredients go on top of it.
Step by step
The bake
1
Cold stuff out first, before anything else
Set 2 whole eggs, 2 egg whites, and the Greek yogurt container on the counter. They need 20 to 30 minutes to come toward room temperature, and that is the slowest thing on this page. Everything else happens while they sit.
Cold yogurt in a low-fat batter drags the temperature down and makes it fight you when you fold.
2
Pan prep: spray, then paper, then spray again
A light avocado oil spray onto the bare 9×13 pan. Press parchment paper into it. Then a second light spray on top of the parchment.
The spray underneath is glue. It keeps the paper from sliding around while you pour. And the parchment is not optional here: black cocoa stains silicone, spatulas, grout and hands.
3
Preheat to 325 °F
Rack in the middle of the oven.
4
Weigh the three cups
Small scaleLittle light cups
Do this before the milk goes on the stove. For each cup: put the empty cup on the small scale, press tare, weigh, set the cup aside.
Cup 1 · Black cocoa33 gGoes into the bloom first.
Cup 2 · Dutch cocoa + Nescafé35 + 4.5 gWeigh the cocoa to 35, then keep adding Nescafé until it reads 39.5. Stir them together in the cup so it's one addition later. Goes into the bloom second.
Cup 3 · Baking powder + soda + salt13.5 g totalBaking powder to 6.0, soda until it reads 7.5, salt until it reads 13.5. Stir together. This cup goes into the dry bowl later, not the bloom.
Cups 1 and 2 are for the bloom. Cup 3 waits for the dry bowl in step 8.
5
Heat the milk
Big scaleBronze pan
Put the bronze pan directly on the big scale and tare it. Pour in 208 g of PLAIN fat-free Fairlife. A few grams over is fine, up to about 215, because a little steams off. Going under is the problem.
Heat it until it's steaming, not boiling. Pull it off the heat when the surface is moving and wisping.
Boiled milk curdles when it meets the yogurt later.
This recipe uses two different milks
PLAIN Fairlife208 g, heated, into the bronze pan now
CHOCOLATE Fairlife65 g, cold, into the steel bowl in step 9
They are not interchangeable. Check the carton before you pour.
6
Bloom, off the heat. The order matters.
Bronze pan
Cup 1 the black cocoa goes in first. Whisk until there are zero dry specks. Black cocoa has almost no cocoa butter, so nothing carries it into the liquid except your whisk. It clumps harder than regular cocoa. Keep going past the point where it looks smooth.
Cup 2 the Dutch cocoa and Nescafé go in second. Whisk until smooth.
Nobody tastes coffee in the finished brownie. It makes the chocolate taste more like chocolate.
7
Pour and cool. Do not use the fridge.
Bronze pan→Stainless steel bowl
Pour the finished bloom into the stainless steel bowl. Leave it on the counter, uncovered.
5:00Five minutes is a floor, not a target. The real test is below.
The finger test
If you can hold a finger in the bloom for three seconds without pulling back, it's under about 145 °F. That's below where egg starts to set. Hot bloom plus egg is sweet scrambled eggs.
Why not the fridge: the bowl's own heat is what's holding the temperature up, and five minutes in the fridge barely touches that. You're about to add 375 g of room-temp yogurt and 166 g of egg, and those are the real cooling mass. A fridge-cold bloom stiffens into paste and fights the fold.
If you're in a hurry: sit the steel bowl in a shallow pan of cool tap water, not ice, and stir.
8
Dry bowl, while the bloom cools
Big scaleClear bowl
Finish this before you touch the wet ingredients. Clear bowl on the big scale, tare once, then add in order and watch the running number climb.
Add
This much
Scale reads
AP flour
90
90
Ryse Milk Chocolate
105
195
Nonfat dry milk all raw, no toasting for brownies
45
240
SF chocolate pudding mix
60
300
Allulose
135
435
Cup 3 the leavening cup
13.5
448
Don't press tare between these. One tare at the start, then the number climbs.
Whisk it all together, dry, before anything wet touches it.
The pudding mix goes in here, with the powders
Not at the end, and not into anything wet. Pudding mix is a starch that gels the instant it hits liquid. The outside of each clump seals in under a second and traps dry powder inside. Those are fisheyes. They never dissolve, and they bake out gritty. Mixed in with the other powders, the flour and protein keep the grains apart so they can hydrate one at a time.
If it happens anyway: two or three short blender pulses, or push the batter through a sieve. A slightly thinner batter beats dry pockets.
9
Wet, straight into the steel bowl
Big scaleStainless steel bowl
Whisk the cooled bloom smooth again; it thickens as it sits. Put the steel bowl on the big scale and tare to zero on top of the bloom. Then add straight into it. No pre-weighing, no separate containers.
Add
This much
Scale reads
Whole eggs, beaten first 2 large, beaten in a cup, poured until the scale hits the target
100
100
Egg whites about 2 large, no yolk
66
166
CHOCOLATE Fairlife this is the chocolate milk, cold
65
231
Greek yogurt spoon it straight from the container
375
606
Vanilla
14
620
Avocado oil a thin drizzle
8
628
One tare, on top of the bloom. Then the number climbs.
Whisk the oil in properly rather than letting it float on top. The yolks and the yogurt carry it through the batter.
Two milks, one more time
PLAIN Fairlifealready used, in the bloom
CHOCOLATE Fairlife65 g, cold, goes in right here
A note from Sam: we're short on carton egg whites, so this batch runs on 2 whole eggs plus 2 whites, with the chocolate milk making up the liquid. That makes it a little softer and more fudgy than usual. That's expected, not a mistake.
10
Combine
Steel bowl→Clear bowl
Pour the entire wet bowl into the clear dry bowl in one go and fold with a spatula. If it's still lumpy after that, 15 whisk strokes and stop.
Overworking a batter this low in fat turns fudgy into rubbery.
Sanity check
The full batter should weigh in around 1360 g if you set the clear bowl back on the big scale (tare the empty bowl's weight out first, or subtract it).
11
Bake
Into the lined 9×13. Level the top with the spatula. 325 °F. Set the timer for 21 minutes; it may want up to 24.
21:00Check at 21:00. Up to 24 if the center is still wet.
Pull it with the center still looking slightly underdone. A toothpick should come out with moist crumbs on it. A clean toothpick means it went too far.
It runs a couple of minutes longer than usual because there's less egg white setting it.
While it bakes: rinse the whisk and spatula now, before the black cocoa dries on them.
12
Chill before cutting
This is the one rule that can't bend
Cool to room temperature in the pan, uncovered, about an hour. Then cover and refrigerate at least 2 hours, overnight is better, before cutting a single square. With less egg white in this batch, the chill is doing more of the structural work than usual. Cutting warm gets you a smeared mess.
Black cocoa sets the crumb drier straight out of the oven, and it comes back overnight as the moisture redistributes. A brownie that tastes a little dry tonight is usually the right brownie tomorrow.
Per square
Macros
squares
159
kcal
15.5 g
protein
18.3 g
carbs
3.3 g
fat
Whole pan: 1910 kcal · 186 g protein · 219 g carbs · 40 g fat.