This roasted veggie breakfast casserole is the best make-ahead breakfast situation for holidays, brunch parties, or even just regular weekdays! It’s loaded with roasted seasonal vegetables, creamy eggs, pesto, and Mozzarella for a wholesome, decadent, and cheesy breakfast dish.

An overhead image of a metal dish with roasted veggie breakfast casserole on a white table next to a white linen, plate of casserole, and cups of coffee.

Spring has officially made its way into Reno which is evident by the fact that there are a million and one weeds in my yard and also I have not stopped sneezing since last Thursday. The good news is that the warm weather is the perfect opportunity to invite your friends over and eat brunch in your backyard!

This past weekend, Marc and I did exactly that and invited some of our friends over for a little brunch party situation. It was a very good time with a mix of close friends, a bit of booze, and a surprising amount of veggies. (I mean, we are in our late 20s after all. If ever there was a time to offset a few too many mimosas with a handful of roasted veggies, it would be now.)

Even though the menu included plenty of decadent dishes like a brunch charcuterie board and brioche French toast casserole, the real star of the show ended up being this casserole. It was pretty unexpected. Like, I wasn’t even really planning on blogging it lol. But then, it ended up being so delicious that I really didn’t have a choice. So here we are. I still have a bottle of leftover champagne in the fridge and you have breakfast casserole.

About this breakfast casserole

When I was in pastry school, we used to make the best roasted veggie quiches. This casserole is inspired by that original quiche recipe but we’re swapping pie crust for shredded potatoes to make things a bit easier. It also has a mix of garlicky, roasted seasonal vegetables, eggs, pesto, and spinach. Plus, a couple handfuls of cheese because we deserve it.

  • The casserole is beyond simple and make-ahead-able.
  • It goes with all kinds of sides from orange poppy seed muffins to cream cheese strawberry danish.
  • Swap out the veggies with any of your favorites. It’s so easy to customize.
  • This recipe makes a lot of servings. It’s my go-to for brunch parties & holidays!

Ingredient notes

A bowl of chopped veggies on a grey counter next to a white bowl of cheese, eggs, jar of pesto, potatoes, spinach, and a measuring cup of milk.

The beauty of this casserole is that you can customize it with whatever ingredients are in season. Or whatever you already have wilting in the fridge. (It’s fine, we’ve all been there). Here’s everything you’ll need!

  • Veggies – pick a mix of seasonal, roast-able veggies. I like zucchini, bell peppers, and shallots. But, we’ll discuss more ideas later!
  • Oil – you will need a bit of olive oil for roasting veggies. Avocado oil will work too.
  • Garlic – for a little extra flavor, we’ll toss the veggies with fresh garlic.
  • Spinach – or some other kind of greens like kale, Swiss chard, or collard greens.
  • Eggs – you will need a whole dozen for this recipe.
  • Whole milk – half-and-half works too if you want the eggs to be a bit creamier.
  • Pesto – store-bought or homemade is totally fine. My go-to recipe is this lemon pesto (except I usually make it without lemon for this casserole).
  • Russet potatoes – for shredding into hashbrowns. You can also use fresh pre-shredded potatoes or sweet potatoes. So good!
  • Cheese – we’re using a mix of mozzarella and Parmesan. Make sure it’s freshly-grated so it melts nicely! The additives in pre-grated cheese will make it grainy. You can also try other cheeses like white cheddar, gruyère, or other melty cheeses.
  • Salt & pepper – my go-to is Morton’s Kosher salt and freshly-ground black pepper.

How to make this recipe step-by-step

Four overhead images; on the left, a white bowl of chopped veggies. In the middle left, roasted veggies on a gold sheet pan. In the middle right, a white bowl of whisked eggs. On the right, a pre-baked assembled breakfast bake.
  1. Start by tossing the diced veggies with olive oil, salt, and pepper. Spread them on a sheet pan and roast the veggies at 425°F (218°C) until they’re softened.
  2. During the last few minutes of cooking, toss the spinach and garlic with the roasted veggies. Let the mixture cool while you prepare the rest of the recipe.
  3. Next, whisk the eggs, milk, pesto, salt, and pepper until smooth. Set aside.
  4. Then, grate the potatoes. Spread them evenly across the bottom of a greased 9×13 casserole dish followed by the roasted veggies and half the cheese. Pour the egg mixture into the pan. Sprinkle the rest of the cheese on top.
  5. Bake the casserole at 350°F (177°C) for 40-50 minutes until the edges are golden brown and the center is no longer jiggly.
  6. Allow the casserole to cool at room temperature for about 5 minutes to “set”. Slice and enjoy!

Roasting veggies

The point of roasting the veggies (instead of just throwing them in raw) is to give them a deeper flavor. The veggies should be crisp-tender and have a little bit of caramelization on the edges. If the veggies are too crowded, spread them on 2 pans so they caramelize instead of steam.

Seasonal veggies

For this recipe, I typically use in-season vegetables so the casserole is extra flavorful. Basically, you want any veggie that’s roast-able! Keep in mind that some veggies like shallots, spinach, mushrooms, and broccoli are typically available year-round so you can mix and match with your favorite ingredients!

  • Winter – broccoli, cauliflower, leeks, shallots, winter squashes, and kale
  • Spring – asparagus, leeks, peas, morels, fiddleheads, arugula, and spinach
  • Summer – eggplant, peas, okra, bell peppers, cherry tomatoes, zucchini, mushrooms, yellow squash
  • Fall – broccoli, chilis, eggplant, leeks, onions, peppers, shallots, mushrooms, winter squash
A closeup of a slice of roasted veggie breakfast casserole on a white plate next to a cup of coffee, pan, and white bowl of basil on a grey counter.

Tips & tricks

  • Cut the veggies around the same size so they cook evenly. I like a small dice but feel free to change up the size to add extra texture!
  • Shred the potatoes immediately before you add them to the pan. Otherwise, they will turn brown and get a little funky.
  • If the edges of the casserole are getting too browned, tent the top with tinfoil or an oven-safe lid. The cheese should be golden-brown, not burnt.
  • Allow the casserole to cool for about 5 minutes before serving. Just like lasagna, it will keep the casserole from falling apart when you cut into it.

Make-ahead instructions

None of us want to wake up at 6am on a Sunday to make brunch. Enter the make-ahead casserole. Just assemble the casserole and cover the dish with a lid, foil, or plastic wrap. Store in the fridge for up to 24 hours. The next morning, remove the casserole from the fridge while the oven is preheating. Bake, slice, and thank your past self!

To store & reheat leftovers

Place the leftovers in a single layer in an airtight container. Then, refrigerate the slices for up to 5 days.

To reheat the casserole, you can warm it in the oven at 350°F (177°C) for about 10 minutes. Or, you can microwave the slices for 60-90 seconds. Just keep in mind that eggs pop a bit in the microwave but it shouldn’t be too crazy!

An overhead image of a roasted veggie breakfast casserole with basil on a white speckled counter next to a white bowl of basil, cups of coffee, and white napkin.

If you make this recipe, I would love it if you left a star rating and review! I read every single comment and love hearing what you think about my recipes. Thank you for supporting Sunday Table!

A slice of roasted veggie breakfast casserole on a white plate next to a white bowl of basil on a grey table.
5 from 3 votes

Roasted Veggie Breakfast Casserole with Pesto

Yield: 12 slices
Prep Time: 25 minutes
Cook Time: 1 hour 15 minutes
Total Time: 1 hour 40 minutes
This roasted veggie breakfast casserole is my go-to recipe to make for a brunch party, meal prepping, or the holidays! You can make it in advance, bake it in the morning, and serve it to a crowd for a simple, stress-free breakfast. It's savory, wholesome, fresh, and so flavorful!


  • 6 c veggies of choice*, small dice
  • 2 Tbs olive oil
  • 2 c spinach, roughly chopped
  • 3 large cloves garlic, minced
  • 12 eggs
  • 1/2 c whole milk
  • 1/3 c pesto, store-bought or homemade
  • 4 c shredded potatoes (about 2 medium russet potatoes)
  • 2 c Mozzarella, shredded
  • Kosher salt and pepper, to taste
  • Fresh basil, Parmesan, and/or hot sauce, for serving


  • Preheat oven to 425°F. Grease both a sheet pan and 9×13 casserole dish with neutral oil. Set aside.
  • Spread the diced veggies on the greased sheet pan. Toss with the olive oil, salt and pepper, to taste. Bake the veggies for about 20-22 minutes, stirring occasionally, until they are tender and starting to brown on the edges.
  • During the last couple minutes of cooking, stir the spinach and garlic into to the roasted veggies. Cook until the spinach is wilted, 1-2 minutes. Remove the veggies from the oven and let them cool at room temperature for a few minutes while you prepare the rest of the ingredients. Then, decrease the oven to 350°F if you are baking the casserole right away.
  • Next, whisk the eggs, milk, and pesto together in a medium bowl until smooth. Season with salt and pepper, to taste. Set aside.
  • Grate the potatoes with a cheese grater. Spread the shredded potatoes evenly along the bottom of the prepared casserole dish followed by the veggies. Sprinkle half the cheese over the veggies. Next, pour the whisked eggs over the potato-veggie mixture. Sprinkle the remaining cheese over the top.
  • Bake the casserole for 40-50 minutes until the edges are golden brown and the center no longer jiggles when you give it a little shake**. Allow the casserole cool for about 5 minutes on the counter. Sprinkle fresh basil and Parmesan over the top if desired. Then, cut into 12 slices. Enjoy with hot sauce!
  • To make the recipe a day in advance: after you assemble the casserole, cover it with a lid or plastic wrap. Store in the fridge overnight. When you’re ready to bake the casserole, remove the lid or plastic wrap and bake at 350°F for 40-50 minutes.


*I recommend choosing veggies that are good roasted (nothing too delicate). Anything hearty like peppers, zucchini, onions, broccoli, etc. are good options. See above for a bunch of ideas!
*For me, 6 cups of veggies was 1 large shallot, 2 zucchinis, and 2 bell peppers.
**If the edges start to get too browned, tent the casserole with tin foil or an oven-safe lid.
Cuisine: American
Course: Breakfast, Brunch
Serving: 1slice, Calories: 181kcal, Carbohydrates: 12.4g, Protein: 9.6g, Fat: 10.9g, Saturated Fat: 3g, Cholesterol: 169mg, Sodium: 342mg, Potassium: 419mg, Fiber: 1.8g, Sugar: 3.3g, Calcium: 82mg, Iron: 2mg
Did you make this recipe?Tag on Instagram!

xo Sara Lynn

Song of the day – Bambi by Clairo