Vegan Grilled Cheese Sandwich
This post may contain affiliate links. As an Amazon Associate, I earn from qualifying purchases. Please read my disclosure.I’ve made a lot of grilled cheese sandwiches over the years, but this one is hands-down the best vegan version I’ve ever had! It’s gooey, crispy, and full of flavor, thanks to a generous layer of fajita veggies, gooey vegan cheese, and fresh spinach. This sandwich isn’t just dairy-free, it’s totally satisfying and kid-approved too!

There’s something about a grilled cheese sandwich that’s just total comfort food. And my vegan version tastes just as good as the traditional version with crispy golden bread, melty cheese, and bold flavor in every bite! It’s easy to make, packed with veggies, and the kind of satisfying meal you can throw together in minutes.
Grilled cheese was one of my favorite meals growing up, so finding a way to make it dairy-free and just as delicious has been a game changer. My secret? Fajita-style veggies, a layer of creamy vegan ranch, and a generous helping of vegan cheese. It’s a total flavor bomb that turns a simple sandwich into something crave-worthy.
We love cheesy vegan meals, so this veggie grilled cheese sandwich recipe hits it out of the park! All of my kids loved it, I may have finely chopped the fajita veggies for my pickiest eater, but it was devoured by all.
👩🏽🍳 Why I Love This Recipe
As a mom and health coach, I’m always looking for ways to make classic comfort food healthier and more nutrient-dense. The added veggies not only boost the flavor but also make this meal more balanced. And when my kids ask for seconds, I know it’s a recipe worth keeping in regular rotation.
It also reheats surprisingly well, which makes it great for next-day lunches. I’ll often make a few extra sandwiches, stash them in the fridge, and then crisp them up on a skillet or in the toaster oven the next day. It’s a super convenient option when you’re juggling a busy schedule but still want something warm and satisfying without having to cook from scratch again.
This is now a regular in our house because it checks all the boxes: quick, customizable, kid-approved, and easy to pair with just about any soup or side. Whether I’m serving it with tomato soup or slicing it into strips for little hands, it always disappears fast!
🥘 Ingredients
This sandwich comes together in no time and is great served with all my vegan soups for dunking! It’s made with simple ingredients that are easy to find. Here’s what I used:

Fajita Veggies: I like to use a mix of sautéed bell peppers and onions as my veggie filling. They bring that sweet, caramelized flavor and make the sandwich feel heartier, plus, they’re a sneaky way to get more vegetables in.
Spinach: A handful of baby spinach wilts into the warm sandwich and adds a dose of greens without overpowering the other flavors. I don’t even cook it ahead of time, the heat from the grilled sandwich softens it just right.
Dairy-Free Cheese: This is what gives you that melty, gooey grilled cheese moment! I usually go with a store-bought brand like Daiya or Whole Foods Vegan Cheese Slices, because I find those melt the best, but if I have homemade vegan cheese on hand, I’ll add that in too.
Bread: You can use any bread you like here. I tend to go for a sturdy whole grain sandwich bread or sourdough that crisps up nicely. If you’re gluten-free, just use your favorite gluten-free loaf, this recipe works great with that swap.
Vegan Ranch Dressing (Optional): This is totally optional but highly recommended! Spreading a little vegan ranch on the inside of the sandwich adds so much flavor. It balances out the richness of the cheese and makes every bite more interesting.
Butter or Oil (Optional): For the crispiest crust, I brush the outside of the bread with either melted vegan butter or a bit of olive oil before grilling. It’s not essential, but it does help you get that golden brown, diner-style finish.
🔪 How To Make
Making this vegan grilled cheese sandwich is quick and easy, perfect for a weekday lunch or a last-minute dinner. Here’s how I do it:
Prep: First, I brush the outside of each bread slice with a little vegan butter or olive oil. Then I flip them over and spread vegan ranch on the inside if I’m using it. Then I add a slice of dairy-free cheese to each slice of bread, and then I’ll pile on the fajita veggies and a handful of fresh spinach. If I want it extra cheesy (which I often do), I’ll add a second slice of cheese over the veggies too before closing up each sandwich with the remaining bread, buttered side facing out.

Cook: I preheat a nonstick or cast iron pan over medium-low heat. Then I place each sandwich in the pan and grill for about 2-3 minutes per side, pressing down gently with a spatula. I make sure the cheese is melted and the bread is golden brown before taking it off the heat.

Serve! As soon as they’re done, I let them sit for about 1-2 minutes and then I slice them in half and serve hot. They’re best right off the pan when the cheese is gooey and the bread is still crisp!

💭 Expert Tips
My #1 Secret Tip for this recipe is to choose a vegan cheese brand that melts well! Not all vegan cheese are created equal, and some cheeses don’t really give you that traditional grilled cheese flavor or texture. My personal favorite for this recipe is Daiya, but if you can’t find that, the Whole Foods brand of sliced vegan cheddar works, and as a 3rd runner up – Chao.
Other Tips To Keep In Mind:
- Cook Low And Slow: Cooking your sandwich too fast on high heat can burn the bread before the cheese has time to melt. I stick to medium or medium-low and let the sandwich crisp slowly, it’s worth it!
- Don’t Overstuff: It’s tempting to pile on tons of veggies, but if there’s too much filling, the cheese won’t melt properly and the bread might not stay crisp. I keep the layers balanced, enough filling for flavor, but not so much that it becomes hard to flip.
- Chop Veggies Finely: This works really well for younger kids or picky eaters, but I also find it makes the texture of the grilled cheese better too because the smaller veggies blends really nicely with the cheese & bread.
- Preheat Before Grilling: A properly preheated pan helps the bread get golden brown faster without drying it out. I always give my pan a minute or two to heat before placing the sandwiches in.
📖 Variations
While I personally think the above ingredients make the very best vegan grilled cheese, it’s fun to mix up the flavors! Try including any of the following:
Different Spreads: I love using vegan ranch for that tangy, creamy base, but you can easily change the flavor profile by swapping in vegan mayo, sriracha mayo, vegan garlic aioli, vegan BBQ sauce, or even roasted carrot hummus for a smoky-sweet twist.
Different Add-Ins: You can get creative with whatever veggies and add-ins you like! Sautéed mushrooms, roasted red peppers, tomatoes, sundried tomatoes, avocado, or jalapeños would all taste great. If you’re short on time, use leftover roasted veggies from dinner the night before. I also like adding in spices like basil, Italian seasoning, or crushed red pepper.
Add Protein: Most vegan cheese doesn’t have much protein at all, so sometimes I’ll make this grilled cheese heartier with plant-based proteins like vegan sausage, vegan pulled pork, thinly sliced tofu, tempeh, or tofu bacon, or mushroom bacon.
🍽 Serving Suggestions
This vegan grilled cheese makes a cozy, satisfying main dish all on its own, but it also tastes great with so many side dishes! I love serving it with a bowl of soup for dunking, my creamy vegan tomato soup is a classic, but it’s just as delicious with broccoli cheddar soup, my vegan baked potato soup, or Italian chickpea soup for a little variety.
For something lighter and crisp, I like adding baked kale chips, veggie tots, or oven-roasted sweet potato fries on the side. If I’m going for something light with more veggies, I’ll toss together a quick salad like this Chick-Fil-A kale salad copycat, or coleslaw.
And when it’s warm outside, nothing beats this with a scoop of this Mexican fruit salad or a side of street corn salad too!
🧊 Storage Directions
Refrigeration: If you have leftovers, you can store the grilled cheese sandwiches in an airtight container in the fridge for up to 2 days. I recommend letting them cool completely before storing so they don’t get soggy from releasing steam in the container.
Freezing: I don’t recommend freezing these sandwiches, but if you want to prep ahead, you can assemble the sandwiches and store them un-cooked in the fridge for a few hours. Then just cook them fresh when you’re ready to eat!
Reheating: To reheat, I just place the sandwich in a hot skillet or toaster oven for a few minutes on each side until the bread is crisp again and the cheese is melty. I don’t recommend microwaving, since it tends to make the bread rubbery instead of crispy.
❓Recipe FAQs
Yes! You can toast the sandwich in a dry skillet. It won’t be as crispy on the outside, but the bread will still get toasted and the cheese will melt. If you press the sandwich slightly as it cooks that will get the bread even more crispy without oil!
Be sure your veggies aren’t too wet, especially if you’re sautéing or roasting them ahead of time. I also recommend building the sandwich just before cooking so the bread stays firm and doesn’t absorb the moisture from the veggies before it cooks.

🥪 More Vegan Sandwich Recipes!
Love this plant based sandwich recipe? Please leave a 5-star rating 🌟 in the recipe below and/or a review in the comment section further down the page!
You can also FOLLOW ME on FACEBOOK, INSTAGRAM, and PINTEREST to see more delicious, healthy, family-friendly food, and if you have any questions, I’m here to help!
📋 Recipe Card
Vegan Grilled Cheese Sandwich
Ingredients
- ½ recipe fajita veggies
- 2 cups fresh baby spinach
- 12 slices dairy free cheese of choice
- 12 slices bread of choice , gluten-free if needed
- vegan butter or oil , to brush on bread (optional)
- vegan ranch dressing , to coat bread (optional)
Instructions
- Brush the outside of the bread slices with butter or oil, optional for extra crisp.
- Coat the inside of the bread slices with ranch, optional for extra flavor.
- Place 6 of the slices with the outsides down, then layer with 1 slice of cheese.
- Separate the veggies and spinach among the 6 slices.
- Top with one more slice of cheese. You can put an extra slice in between veggie layers for extra cheesiness.
- Top with the last 6 slices of bread, keeping the buttered or oiled side on top.
- Grill on a hot pan on low for 2-3 minutes, then flip and grill another 2-3 minutes until the cheese is melted. If you used oil or butter, watch it closely so it doesn’t burn.
- Devour!
Notes
- Choose a vegan cheese brand that melts well! Not all vegan cheese are created equal, and some cheeses don’t really give you that traditional grilled cheese flavor or texture. My personal favorite for this recipe is Daiya, but if you can’t find that, the Whole Foods brand of sliced vegan cheddar works, and as a 3rd runner up – Chao.
- Cook Low And Slow: Cooking your sandwich too fast on high heat can burn the bread before the cheese has time to melt. I stick to medium or medium-low and let the sandwich crisp slowly, it’s worth it!
- Don’t Overstuff: It’s tempting to pile on tons of veggies, but if there’s too much filling, the cheese won’t melt properly and the bread might not stay crisp. I keep the layers balanced, enough filling for flavor, but not so much that it becomes hard to flip.
- Chop Veggies Finely: This works really well for younger kids or picky eaters, but I also find it makes the texture of the grilled cheese better too because the smaller veggies blends really nicely with the cheese & bread.
- Preheat Before Grilling: A properly preheated pan helps the bread get golden brown faster without drying it out. I always give my pan a minute or two to heat before placing the sandwiches in.