Beet and Bean Salad Recipe: Earthy Sweetness Meets Protein-Packed Crunch

Salads

Beet and Bean Salad Recipe: Earthy Sweetness Meets Protein-Packed Crunch

This beet and bean salad recipe transforms humble ingredients into a vibrant, protein-rich dish that’s packed with earthy sweetness and satisfying crunch.

The secret lies in roasting beets until tender yet firm, which intensifies their natural caramel notes, while canned or pressure-cooked beans add a hearty texture that stands up to bold flavors.

A simple yet balanced dressing—like a tangy lemon-tahini or balsamic vinaigrette—ties everything together, creating a salad that’s as nutritious as it is delicious.

What makes this recipe stand out is its versatility—it works as a standalone meal or a side dish that complements grilled proteins, roasted vegetables, or even as a topping for grain bowls.

The combination of beets, beans, and greens delivers a powerhouse of fiber, plant-based protein, and antioxidants, making it a smart choice for health-conscious eaters. Plus, the prep is straightforward: roast the beets, warm the beans, toss with dressing, and garnish with toasted nuts or fresh herbs for extra depth.

The result is a salad that’s vibrant in color, rich in flavor, and satisfying in every bite. The beets add a deep, sweet earthiness, the beans bring a sturdy, protein-packed crunch, and the dressing ensures every ingredient shines.

Whether you’re meal prepping for the week or assembling a last-minute lunch, this recipe delivers restaurant-quality results with minimal effort.

Serve it chilled for a refreshing bite or at room temperature for deeper flavors. Pair it with crusty bread, quinoa, or a sprinkle of feta (if not keeping it vegan) for a complete, balanced plate. Here’s how to make it perfectly every time.

👨‍🍳
Difficulty
Medium
🌿
Diet
Vegetarian
🔥
Calories
Med Cal

Ingredients for beet and bean salad

Roasted beets and hearty beans create a vibrant, protein-rich salad with deep flavors and satisfying texture.

Ingredient Amount Notes
Medium Beets 🍠 2 whole Roasted until tender, peeled
Canned Cannellini Beans 🌱 1 ½ cups Drained and rinsed, warmed
Baby Spinach 🌿 5 cups Fresh, loosely packed
Extra-Virgin Olive Oil 🫒 ½ cup High-quality, fruity
Lemon Juice 🍋 ¼ cup Freshly squeezed
Tahini 🥜 ¼ cup Smooth, sesame paste
Maple Syrup 🍁 1 tbsp Pure, grade B
Dijon Mustard 🌶️ 1 tsp Mild variety preferred
Garlic Cloves 🧄 3 cloves Fresh, minced
Toasted Walnuts 🌰 ½ cup Chopped, skin-on
Red Wine Vinegar 🍷 1 tbsp Dry variety
Sea Salt 🧂 1 tsp Fine grain, Diamond Crystal
Fresh Thyme Leaves 🌿 ¼ cup Chopped, stems removed
Firm Tofu 🧀 ½ lb Press-drained, cubed

The beets are the star here—organic, medium-sized work best for even roasting. Whole Foods or local farmers' markets often carry pre-washed varieties, but if you're buying whole, look for vibrant color and firm texture. For the beans, cannellini from Trader Joe's or Wild Garden brands are ideal—they hold their shape well when warmed. The spinach should be fresh, not wilted; Dole baby spinach bags are a reliable grocery store option. If you're prepping ahead, roast the beets in advance and store them in the fridge for up to 5 days—they only get sweeter over time.

No tahini? Substitute with extra olive oil plus an extra pinch of salt, though the nutty depth will be missing. Fresh thyme unavailable? Dried thyme at one-third the amount works, but fresh is ideal for that bright herbal note. For the dressing, balsamic vinegar can replace red wine vinegar in a pinch, though it adds a slightly sweeter profile. The tofu adds extra protein—press it for at least 20 minutes to remove excess moisture. If you prefer crunch without nuts, toasted chickpeas make a great alternative. The walnuts should be toasted until golden; Costco sells them pre-toasted for convenience.

This salad keeps beautifully in the fridge for 4-5 days, though the texture of the spinach softens over time. Store components separately—the dressing should be kept in a sealed jar to prevent separation. For meal prep, portion the salad into glass containers with tight lids; Mason jars work perfectly. The tofu and beans can be pre-cooked and stored for up to 5 days as well. When reheating, warm the beans and tofu gently—they should be heated through but not mushy. Garnish with fresh herbs just before serving to maintain their vibrant color and flavor.

❤️

Why You'll Love This Recipe

  • No-Cook Magic: I swear by this—just roast the beets once (or grab pre-cooked), drain the beans, and toss. The spinach wilts in seconds with a squeeze of lemon, and suddenly you’ve got a salad that feels like a hug.
  • Earthy, Bright, Balanced: That deep beet sweetness meets the creamy beans and zesty olive oil—it’s like a flavor party where everyone’s invited. The lemon cuts through everything, so it’s never boring.
  • Lunchbox to Picnic: Honestly, this is my go-to for work lunches (packs perfectly in jars) or potlucks. Cold or at room temp, it’s always a hit—no fussing with keeping it chilled.
  • Budget Meal Hero: Canned beans and seasonal beets stretch this salad for days. I make a big batch on Sunday, and by Wednesday, I’m still eating it—no takeout, no guilt.

Step-by-step instructions for beet and bean salad

Assemble this vibrant salad with precise technique for perfect balance of textures and flavors.

1

Roast and Prepare the Beets

Preheat your oven to 400°F and line a baking sheet with parchment paper. Wrap each of the 2 whole medium beets tightly in aluminum foil, sealing the ends completely. Place them on the prepared baking sheet and roast for 45-50 minutes until completely tender.

Test doneness by piercing with a fork—they should slide in with no resistance. Let the beets cool slightly, then peel off the skins by gently rubbing them under cool running water. Once peeled, cut them into ½-inch cubes and set aside. The beets should be vibrant and still warm from the oven, preserving their natural sweetness for the salad.

2

Press and Cube the Tofu

Place the 0.5 lb firm tofu on a clean kitchen towel and wrap it tightly in another towel. Set a heavy object like a cast-iron skillet on top for 15 minutes to press out excess moisture. This step is crucial for achieving crisp edges when the tofu is cooked.

Unwrap the tofu and cut it into ½-inch cubes using a sharp chef's knife. Transfer the cubed tofu to a clean bowl and set aside. The pressed tofu will have a firmer texture that holds up better to cooking and adds satisfying bite to the salad.

3

Create the Dressing Components

In a small mixing bowl, whisk together the 0.25 cup tahini, 0.25 cup lemon juice, 1 tbsp maple syrup, 1 tsp Dijon mustard, 1 tbsp red wine vinegar, and 1 tsp sea salt. Gradually drizzle in the 0.5 cup extra-virgin olive oil while whisking continuously until the dressing is completely emulsified and smooth.

In a separate small bowl, finely mince the 3 cloves garlic and chop the 0.25 cup fresh thyme leaves. Set these aside for later use. The dressing should have a rich, creamy texture with a perfect balance of tangy, sweet, and nutty flavors that will bind all the salad components together.

4

Assemble and Toss the Salad

In a large mixing bowl, combine the 5 cups baby spinach, 1.5 cups drained cannellini beans, and 0.5 cup toasted walnuts. Gently toss everything together with your hands or a large spoon, being careful not to tear the spinach leaves. Add the cubed beets and tofu cubes, distributing them evenly throughout the greens.

Pour the prepared dressing over the salad and toss gently to coat all ingredients evenly. The salad should look vibrant with deep red beets, creamy beans, and crisp green spinach. Taste and adjust seasoning if needed—you might want to add a pinch more salt or a splash of lemon juice to enhance the flavors.

5

Cook and Finish the Tofu

Heat a large skillet over medium-high heat and add the cubed tofu in a single layer. Cook undisturbed for 3-4 minutes until golden brown on one side. Flip carefully and cook for another 3-4 minutes until evenly browned and crispy on all sides.

Remove the tofu from the skillet and immediately add it back to the salad bowl. The warm tofu will release its crispy edges and infuse the salad with its savory flavor. Let the salad sit for 5 minutes before serving to allow all the flavors to meld together perfectly. The combination of earthy beets, protein-rich beans, and crisp tofu creates a satisfying and nutritious dish.

👨‍🍳

Pro Tips For Making Beet And Bean Salad

  • ROAST BEETS UNTIL TENDER: I learned this the hard way—beets should give slightly when pierced with a fork, not bounce back like a trampoline. Wrap them in foil with a splash of water (about 1 tablespoon) and roast at 400°F (200°C) for 45-55 minutes. The water keeps them from drying out, and the foil traps moisture like a sauna.
  • DRAIN AND RINSE BEANS: Skip this, and your salad will taste like canned soup. Drain the cannellini beans and rinse them under cold water for 10 seconds—this removes excess starch and sodium that’ll make the dressing cling like glue. Pat them dry with a towel if you’re feeling fancy (I usually skip it, but the texture improves).
  • PEEL BEETS WHEN COOL: Hot beets are slippery nightmares. Let them cool for 10 minutes after roasting before peeling—it’s safer and way easier. Use a paring knife to slice off the skin in strips, then chop them into ½-inch cubes. No peeler needed, and you’ll save your fingers from angry burns.
  • DRESS SPINACH LAST: Tossing spinach with lemon juice too early wilts it into sad, limp piles. Keep the dressing (olive oil, lemon juice, salt) separate until the very end, then fold it in just before serving. The leaves stay crisp, and the salad holds together better when assembled fresh.

Common mistakes when making great beet and bean salad

Over-Roasting Beets

Beets are delicate when roasted—they can easily turn mushy if left in the oven too long. I’ve ruined more than a few batches by forgetting to check doneness at 45 minutes.

Use a fork to test: if it slides in smoothly, they’re done. Over-roasted beets lose their vibrant color and sweetness, which are essential for balancing the salad’s flavors. 🍠

Under-Dressing Ingredients

Tossing the salad too soon after adding dressing can make the spinach wilt and the beans soggy. Let the dressing sit for 5 minutes before mixing—this gives the tahini and lemon juice time to meld.

I once skipped this step and ended up with a sad, watery salad. Also, add dressing gradually to avoid over-saturating the greens.

Skipping Tofu Pressing

Unpressed tofu releases too much moisture, turning your salad into a mushy mess. Always press for 15 minutes with a heavy weight—like a cast-iron skillet—to remove excess water.

I learned this the hard way when my first batch of tofu turned into a sad, soggy pile. Pro tip: Use two clean towels for even pressure.

Using Stale Spinach

Baby spinach wilts quickly, especially when mixed with wet ingredients. Buy it fresh and store it in the fridge for no more than 3 days before using. I’ve had to toss entire batches because I forgot to check the expiration date.

For meal prep, add the spinach last or store it separately until ready to serve.

Ignoring Dressing Emulsification

If you don’t whisk the tahini and olive oil together gradually, the dressing will separate into greasy pools. Start with the tahini, lemon juice, and maple syrup, then slowly drizzle in the oil while whisking vigorously.

I once made the mistake of pouring everything in at once—it was a disaster. A hand mixer works wonders here if you’re in a hurry.

Overcrowding the Skillet

When cooking the tofu, resist the urge to pile it all in the skillet at once. Crowding steams the tofu instead of crisping it, ruining the texture. Cook in batches if needed, and give each cube space to develop a golden crust.

I’ve had to start over because I was impatient and ended up with limp, greasy tofu instead of crispy bites. 🔥

Nutrition facts

Servings 4
Amount Per Serving
Calories 380kcal
% Daily Value *
Total Fat 22g28%
Saturated Fat 3g15%
Cholesterol 0mg0%
Sodium 520mg23%
Total Carbohydrate 42g15%
Dietary Fiber 12g43%
Sugars 10g
Protein 18g36%
* Percent Daily Values are based on a 2,000 calorie diet. Your daily values may be higher or lower depending on your calorie needs.

Frequently asked questions

1

Can I use raw beets instead of roasted?

Raw beets work, but roasting enhances their natural sweetness and makes them easier to digest. If using raw, peel and thinly slice them, then soak in cold water for 10 minutes to soften slightly. The texture will be firmer, so pair with extra dressing to balance the bite.

2

What's the best bean substitute for cannellini?

Great options include chickpeas (for extra crunch) or black beans (for deeper flavor). Drain and rinse thoroughly, then warm them with a pinch of salt and olive oil. Black beans need 10 minutes of simmering to soften if using canned, while chickpeas hold their shape perfectly.

3

How do I make this salad nut-free?

Replace walnuts with ½ cup toasted pumpkin seeds or ¼ cup sunflower seeds for crunch. For extra protein, add ½ cup cooked quinoa or ½ cup roasted edamame. Both options work beautifully while keeping the dish nut-free and satisfying.

4

Can I prep this salad ahead of time?

Roast beets and cook beans/tofu up to 3 days ahead. Store components separately in airtight containers. When ready to serve, toss everything together and add fresh spinach last. The flavors meld beautifully overnight, making it perfect for meal prep.

5

What makes this salad vegan?

This recipe is naturally vegan because it uses plant-based proteins (beans and tofu) instead of animal products. The tahini-lemon dressing provides healthy fats, while beets and spinach contribute essential vitamins. Just ensure all ingredients—like olive oil and vinegar—are certified vegan if needed.

★★★★★4.5(4 reviews)
Categories Salads