My sweet potato pasta sauce is rich, creamy, and infused with sweet caramelized onions and savory rosemary. Toss it with your favorite pasta and roasted Brussels sprouts for a cozy, flavor-packed vegan dinner you’ll want to make again and again.

Fall is the time of year when I like to start thinking outside the box with recipes. Case in point: pasta. Usually I go for classic sauces like tomato or pesto, but when the temperatures drop, I crave heartier fall flavors. That’s when I turn to dishes like vegan butternut squash pasta, vegan pumpkin pasta, and now, this creamy sweet potato pasta.
Jump to:
As you may have guessed, this isn’t your usual pasta recipe! The sauce is lusciously creamy, with a scrumptious balance of sweet and savory flavors. Sweet potatoes and caramelized onions bring natural sweetness, while rosemary and sage add earthy, savory notes. Everything gets blended up with coconut milk for a decadent, silky sauce that you’ll be tempted to eat by the spoonful.
I finished my pasta with roasted Brussels sprouts — their subtle bitterness and crisp texture pair perfectly with the sauce. Put it all together, and you’ve got one incredibly cozy meal that’s just right for chilly autumn nights!
Ingredients You’ll Need
Below you’ll find a list of ingredients in this recipe, with notes and substitutions. Scroll all the way to the bottom of the post to see the full recipe, including the amount of each ingredient.
- Onions. You’ll need a whole pound of onions. Don’t be scared! You’re going to be caramelizing them, which mellows the flavor and brings out their sweetness.
- Olive oil.
- Garlic.
- Coconut milk. Use canned coconut milk (not the type sold in cartons). Full-fat coconut milk is best, but light will work if you want to reduce the fat and calorie content of the dish.
- Sweet potato.
- Canned diced tomatoes.
- Fresh herbs. We’re using rosemary and sage. Make sure to use fresh — dried won’t cut it for this recipe.
- Dried pasta. I really like this recipe with orecchiette pasta, but feel free to use your favorite variety.
- Brussels sprouts.
- Nutmeg.
- Salt.
How It’s Made
The following is a detailed photo tutorial on how to make this dish. Scroll all the way down if you’d like to skip right to the recipe!
Step 1: Caramelize the onion. Place your onion slices in a pot with some olive oil. Cook them very slowly over medium-low heat, stirring occasionally, until they’re super soft and caramelized.
Step 2: Sauté the garlic. Push the caramelized onions to the side, then turn the heat up a bit and add the garlic to the pot. Sauté it very briefly.
Step 3: Add sauce ingredients. Add the coconut milk, diced sweet potato, diced tomatoes, and rosemary sprig to the pot. Stir it up and bring it to a boil.
Step 4: Simmer. Cover the pot, lower the heat, and let the sauce simmer until the sweet potato is nice and tender.
Step 5: Prepare pasta water and Brussels sprouts. Place a large pot of water over high heat. You want to get it boiling for the pasta. Preheat the oven to 400°F.
Step 6: Roast the sprouts. Arrange them on a baking sheet, drizzle them with olive oil, then rub it in. Stick the baking sheet into the oven.
After about 20 minutes, the sprouts will be tender with some brown crispy spots. They’re done!
Step 7: Cook the pasta. Boil it according to the package directions, then drain it when it’s done.
Step 8: Blend the sauce. You can leave it in the pot and use an immersion blender, if you’d like. I prefer to move it to a blender to get every little chunk. Make sure to remove the rosemary first.
Step 9: Finish the dish. Stir the pasta and sauce together, then add finely chopped fresh sage, nutmeg, and salt.
Step 10: Serve. Divide up the pasta and Brussels sprouts onto plates or bowls. Dig in while it’s hot!
Frequently Asked Questions
Yes! The pasta is the only gluten-containing ingredient in this recipe, so simply replace it with gluten-free pasta.
The sauce can be made entirely in advance and stored in the fridge for up to three days, or in the freezer for up to three months. Alternatively, you can make just the caramelized onions in advance, and keep them in the fridge for up to four days or in the freezer for up to three months. The sweet potatoes can also be diced and the Brussels sprouts halved up to three days in advance.
Store your leftover pasta in an airtight container in the fridge for up to three days. To reheat, you can either microwave it, or warm it back up in a pot on the stove, adding water if needed. I don’t recommend freezing the finished dish, as the pasta can become mushy.
Variations
- Switch up the veggies. Instead of roasted Brussels sprouts, try roasted broccoli, asparagus, cauliflower, or sautéed kale. You could also keep things simple and skip the extra veggies.
- Add a nutty topping. Top your sweet potato pasta with lightly toasted walnuts, pecans, or hazelnuts.
- Spice variations. Instead of rosemary, sage, and nutmeg, try curry powder, some ground cumin with optional cayenne pepper for kick, or smoked paprika.
- Vegan bacon topping. Sprinkle your sweet potato pasta with some coconut bacon or crumbled tempeh bacon.
More Vegan Sweet Potato Recipes
Like this recipe? If so, please stop back and leave me a review and rating below if you try it! Also be sure to follow me on Facebook, Pinterest or Instagram, or subscribe to my newsletter for more recipes like this one!
Print
Pin
Sweet Potato Pasta with Roasted Brussels Sprouts
My sweet potato pasta sauce is rich, creamy, and infused with sweet caramelized onions and savory rosemary. Toss it with your favorite pasta and roasted Brussels sprouts for a cozy, flavor-packed vegan dinner you’ll want to make again and again.
Ingredients
- 1 pound yellow onions (2 to 3 large onions), thinly sliced
- 2 tablespoons olive oil, divided
- 3 garlic cloves, minced
- 1 (13.5 ounce/400 ml) can full-fat coconut milk
- 1 medium sweet potato (about 12 ounces), peeled and diced
- 1 (14.5 ounce/411 gram) can diced tomatoes
- 1 (4-inch) sprig fresh rosemary
- 1 pound dried orecchiette pasta (or pasta shape of choice)
- 1 pound Brussels sprouts, halved
- 1 tablespoon fresh sage leaves, finely chopped
- ¼ teaspoon ground nutmeg
- 1 teaspoon salt, plus more to taste
Instructions
-
Add the onion and one tablespoon of olive oil to a large pot and set it over medium-low heat. Stir to coat the onion with the oil. Let the onion cook slowly, stirring occasionally, until very soft, caramelized, and light brown, about 1 hour. Keep an eye on it and turn the heat down if it begins to sizzle at any point.
-
Turn the heat up to medium. Push the caramelized onions to the side of the pot, then add the minced garlic. Sauté the garlic for about 1 minute, until it becomes very fragrant.
-
Add the coconut milk, sweet potato, diced tomatoes, and rosemary to the pot. Raise the heat and bring the liquid to a boil, then reduce the heat so that it’s just cooking at a low simmer.
-
Cover the pot and let it simmer for 15 to 20 minutes, until the sweet potato is very tender.
-
While the sauce cooks, preheat the oven to 400°F and place a large pot of salted water on the stove over high heat.
-
Arrange the Brussels sprouts on a baking sheet, then drizzle them with one tablespoon of olive oil. Place the baking sheet into the oven and roast the sprouts for about 20 minutes, until they’re tender and browned with crispy spots. Sprinkle them with salt to taste when they’re done.
-
Once the water comes to a boil, add the pasta. Cook it according to the package directions, then drain it into a colander when it’s done.
-
Remove the rosemary sprig from the pot containing the sweet potato mixture, then blend the mixture, either leaving it in the pot and using an immersion blender, or by transferring it to a blender, blending, then returning it to the pot.
-
Add the pasta to the pot with the sauce. Stir to coat the pasta with the sauce, then stir in the sage, nutmeg, and salt.
-
Divide the pasta onto plates or into bowls, then top each with roasted Brussels sprouts. Serve.
Nutrition
Calories: 559kcal | Carbohydrates: 83g | Protein: 16g | Fat: 20g | Saturated Fat: 13g | Polyunsaturated Fat: 1g | Monounsaturated Fat: 4g | Sodium: 549mg | Potassium: 991mg | Fiber: 9g | Sugar: 10g | Vitamin A: 6007IU | Vitamin C: 79mg | Calcium: 121mg | Iron: 5mg