Dense Bean Salad

Home/Dense Bean Salad
Recipe Library 06 · SALADS, SIDES & BOWLS

Dense Bean Salad: The High-Protein Meal Prep Guide

The viral no-cook salad that took over TikTok — the original Mediterranean recipe, eight variations, and the nutrition data nobody else publishes.

15–20g
Protein per serving
10–14g
Dietary fibre
GI 10–40
vs rice at 72
0 min
Cooking required

In 2023, creator Violet Witchel posted a short video of herself mixing several tins of beans with fresh vegetables and an olive oil dressing. Within weeks, “dense bean salad” had become one of the most-searched recipes on TikTok and then on Google — and unlike most viral food, it fully deserved it.

Dense bean salad is high in protein, high in fibre, costs very little, requires no cooking whatsoever, and holds in the fridge for the best part of a week. It is arguably the single most practical healthy recipe format to emerge in years, and it works precisely because it is a template rather than a fixed recipe.

It sits alongside the Jennifer Aniston salad — bulgur, chickpeas, cucumber, parsley and feta — which brought the same basic idea into mainstream food culture. Both share the same DNA: a legume base, sharp fresh vegetables, and an acidic dressing that improves as it sits.

The nutrition data

Why it keeps you full for hours

Beans produce a slow, flat blood sugar response. That is exactly why this salad keeps you full through the afternoon where a rice-based lunch does not. Here is the glycemic index side by side.

15–20g
protein per 200g serving
10–14g
fibre — up to 56% of your day
Glycemic index
Beans10–40
White rice72
White bread75
Potatoes80
Lower is slower. Values are typical ranges; your exact response varies with portion size and what the beans are eaten with.
The Method

Four small things that make it taste right

Serves 6 and meal preps for five days. The full ingredient list and method are in the guide below.

1

Rinse, then pat dry

Residual water is the most common reason a bean salad tastes flat — it dilutes the dressing on contact.
2

Soak the red onion

Ten minutes in cold water takes the harsh edge off before it goes in.
3

Dress at room temperature

Cold beans absorb far less. Whisk the dressing until it emulsifies, then toss.
4

Rest 30 minutes

Fold the feta and parsley through last so they stay intact, then refrigerate before serving.
Make It Yours

Eight variations, seven beans

Eight Variations Worth Making

Variations

Southwest

Lime for the lemon, plus corn, jalapeño, avocado, cumin, chilli powder and coriander. Base of black, kidney and pinto beans. Add the avocado only on the day you eat it.

✓ Tested
Variations

High protein Mediterranean

Fold through a tin of tuna or shredded rotisserie chicken and blend a few tablespoons of Greek yogurt into the dressing. Takes it to 35–45g of protein per serving.

✓ Tested
Variations

Chinese chicken

Shredded chicken, mandarin segments, sesame oil and rice vinegar dressing, spring onion and toasted sesame seeds.

✓ Tested
Variations

Spicy peanut miso

Miso paste, peanut butter, rice vinegar, ginger and chilli whisked into a dressing, with edamame, cucumber and red cabbage. The most flavour-forward version here.

✓ Tested
Variations

Caesar

Caesar dressing over chickpeas and cannellini with parmesan, croutons and chopped romaine. Surprisingly good, and a useful bridge for anyone unconvinced by bean salad.

✓ Tested
Variations

Italian grinder

Salami, provolone and pepperoncini with Italian dressing — the viral sandwich in bowl form.

✓ Tested
Variations

BBQ chicken

Shredded barbecue chicken, black beans, corn, red onion, cheddar and a ranch-barbecue dressing. The summer cookout version.

✓ Tested
Variations

Greek grain bowl

Served over warm bulgur or farro with extra feta and a heavy hand of dill. This is the version closest to the Jennifer Aniston salad, and the one that makes it a complete protein.

✓ Tested

Choosing Your Beans

Three varieties is the sweet spot — enough contrast in texture and colour to keep every forkful interesting, without it becoming muddled.

Tinned beans are entirely fine here and are what the original recipe uses. If you cook from dried, slightly undercook them — they will continue softening in the acidic dressing over the following days.

The beans15g protein per 100g

Chickpeas

Firm and nutty. The structural anchor: they still hold their shape on day five when softer beans have started to break down.

✓ Tested
The beans17g per 100g

Cannellini

Creamy and mild, and the best of the group at absorbing dressing.

✓ Tested
The beans15g per 100g

Black beans

Earthy, slightly sweet, and essential to the Southwest version.

✓ Tested
The beans7.5g per 100g

Navy beans

Small and firm with a neutral flavour — useful as a filler that does not compete.

✓ Tested
The beans

Kidney beans

High in iron, substantial, and the best choice when the salad is the entire meal.

✓ Tested
The beans11g per 100g

Edamame

Bright green and firm; the base for any Asian-leaning variation.

✓ Tested
The beans9g protein · 8g fibre

French lentils

9g protein and 8g fibre per 100g. They hold their shape better than any other lentil and add real earthy depth.

✓ Tested
Storage

How long it keeps

Dressed

4–5 days refrigerated. Genuinely better on days two and three.

Undressed, dressing stored separately

Up to 7 days.

Add fresh each day

Cucumber, avocado and delicate herbs, which soften once dressed.

Never freeze

Beans turn mealy and collapse on thawing. This is a refrigerator dish only.

Containers

Wide-mouth glass jars for single portions. Avoid plastic — olive oil and turmeric-adjacent spices stain it permanently.

The Full Guide

The original recipe & the science

What Makes It a “Dense” Bean Salad

The name refers to the ratio. This is a salad that is dense with beans — multiple varieties, more beans by volume than anything else — rather than a leafy salad with a spoonful of chickpeas scattered on top. That distinction changes everything about how it behaves.

  • Built for meal prep. Unlike leafy salads, it does not wilt. It genuinely improves on days two and three as the beans absorb the dressing.
  • Properly protein-dense. 15–20g per serving from the beans alone, before you add anything.
  • No cooking at all. Tinned beans, raw vegetables, a whisked dressing. Assembly only.
  • A template, not a recipe. The bean base stays constant; the dressing and add-ins change entirely, which is why people make it every week without tiring of it.

Why Beans Outperform Almost Everything Else

  • Protein: 15–20g per 200g serving. Cannellini beans lead at 17g per 100g cooked, with chickpeas and black beans at 15g.
  • Dietary fibre: 10–14g per serving — between 40% and 56% of the recommended daily intake in a single meal. High-fibre diets are consistently associated with lower risk of type 2 diabetes, cardiovascular disease and colorectal cancer.
  • ANDI score: beans rate 70–100 on the Aggregate Nutrient Density Index, placing them among the most nutrient-dense foods measured — a metric almost never mentioned in bean salad recipes.
  • Glycemic index of 10–40. For context: white rice sits around 72, white bread 75, and potatoes 80. Beans produce a slow, flat blood sugar response, which is exactly why this salad keeps you full for hours where a rice-based lunch does not.
  • Anti-inflammatory compounds. Extra virgin olive oil contains oleocanthal, kalamata olives contribute polyphenols, and fresh herbs add flavonoids. The dressing is doing nutritional work, not just adding flavour.
  • Complete protein when combined. Beans are rich in lysine but low in methionine; grains are the reverse. Serving this over quinoa, farro or bulgur produces all nine essential amino acids — which matters for anyone eating plant-based and training.
  • Calories: roughly 280–350 kcal per 200g dressed serving. High nutrition density at moderate caloric density — the combination that makes something genuinely useful for weight management.

The Mediterranean Dense Bean Salad Recipe

Serves 6. Meal preps for five days.

The Salad

  • 1 tin (400g) chickpeas, drained and rinsed
  • 1 tin (400g) cannellini beans, drained and rinsed
  • 1 tin (400g) black beans, drained and rinsed
  • 100g kalamata olives, halved
  • 200g cherry tomatoes, halved
  • 1 cucumber, diced small
  • ½ red onion, finely diced
  • 100g feta, crumbled — dairy or vegan
  • 30g flat-leaf parsley, chopped

The Dressing

  • 4 tbsp extra virgin olive oil
  • 3 tbsp fresh lemon juice, roughly 1½ lemons
  • 1 tbsp red wine vinegar
  • 1 tsp dijon mustard
  • 1 tsp dried oregano, plus salt and black pepper

Method

Drain and rinse the beans thoroughly, then pat them dry — residual water is the most common reason a bean salad tastes flat, because it dilutes the dressing on contact. Combine the beans and vegetables in a large bowl. Whisk the dressing separately until it emulsifies. Pour over and toss. Fold the feta and parsley through last so they stay intact.

Refrigerate at least 30 minutes before serving. Two small techniques make a disproportionate difference: soak the diced red onion in cold water for ten minutes first to take the harsh edge off, and dress the salad while the beans are at room temperature, since cold beans absorb far less.

Storage, Serving & Frequently Asked Questions

What to Serve With It

Warm pita and hummus for the classic Mediterranean plate. Grilled chicken or salmon on top to turn it into a full dinner. Spooned over quinoa or farro as a grain bowl. Alongside slow cooker chicken for a weeknight meal that needs almost no active work. Or, for the Southwest version, served with tortilla chips as a dip — which is how most of it disappears at gatherings.

Quick Answers

Frequently asked questions

Why is it called dense bean salad?

Because the ratio is deliberately weighted towards beans rather than leaves or filler. Violet Witchel used the phrase in the original 2023 TikTok and it became the standard search term almost immediately.

Is it actually good for weight loss?

It has the right properties for it: high fibre keeps you full for hours, the low glycemic index avoids the crash that drives afternoon snacking, and the protein rises to 35g+ when you add tuna or chicken. It is filling out of proportion to its calorie count, which is the trait that matters most.

Do I have to rinse tinned beans?

Yes. Rinsing removes most of the starchy liquid, which otherwise makes the salad cloudy and slightly slimy, and it cuts the sodium significantly. Rinse until the water runs clear, then dry properly.

Can I make it lower in fat?

Reduce the olive oil to two tablespoons and make up the volume with extra lemon juice and a spoon of the aquafaba from the chickpea tin, which emulsifies well. You lose some of the olive oil’s benefits, so it is a trade rather than a straight improvement.