How to Make a Roux for Smooth Sauces and Gravy
A roux is flour cooked in fat. The ratio for thin, medium and thick sauces, what white, blond and brown roux are for, a step-by-step white sauce, and fixes for lumps, thin sauce and a floury taste.

A roux is flour cooked in fat, and it is how you turn milk into a white sauce, stock into gravy and a pot of broth into gumbo. Use equal amounts of fat and flour, cook them together until the roux reaches the colour you need, then add the liquid a little at a time while you whisk. Bring it to a simmer, because that is when it thickens fully. Do those things and the sauce will be smooth.
How a roux thickens
Flour is mostly starch. When starch granules are heated in liquid, they soak up water and swell, and the liquid around them turns thick. The problem is that dry flour dropped straight into hot liquid clumps: the outside of each lump swells into a gel and seals the dry flour inside.
Cooking the flour in fat first coats every grain, so when the liquid arrives the grains separate and swell one by one instead of clumping. Cooking it also takes away the raw, pasty taste of uncooked flour.
The starch only reaches its full thickening power close to the boil. A sauce that looks thin when it is merely hot will often thicken as soon as it comes to a gentle simmer, so wait for that before you decide to add more flour.
The ratio
Equal weights of fat and flour is the classic rule. In US measures, most cooks use equal volumes, which works just as well: 2 tablespoons of butter (28 g) and 2 tablespoons of flour (16 g).
How much roux you use for each cup (240 ml) of liquid decides the thickness:
- 1 tablespoon each of butter (14 g) and flour (8 g): a thin sauce, for soups and creamed vegetables
- 2 tablespoons each (28 g butter, 16 g flour): a medium sauce, the usual for gravy and stovetop mac and cheese
- 3 tablespoons each (42 g butter, 24 g flour): a thick sauce, for binding fillings or croquettes
Butter is the usual fat for white sauces. Neutral oil, bacon fat or the fat from a roasting pan all work too, and pan drippings give gravy the most flavour.
Choose the colour
The longer a roux cooks, the darker and nuttier it gets. The browning also changes some of the starch, so a darker roux thickens less: you need more of it for the same body.

- White roux: cooked 1–2 minutes, just until it bubbles and smells slightly toasty without colouring. For béchamel, cheese sauces and creamy soups.
- Blond roux: cooked about 5 minutes, to the colour of light straw or peanut butter. For gravy and sauces made with chicken or fish stock.
- Brown roux: cooked 15 minutes or more over medium-low heat, stirring constantly, until it is the colour of milk chocolate or darker. For gumbo and some stews, where it adds flavour as much as thickness.
If you see black specks or smell anything acrid, the roux has burned. Start again; the bitterness carries into the whole dish.
Step by step: a medium white sauce
This makes about 2 cups (480 ml), enough for 8 ounces (225 g) of pasta or a gratin for four.
- Warm 2 cups (480 ml) of milk in a small pan or the microwave until it steams. Warm milk blends into the roux faster and with fewer lumps than cold.
- Melt 2 tablespoons (28 g) of butter in a saucepan over medium heat until it foams.
- Add 2 tablespoons (16 g) of all-purpose flour and whisk until smooth. Cook, whisking, for 1–2 minutes. It will bubble and loosen slightly; that is the flour cooking.
- Pour in about a quarter of the milk while whisking hard. The roux will seize into a thick paste. Keep whisking until it is smooth.
- Add the rest of the milk in two or three more additions, whisking until smooth each time. Adding it gradually is what keeps lumps away: each addition loosens a smooth paste instead of drowning a dry one.
- Bring the sauce to a gentle simmer, whisking often and reaching into the corners of the pan, where it sticks first. Simmer for 2–3 minutes, until it coats the back of a spoon and a line drawn through the coating with your finger holds.
- Season with salt, pepper and, if you like, a little nutmeg.
When it goes wrong
- Lumps: take the pan off the heat and whisk hard for a minute. If lumps remain, pour the sauce through a fine sieve, or blend it briefly with a stick blender.
- Too thin: let it simmer a few minutes longer, since it may not have reached its full thickness. If it is still thin, mash 1 tablespoon each of soft butter (14 g) and flour (8 g) into a paste, whisk it in in small pieces and simmer for 2 minutes more.
- Too thick: whisk in more warm liquid a splash at a time. A sauce also thickens as it cools, so make it a little looser than you want if it will sit before serving.
- Tastes floury: it needs more time at a simmer. Give it another 3–5 minutes.
- Skin on top: press a piece of plastic wrap or parchment directly onto the surface if the sauce has to wait, or dot it with a little butter.
Allergens and swaps
A classic roux contains gluten (wheat flour) and dairy (butter, and milk in a white sauce).
- Dairy-free: use olive oil or a neutral oil in place of butter, and an unsweetened plant milk such as oat milk. Avoid sweetened plant milks, which make savoury sauces taste off.
- Gluten-free: sweet rice flour or a gluten-free all-purpose blend makes a roux in the same way and at the same ratio. Alternatively, skip the roux: whisk 1 tablespoon (8 g) of cornstarch into each cup (240 ml) of cold liquid, then bring it to a simmer, stirring, until it thickens. Cornstarch sauces are glossier and can thin out if boiled hard for long.
Make it ahead
A cooked roux keeps in a covered jar in the fridge for up to a week. Use it straight from the jar, cold, whisking it into hot liquid. A brown roux is worth making in a larger batch for this reason, since it takes the longest.
A finished white sauce keeps in the fridge, covered, for 2–3 days. It sets firm when cold; warm it gently, whisking in a splash of milk, until smooth again.
Pan drippings make the best gravy roux, so the next time you make a roast chicken with crisp skin, pour off most of the fat, keep about 2 tablespoons in the pan and build the roux right there.