This homemade stuffing is the one dish I am asked to bring every Thanksgiving, and after a decade of tweaking it I can tell you exactly why it works: the bread gets toasted dry first so it drinks up the broth without turning to mush, the celery and onion cook slowly in a frankly generous amount of butter, and fresh sage and thyme go in at the end so they taste like herbs instead of dust. It bakes covered until the middle is soft and custardy, then uncovered until the top is golden and crunchy at the edges. It is simple, it is make-ahead friendly, and it goes with everything from a crockpot turkey breast to a weeknight plate of smothered pork chops. If you also want a green side that stays out of the oven, my new air fryer green beans are the pairing I made for exactly that reason.
Save recipes like this straight from TikTok and plan your week in minutes with RecipeLoop, the free AI meal planner.
Why this homemade stuffing recipe beats the box every time.
The bread is toasted, not stale by accident. Day-old bread is a start, but 15 minutes in a low oven is what really dries the cubes out. Dry bread soaks up broth and butter evenly and keeps its shape, which is the difference between a stuffing recipe with distinct, tender cubes and one that bakes into a paste. It also means you can make this with bread you bought this morning.
Butter, celery and onion are the backbone. A full stick of butter sounds like a lot until you remember it is seasoning ten servings of bread. The celery and onion cook in it for a solid 8 to 10 minutes until sweet and soft, and that buttery vegetable base is what makes homemade stuffing taste like Thanksgiving. The same slow-cooked base is what I use for the filling in my chicken pot pie.
Covered, then uncovered. Baking it covered with foil first lets the broth and egg set into a soft, custardy inside. Pulling the foil for the last 15 minutes gives you that golden, crunchy top everyone fights over. Skip either half and you lose half the texture. It is the same two-stage trick I lean on for chicken and dumplings and every comfort food bake on the site.
Here's what you'll need.
Twelve pantry-level ingredients: a loaf of day-old bread, butter, celery, yellow onion, garlic, fresh sage, fresh thyme, parsley, chicken broth, two eggs, salt and pepper.
Here's how it all comes together.
STEP 1 — Toast the bread cubes.
Heat the oven to 300°F. Spread the bread cubes on a large sheet pan in a single layer and toast 15 to 20 minutes, stirring once, until dry and lightly golden at the edges. They should feel like croutons. Raise the oven to 350°F when they come out.
STEP 2 — Soften the celery and onion in butter.
Melt the butter in a large skillet over medium heat. Add the celery, onion and a big pinch of salt and cook, stirring now and then, 8 to 10 minutes until soft and translucent but not browned. Add the garlic for the last minute.
STEP 3 — Stir in the fresh herbs.
Add the chopped sage and thyme to the buttery vegetables and stir for about 30 seconds until fragrant. Adding the herbs here, instead of to the raw bread, blooms them in the fat so their flavor spreads through every bite.
STEP 4 — Combine the bread and vegetables.
Put the toasted bread cubes in your largest bowl and pour the vegetable and butter mixture over the top, scraping every bit out of the skillet. Add the parsley, pepper and remaining salt and toss gently until the bread is coated.
STEP 5 — Add the broth and eggs.
Whisk the eggs into the broth, then pour it over the bread in two additions, folding gently between each. The bread should be moist all the way through but not swimming; if your loaf was very dry, add the extra half cup of broth.
STEP 6 — Spread in the dish and bake.
Transfer to a buttered 9x13-inch baking dish, spread it loosely without packing it down, and dot the top with the last tablespoon of butter. Cover with foil and bake 30 minutes, then uncover and bake 15 to 20 minutes more until the top is golden and crisp.
Use a sturdy bread. A loaf of French bread, sourdough or a good sandwich loaf all work. Soft, squishy sandwich bread and brioche collapse into mush no matter how well you toast them. Cornbread is wonderful too, but use half cornbread and half regular bread or it will crumble.
Do not pack it into the dish. Spoon it in loosely. Air pockets are what give you those crispy, craggy bits on top; a pressed-down stuffing bakes dense and heavy.
Taste before the eggs go in. Store-bought broth varies a lot in salt. Taste the bread mixture after the broth and before the eggs, and adjust the salt then — it is your last chance.
Dry bread drinks more broth. If the bread is extra dry or your cubes are large, you may need the extra 1/2 cup broth. Press a cube: it should be damp through the middle, not crunchy and not dripping.
Make it a day ahead. Assemble it through step 6, cover and refrigerate overnight. Bake straight from the fridge, adding about 10 minutes to the covered time. This is how I do it every single Thanksgiving so the oven is free for everything else.
Why this is the comfort food side I never skip.
It frees up your holiday. Because it can be fully assembled the day before and baked alongside everything else at 350°F, this is the dish that keeps Thanksgiving morning calm. It bakes in the same oven, at the same temperature, as my turkey breast gravy and the apple crisp that follows it.
It is honestly cheap to make. A loaf of bread, a stick of butter, two stalks of celery and an onion feed ten people. Compared to the rest of a holiday table it costs almost nothing, and it is the dish people go back for seconds of.
Leftovers are the best part. Fried in a buttered skillet the next morning with an egg on top, or pressed into a sandwich with turkey and cranberry sauce, this stuffing is arguably better on day two. For a protein-forward version, stir in a cup of browned sausage with the vegetables — it takes a serving from 7g to around 14g, and you can check the numbers against your own needs with the protein calculator.
Here's what I'd serve with this.
Crockpot turkey breast — the juicy, hands-off turkey I make for small holidays and Sunday dinners
Smothered pork chops — onion gravy and stuffing on a Tuesday is a very good idea
Roasted cauliflower — slide it onto the second rack while the stuffing finishes uncovered
Apple crisp — the dessert that bakes at the same temperature right after
Just in case you have leftovers.
Storing: Cool completely, cover and refrigerate for up to 4 days. Unbaked, assembled stuffing keeps overnight in the fridge. Baked stuffing also freezes well: wrap portions tightly and freeze up to 3 months, then thaw in the fridge before reheating.
Reheating: Cover with foil and warm in a 350°F oven for 20 minutes, splashing a couple of tablespoons of broth over the top first, then uncover for 5 minutes to re-crisp. Single portions reheat in the microwave in 90 seconds, or in a buttered skillet over medium heat, which is my favorite way — the bottom gets crispy all over again.
Also new this week: air fryer green beans — blistered garlic parmesan green beans in 15 minutes that keep the oven free for the stuffing, and air fryer baked potatoes with the crispiest salted skins.
Homemade Stuffing
★★★★★4.9 from 214 votes
Classic bread stuffing with toasted bread cubes, celery and onion cooked in butter, fresh sage and thyme, and broth and egg to bind it, baked until soft inside with a golden crispy top. Make-ahead friendly, 10 servings.
Prep20 min
Cook50 min
Total1 hr 10 min
Servings10
CategorySide Dish
CuisineAmerican
Ingredients
1 loaf (about 1 lb) day-old French bread or sturdy sandwich bread, cut into 3/4-inch cubes (about 12 cups)
1/2 cup (1 stick) unsalted butter, plus 1 tablespoon for the top and more for the dish
3 stalks celery, diced (about 1 1/2 cups)
1 large yellow onion, diced (about 2 cups)
3 cloves garlic, minced
2 tablespoons chopped fresh sage
1 tablespoon fresh thyme leaves
1/4 cup chopped fresh parsley
2 1/2 to 3 cups low-sodium chicken broth
2 large eggs
1 1/4 teaspoons kosher salt, divided
1/2 teaspoon black pepper
Instructions
Toast the bread: Heat the oven to 300°F. Spread the bread cubes on a sheet pan and toast 15 to 20 minutes, stirring once, until dry and lightly golden. Increase the oven to 350°F and butter a 9x13-inch baking dish.
Cook the vegetables: Melt 1/2 cup butter in a large skillet over medium heat. Add the celery, onion and 1/2 teaspoon salt and cook 8 to 10 minutes until soft. Add the garlic and cook 1 minute more.
Add the herbs: Stir in the sage and thyme and cook 30 seconds until fragrant. Remove from the heat.
Combine: Place the toasted bread in a very large bowl. Pour the vegetable mixture over it, add the parsley, pepper and remaining 3/4 teaspoon salt, and toss gently.
Moisten: Whisk the eggs into 2 1/2 cups broth. Pour over the bread in two additions, folding gently, until evenly moistened. Add up to 1/2 cup more broth if the bread still looks dry.
Bake: Spread loosely in the prepared dish and dot with the remaining tablespoon of butter. Cover with foil and bake 30 minutes. Uncover and bake 15 to 20 minutes more until the top is golden and crisp. Rest 5 minutes before serving.
Notes
Make ahead: assemble through step 5, cover and refrigerate up to 24 hours; bake from cold, adding about 10 minutes to the covered time. Add 1 lb browned breakfast sausage with the vegetables for sausage stuffing, or 1 cup each diced apple and dried cranberries for a sweeter version. Vegetarian: use vegetable broth. To stuff a bird, cook the stuffing inside to 165°F; I prefer baking it separately for the crispy top.
If gathering people around uncomplicated, deeply flavored dishes is how you like to cook, the Ultimate Slow Cooker Mediterranean Diet Cookbook is full of mains and sides that mostly cook themselves while you make the stuffing.
Meal-plan the whole week around recipes like this with RecipeLoop — save recipes from anywhere, get a grocery list automatically.
Homemade stuffing questions I get asked.
How long do you bake homemade stuffing at 350°F?
About 45 to 50 minutes total: 30 minutes covered with foil so the inside sets and stays moist, then 15 to 20 minutes uncovered so the top turns golden and crisp. If it goes in cold from the fridge, add about 10 minutes to the covered time.
Can I make stuffing the day before?
Yes, and I recommend it. Assemble it completely, cover and refrigerate overnight, then bake it the next day straight from the fridge. The bread actually absorbs the broth more evenly after a rest. You can also bake it fully a day ahead and reheat it covered at 350°F with a splash of broth.
What kind of bread is best for stuffing?
A sturdy loaf: French bread, sourdough, Italian bread or a firm white sandwich loaf. Cut it into 3/4-inch cubes and toast it dry. Very soft breads like brioche or standard squishy sandwich bread turn to mush once the broth goes in.
How do I keep stuffing from being dry or soggy?
Use the right amount of broth, about 2 1/2 cups for 12 cups of dried bread, and check that every cube is damp through but not dripping. Cover it for the first half of baking to trap steam, and uncover for the second half to crisp the top. The eggs help hold moisture inside too.
What is the difference between stuffing and dressing?
Technically stuffing is cooked inside the bird and dressing is baked in a separate dish, but most people use the words interchangeably by region. This recipe is baked in a dish, so it is dressing by the strict definition, and it has a much better crispy top for it.