Salads
This beet and red onion salad recipe transforms humble ingredients into a vibrant, earthy dish that balances sweet and sharp flavors perfectly. The secret lies in roasting the beets until tender yet firm, which intensifies their natural sweetness while caramelizing the red onions for a subtle bite.
Every bite delivers a satisfying contrast of textures—creamy beets, crisp onions, and crunchy walnuts—that keeps this salad exciting.
What sets this salad apart is the dressing—a simple yet transformative blend of olive oil, apple cider vinegar, and Dijon mustard—that ties all the components together without overpowering them. The walnut topping adds a satisfying crunch and nutty depth that elevates the dish from ordinary to extraordinary.
This recipe is designed to be both visually stunning and deeply flavorful, making it perfect for meal prep or as a showstopping side dish.
The roasting process is where the magic happens: beets develop a deep, caramelized hue while maintaining their shape, and the red onions soften just enough to mellow their sharpness.
When assembled, the salad layers beautifully—bright greens as a base, vibrant beets and onions in the center, and toasted walnuts scattered on top. The dressing binds everything together, creating a cohesive yet dynamic flavor profile.
This salad keeps well in the refrigerator for up to 3 days, allowing the flavors to meld even more over time. For best presentation, arrange the beets and onions in a circular pattern on the plate, then sprinkle the walnuts and fresh herbs on top.
Serve immediately for the freshest texture or store for later when the flavors deepen. Here’s how to make it perfectly every time.
Ingredients for beet and red onion salad
Fresh beets and onions meet earthy walnuts and bright herbs in this vibrant, vegan-friendly salad.
| Ingredient | Amount | Notes |
|---|---|---|
| Medium Beets 🍠 | 2 whole | Medium size, peeled and cubed |
| Red Onions 🧅 | 2 whole | Thinly sliced, caramelized |
| Baby Spinach 🌱 | 5 oz | Fresh, loosely packed |
| Walnuts 🥜 | ½ cup | Toasted, roughly chopped |
| Extra-Virgin Olive Oil 🫒 | ⅓ cup | High quality, fruity |
| Apple Cider Vinegar 🍏 | 2 tbsp | Raw, unfiltered preferred |
| Dijon Mustard 🌶️ | 1 tbsp | Mild or strong variety |
| Maple Syrup 🍁 | 1 tbsp | Pure, grade B preferred |
| Fresh Thyme Leaves 🌿 | ¼ cup | Chopped, for garnish |
| Sea Salt 🧂 | ½ tsp | Fine grain, kosher preferred |
| Black Pepper 🌶️ | ¼ tsp | Freshly ground |
The beets are the star here—organic from Trader Joe's or your local market have the deepest flavor. Look for ones that feel heavy for their size, with smooth, unblemished skins. The red onions should be firm and crisp, not wilting. For the salad base, baby spinach holds up best to the roasted veggies without getting soggy. Walnuts are non-negotiable for that satisfying crunch, and Costco's bulk section offers the best price. Toast them yourself for maximum flavor—just 3-4 minutes in a dry pan until fragrant.
No fresh thyme? Dried works at half the amount, but fresh has that bright, herbal punch. Swap maple syrup for agave nectar if you prefer, though maple adds that perfect caramel note. For the onions, yellow or white work too, but red gives that pretty pink hue. The dressing keeps for 1 week in the fridge—shake before using. Want extra zing? Add a pinch of smoked paprika to the dressing. And if you're short on time, pre-cooked beets from the can (drained and rinsed) work in a pinch, though fresh roasted is ideal.
Roasted beets and onions stay fresh for 5 days in the fridge if stored separately in airtight containers. The dressing keeps 1 week, and toasted walnuts hold their crunch for 3 days if stored in a sealed container. For meal prep, assemble the salad just before serving to keep the spinach crisp. The flavors actually improve overnight—try making a double batch for lunches. Garnish with extra thyme and cracked black pepper right before serving for that restaurant-quality touch.
Why You'll Love This Recipe
- Here’s what sold me: the walnuts. Toasted just until fragrant, they crackle with every bite while the spinach stays bright and the beets hold their bite. It’s like a textural hug—earthy, crunchy, and fresh all at once.
- No Roasting Required: I’ll admit, I used to dread roasting beets—peeling, boiling, waiting. Then I discovered this salad: just slice them raw, let the acidity in the red onion and olive oil tenderize them slightly. Ten minutes, no fuss, and they still taste deep and sweet.
- Crunchy Contrast Magic: Here’s what sold me: the walnuts. Toasted just until fragrant, they crackle with every bite while the spinach stays bright and the beets hold their bite. It’s like a textural hug—earthy, crunchy, and fresh all at once.
- Lunchbox Hero: Between us, this salad keeps me sane on busy days. Pack it in a jar (spinach on the bottom, beets and onions on top), and it stays crisp for hours. My kid brings it to school—no complaints, just empty containers.
Step-by-step instructions for beet and red onion salad
Transform simple ingredients into a vibrant salad with bold flavors and perfect textures.
Roast the Beets Until Tender
Preheat your oven to 400°F. Wrap the 2 whole medium beets (peeled and cubed) individually in aluminum foil. Place them on a baking sheet and roast for 45-50 minutes until they're fork-tender and develop a deep, earthy sweetness. The beets are ready when a knife slides in easily and the edges appear slightly caramelized.
While roasting, I like to turn the beets halfway through for even cooking. This ensures they don't develop any hard spots. Once done, let them cool slightly before handling—they'll be very hot straight from the oven. You can either peel them now or leave the skins on for added texture, depending on your preference.
Caramelize the Red Onions
Heat 2 tablespoons extra-virgin olive oil in a large skillet over medium-low heat. Add the 2 whole red onions (thinly sliced) and cook for 20-25 minutes, stirring occasionally, until they're deep golden brown and sweet-smelling. This slow process transforms their sharp bite into a rich, caramelized flavor that complements the beets perfectly.
Don't rush this step—patience is key. You'll know they're ready when they're soft enough to pierce with a fork and have developed a beautiful amber color. If they start to stick, add a splash of water and scrape up any browned bits from the bottom of the pan. These bits are packed with flavor and should be incorporated into the onions.
Prepare the Dressing
In a small bowl, whisk together the remaining 0.33 cup extra-virgin olive oil, 2 tablespoons apple cider vinegar, 1 tablespoon Dijon mustard, and 1 tablespoon maple syrup. The dressing should be smooth and well combined. Taste and adjust the seasoning with 0.5 teaspoon sea salt and 0.25 teaspoon black pepper—this is where you can balance the sweetness and acidity to your liking.
Here's the thing—this dressing is the backbone of the salad. The apple cider vinegar adds brightness, the Dijon mustard brings depth, and the maple syrup enhances the natural sweetness of the beets and onions. Whisking it thoroughly ensures every bite of the salad will be cohesive and flavorful.
Assemble the Salad
In a large bowl, combine the 5 ounces baby spinach, roasted beets, and caramelized onions. Drizzle the dressing over the top and toss gently but thoroughly to coat everything evenly. The spinach should wilt slightly, and the beets and onions should be well distributed throughout the greens.
Don't over-toss—the goal is to create a harmonious mix where each component retains its integrity. The baby spinach adds a fresh, crisp contrast to the tender beets and caramelized onions. If the salad seems dry, add a splash more dressing, but be mindful—too much can dilute the flavors.
Toast the Walnuts and Garnish
While the salad assembles, heat a dry skillet over medium heat. Add the 0.5 cup walnuts and toast for 3-4 minutes, stirring frequently, until they're fragrant and lightly golden. Watch them closely—they burn quickly. Remove from heat and let cool for a minute before roughly chopping them.
Sprinkle the toasted walnuts and 0.25 cup chopped fresh thyme leaves over the salad just before serving. The walnuts add a satisfying crunch and nutty depth, while the thyme brings an aromatic finish. This final garnish elevates the dish from simple to sophisticated, tying all the flavors together in one cohesive bite.
Pro Tips For Making Beet And Red Onion Salad
- ROAST BEETS UNTIL TENDER: I learned this the hard way—beets need to hit 205°F (96°C) internally to soften properly, not just look done. Cut them into even 1-inch cubes, toss with 1 tablespoon olive oil, and roast at 400°F (200°C) for 25-30 minutes. Overcooked beets turn mushy; undercooked ones stay stubborn. Trust the thermometer, not the color.
- SOAK ONIONS FOR 10 MINUTES: Skip the raw bite by slicing red onions thin and soaking them in ice water for 10 minutes before draining. This mellows their sharpness without diluting the salad. (Yes, even if you're impatient like me—your mouth will thank you later.)
- TOAST WALNUTS LOW AND SLOW: Toss walnuts in a dry pan over low heat for 3-4 minutes, stirring constantly, until they’re golden and fragrant. High heat burns them fast; low heat gives them time to crisp properly. If you’re lazy, use 1 minute in the microwave—but they won’t taste as rich.
- DRESS SPINACH LAST MINUTE: Baby spinach wilts fast under dressing. Toss it with beets and onions first, then drizzle olive oil and vinegar (if using) right before serving. This keeps the leaves crisp, not soggy. (Your future self will thank you when you don’t have to re-wash wilted greens.)
Flavor customization for this beet and red onion salad
Sweet Heat Boost
Add 1 teaspoon smoked paprika and ½ teaspoon cayenne pepper to the dressing for a smoky kick that pairs beautifully with the beets. I also like adding 1 tablespoon balsamic glaze to the dressing for extra depth—just drizzle it in at the end.
For a sweeter heat combo, toss in 1 teaspoon honey or agave nectar alongside the cayenne. 🌶️
Citrus Zing
Brighten the salad with 1 tablespoon fresh orange zest and 2 tablespoons orange juice added to the dressing. The citrus cuts through the earthiness of the beets while adding a refreshing pop.
For extra flair, top with thinly sliced blood oranges or a sprinkle of freeze-dried orange powder—it adds a fun, tangy crunch. 🍊
Herb Variations
Swap out thyme for fresh rosemary or dill to change the flavor profile entirely. I love adding 1 tablespoon chopped fresh dill to the dressing for a bright, almost cucumber-like note.
For a Mediterranean twist, toss in ¼ cup chopped parsley and 2 tablespoons crumbled feta (if not keeping it vegan). The herbs should be added just before serving to keep them vibrant. 🌿
Nutty Alternatives
If walnuts aren’t your thing, try toasted pecans or pumpkin seeds for a different crunch. For a nut-free option, use crispy chickpeas (tossed in olive oil and baked until crunchy). I also like adding ½ cup toasted sunflower seeds for a lighter, seed-based crunch that still packs flavor. 🥜
Cheesy Twist
For a non-vegan version, fold in ½ cup crumbled goat cheese or feta into the dressing before tossing. The creaminess balances the sharpness of the onions and sweetness of the beets perfectly.
If you prefer a sharper cheese, try aged pecorino—just crumble it on top at the end so it doesn’t melt into the dressing. 🧀
Spiced Yogurt Dressing
Replace the olive oil-based dressing with a spiced yogurt dressing by mixing ½ cup Greek yogurt, 1 tablespoon lemon juice, 1 teaspoon ground cumin, and ½ teaspoon garlic powder.
This tangy, creamy option adds a whole new dimension to the salad, especially if you’re serving it as a heartier dish. 🥄
Nutrition facts
Frequently asked questions
Can I use raw beets instead of roasted?
Raw beets work but lose the deep caramelized sweetness that roasting creates. For best flavor, roast them—it intensifies their natural sugars and makes them tender. If you're short on time, boil them for 15-20 minutes until fork-tender, then cool before slicing.
How do I prevent the red onions from burning while caramelizing?
Keep the heat at medium-low and stir frequently. If they start to stick, add a splash of water and scrape up the browned bits—they're packed with flavor! Covering the pan for the last 5 minutes helps speed up cooking without burning.
What's the best way to store this salad for meal prep?
Store the roasted beets, caramelized onions, and dressing separately in airtight containers for up to 5 days. Keep the spinach and walnuts separate until ready to serve to maintain crispness. Assemble just before eating for the freshest texture.
Can I make this salad ahead of time?
The flavors actually improve overnight. Roast and slice the beets, caramelize the onions, and make the dressing the day before. Store all components separately, then toss together with fresh spinach and walnuts when ready to serve.
What if I don't have walnuts?
No problem! Try toasted pecans, pumpkin seeds, or crispy chickpeas for crunch. For a seed-free option, add dried cranberries or toasted coconut flakes—both add sweetness and texture without nuts.
