Quick Recipe Version (TL;DR)
Quick Ingredients
- 18 g espresso beans, finely ground (for a double ristretto)
- 150 ml cold whole milk (about 5 fl oz)
- Filtered water (as needed for your espresso machine)
Do This
- 1. Preheat a 6 fl oz (180 ml) cup with hot water; empty and dry.
- 2. Grind 18 g espresso fine; dose and tamp firmly and level.
- 3. Pull a double ristretto: 30–36 g espresso in 18–22 seconds (about 2 ristretto-style shots).
- 4. Steam 150 ml whole milk to 60–65°C (140–149°F) with very fine microfoam.
- 5. Swirl and tap the pitcher until the milk looks glossy like wet paint.
- 6. Pour from a little higher to blend, then closer to the surface to set a centered dot.
- 7. Serve immediately for velvety, coffee-forward sips.
Why You’ll Love This Recipe
- Coffee-forward: Ristretto-style espresso keeps it bold without turning bitter.
- Silky texture: Microfoamed whole milk makes a smooth, velvety mouthfeel.
- Small and balanced: The 6 oz size keeps the espresso flavor front and center.
- Latte-art dot finish: Simple to learn, and it signals properly textured milk.
Grocery List
- Produce: None needed
- Dairy: Whole milk
- Pantry: Espresso beans (fresh), filtered water
Full Ingredients
For the ristretto-style espresso
- 18 g espresso beans, freshly ground fine (enough for a double basket)
- Filtered water, as needed for your espresso machine reservoir
For the silky microfoamed milk
- 150 ml whole milk, cold (about 5 fl oz)
Equipment notes (helpful, not required)
- Espresso machine with a steam wand (best for true microfoam)
- Double portafilter basket (typically 18 g)
- Milk pitcher (12–20 oz / 350–600 ml works well)
- Instant-read thermometer (optional but very helpful)
- Small cup: 6 fl oz / 180 ml (ceramic retains heat nicely)

Step-by-Step Instructions
Step 1: Preheat the cup and set up your station
Fill a 6 fl oz (180 ml) cup with hot water for 30 seconds to warm it up. This keeps your flat white hotter for longer and helps the espresso and milk stay integrated.
Dump the water and dry the cup. Set it under your group head (or nearby) so it stays warm while you pull the shot.
Step 2: Grind, dose, and tamp for a double ristretto
Weigh out 18 g espresso beans and grind fine (slightly finer than a typical latte shot is often helpful for ristretto-style extraction). Dose into your portafilter basket, distribute evenly, then tamp firmly and level.
Tip: A level tamp helps the water flow evenly, which is especially important for short, concentrated ristretto-style shots.
Step 3: Pull the ristretto-style espresso shots
Purge a little water through the group head for 1–2 seconds to stabilize temperature, then lock in your portafilter.
Brew a double ristretto directly into your warm cup: aim for 30–36 g total espresso in 18–22 seconds. This gives you the concentrated, slightly sweeter profile that makes a flat white taste “coffee-forward” without needing a larger drink size.
If your shot runs much faster than 18 seconds, grind finer. If it takes longer than 22 seconds, grind slightly coarser.
Step 4: Measure and steam the milk to true microfoam
Pour 150 ml cold whole milk into a milk pitcher (cold milk gives you more time to create fine foam). Purge your steam wand for 1–2 seconds to clear condensation.
Steam in two phases:
Stretch (introduce air): Place the steam tip just at the surface so you hear a soft paper-tearing sound for 3–5 seconds. You want minimal air—flat whites use a thin, tight microfoam, not big cappuccino foam.
Texture (roll/whirlpool): Submerge the tip slightly to create a swirling vortex. Continue steaming until the milk reaches 60–65°C (140–149°F), about 20–35 seconds depending on your machine.
Turn off steam before removing the wand from the milk to avoid splatter, then wipe and purge the wand again for 1–2 seconds.
Step 5: Polish the milk until it looks glossy
Tap the pitcher gently on the counter 2–3 times to pop any surface bubbles. Then swirl vigorously for 10–15 seconds until the milk looks shiny and uniform, like wet paint.
This “polishing” step is what helps you pour a smooth surface and a clean centered dot.
Step 6: Pour to blend, then finish with a centered dot
Give the espresso a quick swirl in the cup to keep the crema even. Start pouring milk from a slightly higher position (about 7–10 cm / 3–4 inches above the cup) in a thin stream for the first 3–4 seconds. This helps the milk and espresso combine smoothly.
As the cup fills, bring the pitcher spout closer to the surface (about 1–2 cm above). Slightly increase the flow to lay microfoam on top. To make the classic flat white finish, hold steady in the center and let a single dot form, then lift the pitcher to stop the pour cleanly.
Step 7: Serve right away
Serve immediately while the milk is still silky and the espresso is aromatic. A flat white is at its best in the first 3 minutes, before the foam separates and the coffee cools.
Pro Tips
- Use whole milk for the closest Starbucks-style texture. The fat content helps create a naturally sweet, velvety microfoam.
- Stop steaming at 60–65°C (140–149°F). Hotter than 70°C (158°F) can taste “cooked” and makes latte art harder.
- Microfoam is tiny bubbles, not big foam. If your milk looks frothy or dry, you added too much air during the first few seconds.
- Swirl the pitcher right before pouring. Even good milk separates quickly; swirling recombines foam and liquid for a smooth pour.
- Dial in by taste. If it tastes sharp or sour, extract a little longer (or grind slightly finer). If it tastes harsh/bitter, shorten the yield (or grind slightly coarser).
Variations
- Decaf flat white: Use 18 g decaf espresso beans and keep the same ristretto target of 30–36 g in 18–22 seconds.
- Extra-strong “short” flat white: Use the same milk amount, but pull a tighter double ristretto: 26–30 g in 18–22 seconds for an even bolder cup.
- Dairy-free (less traditional): Replace whole milk with 150 ml barista-style oat milk. Steam to 55–60°C (131–140°F) for best texture and sweetness.
Storage & Make-Ahead
A flat white should be made and enjoyed immediately; it does not store well because the microfoam and espresso separate as they sit. If you want to move faster in the morning, you can pre-weigh 18 g of beans the night before and keep them in an airtight container at room temperature. For best flavor, grind right before brewing.
Nutrition (per serving)
Approximate (will vary by milk brand and exact espresso yield): 100 calories, 5 g fat, 8 g carbohydrates, 5 g protein, 0 g fiber, 80 mg sodium, 120–160 mg caffeine.

