Shrimp Cobb Salad



This Shrimp Cobb Salad comes together quickly and is perfect for a fresh, healthy lunch or dinner! Customize the toppings to your liking and top with a light vinaigrette.

*Originally published 5/2011. Updated 10/2025*

Hi friends!
Popping in to share this quick and easy Shrimp Cobb Salad for an easy lunch or dinner. Shrimp is one of my favorite quick-cooking proteins and cobb salads are perfect for packing in a ton of healthy ingredients. If you don’t like shrimp, try my Steak Cobb Salad.

If you’re on a salad kick and need more ideas, try:

Or try this Ultimate List of Salad Topping Ideas for some inspiration!


Why You’ll Love This Healthy Shrimp Cobb Salad

This shrimp cobb salad is easy to love for a lot of reasons:

  • Fully customizable. Feel free to swap out any toppings you don’t like or add your own.
  • Great for meal prep – All the components of this salad can be prepped ahead of time which makes it quick and easy to assemble at meal time.
  • Has protein and healthy fats – The shrimp is an easy quick-cooking protein and the avocado and salad dressing, especially homemade, both add healthy fats to help boost satiety.
  • It’s heart-healthy, packed with lean protein and veggies and healthy fats.

Shrimp Cobb Salad Ingredients

To make this salad, you’ll need:

  • Shrimp – Feel free to use any size you prefer
  • Bacon – I prefer to cook the bacon myself and chop it up but you could use bacon bits if you want
  • Hard boiled eggs – make your own or buy them pre-bought. Here’s how to make hard-boiled eggs in the instant pot.
  • Red onion – feel free to swap green, white, yellow onions etc for a milder flavor
  • Tomato – grape or cherry tomatoes halved or quartered work well
  • Avocado
  • Feta – I use crumbled feta. It does have a stronger flavor so feel free to swap with a different cheese if you prefer
  • Dressing – I like a lighter vinaigrette like the one I share below but you could use something creamy like ranch, etc if you want!

How To Cook Shrimp

You can choose to prepare the shrimp for this salad whatever way you prefer. A few ideas:

  • Sauteed – This is the method I typically use. Just heat some butter or oil in a skillet, add shrimp and seasonings and cook for 4-6 minutes, until shrimp are pink.
  • Grilled – If you have the grill fired up, thread the shrimp onto a few skewers, season and grill 2-3 minutes per side.
  • Baked – You can also bake them in the oven. Here’s a recipe for Oven-Baked Shrimp.

How To Make An Easy Shrimp Cobb Salad

To make this salad:

  • Cook the bacon, eggs and shrimp via your preferred method. To save time, you can grab pre-cooked shrimp and/or hard-boiled eggs.
  • Start with a bed of lettuce. Feel free to grab a bag of packaged salad greens to save time!
  • Add toppings. In a traditional cobb salad, ingredients are grouped into sections or rows on top of the lettuce but you can skip this step and combine everything mixed together on top.
  • Top with dressing – homemade or store-bought.

Shrimp Cobb Salad Dressing Options

The dressing options for this salad are endless. I typically use a maple mustard vinaigrette to keep it light but a lemon garlic dressing would also be great. If you want something a little more robust, try ranch or blue cheese to add some creaminess to the salad.


Cobb Salad Protein

The great thing about the cobb salad is that it pairs well with almost any protein. If you don’t like shrimp, try:

  • Steak – I’ve used leftover flank steak before!
  • Chicken – This is a great way to transform leftover grilled chicken.
  • Tofu – My Honey Garlic Air Fryer Tofu would work well on this salad. If you want to keep it vegetarian, you could swap the bacon for some beans
  • Salmon – If you don’t want shrimp but still want seafood, try adding my Air Fryer Salmon Bites.

Shrimp Cobb Salad Meal Prep & Storage

This salad is PERFECT for meal prep! Prep all of the components ahead of time and store separately until you’re ready to serve. Shrimp can be cooked and stored in a glass container in the fridge for up to 3 days. Same with bacon and hard-boiled eggs. They can be sliced/chopped ahead of time as well.

Save the avocado to slice right before serving so it doesn’t turn brown but the tomatoes and onions could be cut ahead of time and stored as well.

To prep your lettuce ahead of time, chop, wash and spin dry and store in a bag with a paper towel to absorb excess moisture and squeeze all the air out before sealing the bag.

If you choose to make homemade dressing, that can be prepped and stored in a mason jar in the fridge. Just give it a good shake before serving.

Shrimp Cobb Salad Tips and Tricks

A few tips and tricks:

  • Don’t overcook your shrimp! When shrimp take on a pinkish color and form a “C” shape, they’re done. If they curl up tight into an “O” shape, they are overcooked.
  • To keep your lettuce crisp, chop, wash and spin dry, then store in a bag. Add a paper towel to soak up the excess moisture and squeeze the air out before sealing the bag shut.
  • Vary the veggies – Salad is a great way to utilize veggies that are in season. Try nice ripe tomatoes in the summer. In the Fall, add some roasted squash!

Shrimp Cobb Salad Recipe

Here’s the recipe I use:

Print

Shrimp Cobb Salad

5 Stars 4 Stars 3 Stars 2 Stars 1 Star

No reviews

This Shrimp Cobb Salad comes together quickly and is perfect for a fresh, healthy lunch or dinner! Customize the toppings to your liking and top with a light vinaigrette. 

Ingredients

For the shrimp

  • 1 pound raw shrimp, peeled, devined and thawed
  • 2 Tbsp butter (or oil if you prefer)
  • 1 tsp garlic powder
  • 1 tsp paprika
  • 1 tsp salt

For the salad:

  • 46  hard boiled eggs, sliced
  • 1 medium avocado, diced
  • 8 strips bacon, cooked and chopped
  • 1 cup diced red onion
  • 1 pint cherry or grape tomatoes, halved
  • 1/3 cup crumbled feta
  • 8 cups mixed greens or leaf lettuce

Optional dressing:

  • 3 T oil (I use avocado oil)
  • 3 Tbsp red wine vinegar
  • 1 Tbsp dijon mustard
  • 1 Tbsp maple syrup


Instructions

  1. Melt butter or heat oil in a large pan. Add shrimp and seasonings and saute over medium heat for 4-6 minutes until shrimp are just pink and form a C shape.
  2. Place 2 cups of lettuce in each bowl. 
  3. Divide toppings evenly among 4 salads and add toppings in rows of shrimp, hard-boiled eggs, avocado, bacon, onion and tomatoes.
  4. Top with crumbled feta.
  5. Combine oil, vinegar, mustard and maple syrup in a jar. Seal and shake to combine. Taste and add salt and/or pepper if desired. You can also double the dressing recipe if you like more dressing!

window.trCommon={“minRating”:6,”ajaxurl”:”https:\/\/www.theleangreenbean.com\/wp-admin\/admin-ajax.php”,”ratingNonce”:””,”postId”:2145};
window.TastyRecipes = window.TastyRecipes || {};

window.TastyRecipes.smoothScroll = {
init() {
document.addEventListener( ‘click’, ( e ) => {
let anchor = e.target;
if ( anchor.tagName !== ‘A’ ) {
anchor = anchor.closest( ‘a.tasty-recipes-scrollto’ );
}

if ( ! anchor || ! anchor.classList.contains( ‘tasty-recipes-scrollto’ ) ) {
return;
}

const elementHref = anchor.getAttribute( ‘href’ );
if ( ! elementHref ) {
return;
}

e.preventDefault();
this.goToSelector( elementHref );
});
},
goToSelector( selector ) {
const element = document.querySelector( selector );
if ( ! element ) {
return;
}
element.scrollIntoView( { behavior: ‘smooth’ } );
}
};

document.addEventListener(
‘DOMContentLoaded’,
() => window.TastyRecipes.smoothScroll.init()
);

window.TastyRecipes = window.TastyRecipes || {};
window.TastyRecipes.cookMode = {
wakeLockApi: false,
wakeLock: false,
cookModeSelector: ‘.tasty-recipes-cook-mode’,
init() {
if (“wakeLock” in navigator && “request” in navigator.wakeLock) {
this.wakeLockApi = navigator.wakeLock;
}

const cookModes = document.querySelectorAll(this.cookModeSelector);

if (cookModes.length > 0) {
for (const cookMode of cookModes) {
if (this.wakeLockApi) {
cookMode.querySelector(‘input[type=”checkbox”]’).addEventListener(“change”, event => {
this.checkboxChange(event.target);
}, false);
} else {
cookMode.style.display = “none”;
}
}
}
},
checkboxChange(checkbox) {
if (checkbox.checked) {
this.lock();
} else {
this.unlock();
}
},
setCheckboxesState(state) {
const checkboxes = document.querySelectorAll(this.cookModeSelector + ‘ input[type=”checkbox”]’);
for (const checkbox of checkboxes) {
checkbox.checked = state;
}
},
async lock() {
try {
this.wakeLock = await this.wakeLockApi.request(“screen”);
this.wakeLock.addEventListener(“release”, () => {
this.wakeLock = false;
this.setCheckboxesState(false);
});
this.setCheckboxesState(true);
} catch (error) {
this.setCheckboxesState(false);
}
},
unlock() {
if (this.wakeLock) {
this.wakeLock.release();
this.wakeLock = false;
}
this.setCheckboxesState(false);
}
};

(function(callback) {
if (document.readyState !== “loading”) {
callback();
} else {
document.addEventListener(“DOMContentLoaded”, callback);
}
})(() => {
window.TastyRecipes.cookMode.init();
});

window.TastyRecipes = window.TastyRecipes || {};

window.TastyRecipes.staticTooltip = {
element: null,
tooltipElement: null,
deleting: false,
init( element ) {
if ( this.deleting ) {
return;
}
this.element = element;
this.buildElements();
},
destroy() {
if ( ! this.tooltipElement || this.deleting ) {
return;
}

this.deleting = true;
this.tooltipElement.classList.remove( ‘opened’ );

setTimeout( () => {
this.tooltipElement.remove();
this.deleting = false;
}, 500 );
},
buildElements() {
const tooltipElement = document.createElement( ‘div’ );
tooltipElement.classList.add( ‘tasty-recipes-static-tooltip’);
tooltipElement.setAttribute( ‘id’, ‘tasty-recipes-tooltip’ );

const currentTooltipElement = document.getElementById( ‘tasty-recipes-tooltip’ );
if ( currentTooltipElement ) {
document.body.replaceChild( tooltipElement, currentTooltipElement );
} else {
document.body.appendChild( tooltipElement );
}

this.tooltipElement = document.getElementById( ‘tasty-recipes-tooltip’ );
},
show() {
if ( ! this.tooltipElement ) {
return;
}

const tooltipTop = this.element.getBoundingClientRect().top
+ window.scrollY
– 10 // 10px offset.
– this.tooltipElement.getBoundingClientRect().height;
const tooltipLeft = this.element.getBoundingClientRect().left
– ( this.tooltipElement.getBoundingClientRect().width / 2 )
+ ( this.element.getBoundingClientRect().width / 2 ) – 1;
const posLeft = Math.max( 10, tooltipLeft );
this.maybeRemoveTail( posLeft !== tooltipLeft );

this.tooltipElement.setAttribute( ‘style’, ‘top:’ + tooltipTop + ‘px;left:’ + posLeft + ‘px;’ );
this.tooltipElement.classList.add( ‘opened’ );

},
maybeRemoveTail( removeTail ) {
if ( removeTail ) {
this.tooltipElement.classList.add( ‘tr-hide-tail’ );
} else {
this.tooltipElement.classList.remove( ‘tr-hide-tail’ );
}
},
changeMessage( message ) {
if ( ! this.tooltipElement ) {
return;
}
this.tooltipElement.innerHTML = message;
}
};

window.TastyRecipes.ajax = {
sendPostRequest( url, data, success, failure ) {
const xhr = new XMLHttpRequest();
xhr.open( ‘POST’, url, true );
xhr.send( this.preparePostData( data ) );

xhr.onreadystatechange = () => {
if ( 4 !== xhr.readyState ) {
return;
}
if ( xhr.status === 200 ) {
success( JSON.parse( xhr.responseText ) );
return;
}

failure( xhr );
};

xhr.onerror = () => {
failure( xhr );
};
},
preparePostData( data ) {
const formData = new FormData();

for ( const key in data ) {
formData.append( key, data[key] );
}
return formData;
},
};

window.TastyRecipes.ratings = {
defaultRating: 0,
currentRatingPercentage: 100,
savingRating: false,
init( minRating ) {
this.minRating = minRating;

this.formWatchRating();
this.closeTooltipWhenClickOutside();
this.addBodyClassBasedOnSelectedRating();
this.backwardCompFormRatingPosition();
},
formWatchRating() {
const ratings = document.querySelectorAll(‘.tasty-recipes-no-ratings-buttons [data-rating]’);
if ( ratings.length {
event.preventDefault();
this.defaultRating = event.target.closest( ‘.checked’ ).dataset.rating;
this.setCheckedStar( event.target );
this.maybeSendRating( this.defaultRating, event.target );
this.setRatingInForm( this.defaultRating );
} );
}
},
closeTooltipWhenClickOutside() {
window.addEventListener( ‘click’, e => {
// Bailout (don’t remove the tooltip) when the clicked element is a rating star, or it’s the tooltip itself.
if ( e.target.closest( ‘.tasty-recipes-rating’ ) || e.target.classList.contains( ‘tasty-recipes-static-tooltip’ ) ) {
return;
}

window.TastyRecipes.staticTooltip.destroy();
} );
},
setRatingInForm( rating ) {
const ratingInput = document.querySelector( ‘#respond .tasty-recipes-rating[value=”‘ + rating + ‘”]’ );
if ( ! ratingInput ) {
return;
}
ratingInput.click();
},
addBodyClassBasedOnSelectedRating() {
const ratingInputs = document.querySelectorAll( ‘input.tasty-recipes-rating’ );
if ( ! ratingInputs ) {
return;
}
for ( const ratingInput of ratingInputs ) {
ratingInput.addEventListener( ‘click’, currentEvent => {
const selectedRating = currentEvent.target.getAttribute( ‘value’ );
this.handleBodyClassByRating( selectedRating );
this.toggleCommentTextareaRequired( selectedRating );
} );
}
},
handleBodyClassByRating( rating ) {
if ( rating < this.minRating ) {
document.body.classList.remove( 'tasty-recipes-selected-minimum-rating' );
return;
}
document.body.classList.add( 'tasty-recipes-selected-minimum-rating' );
},
toggleCommentTextareaRequired( rating ) {
const commentTextarea = document.getElementById( 'comment' );
if ( ! commentTextarea ) {
return;
}

if ( rating {
window.TastyRecipes.staticTooltip.changeMessage( response.data.message );
window.TastyRecipes.staticTooltip.show();
this.updateAverageText( response.data, recipeCardElement );
this.maybeFillCommentForm( response.data );

// Hide the tooltip after 5 seconds.
setTimeout( () => {
this.maybeResetTooltip( recipeCardElement, response.data, rating );
}, 5000 );
},
() => {
this.resetTooltip( recipeCardElement );
}
);
},
updateAverageText( data, recipeCardElement ) {
if ( ! data.average ) {
return;
}
this.setRatingPercent( data );

if ( ! data.count ) {
return;
}

const quickLink = document.querySelector( ‘.tasty-recipes-rating-link’ );
if ( quickLink ) {
this.setTextInContainer( quickLink, data );
this.setPartialStar( quickLink );
}

const cardStars = recipeCardElement.querySelector( ‘.tasty-recipes-ratings-buttons’ );
cardStars.dataset.trDefaultRating = data.average;
this.setTextInContainer( recipeCardElement.querySelector( ‘.tasty-recipes-rating’ ), data );
},
setTextInContainer( container, data ) {
if ( ! container ) {
return;
}

if ( data.label ) {
const ratingLabelElement = container.querySelector( ‘.rating-label’ );
if ( ratingLabelElement ) {
ratingLabelElement.innerHTML = data.label;
}
return;
}

const averageElement = container.querySelector( ‘.average’ );
if ( averageElement ) {
averageElement.textContent = data.average;
}

const countElement = container.querySelector( ‘.count’ );
if ( countElement ) {
countElement.textContent = data.count;
}
},
setPartialStar( container ) {
const highestStar = container.querySelector( ‘[data-rating=”‘ + Math.ceil( this.defaultRating ) + ‘”]’ );
if ( highestStar ) {
highestStar.dataset.trClip = this.currentRatingPercentage;
}
},
setRatingPercent( data ) {
this.defaultRating = data.average.toFixed( 1 );
const parts = data.average.toFixed( 2 ).toString().split( ‘.’ );
this.currentRatingPercentage = parts[1] ? parts[1] : 100;
if ( this.currentRatingPercentage === ’00’ ) {
this.currentRatingPercentage = 100;
}
},
setCheckedStar( target ) {
const cardRatingContainer = target.closest( ‘.tasty-recipes-ratings-buttons’ );
const selectedRatingElement = cardRatingContainer.querySelector( ‘[data-tr-checked]’ );
if ( selectedRatingElement ) {
delete selectedRatingElement.dataset.trChecked;
}

const thisStar = target.closest( ‘.tasty-recipes-rating’ );
thisStar.dataset.trChecked = 1;
thisStar.querySelector( ‘[data-tr-clip]’ ).dataset.trClip = 100;
},
maybeFillCommentForm( data ) {
if ( ! data.comment || ! data.comment.content ) {
return;
}

const commentForm = document.querySelector( ‘#commentform’ );
if ( ! commentForm ) {
return;
}

const commentBox = commentForm.querySelector( ‘[name=comment]’ );
if ( ! commentBox || commentBox.value ) {
return;
}

// Add comment details for editing.
commentBox.innerHTML = data.comment.content;
if ( data.comment.name ) {
commentForm.querySelector( ‘[name=author]’ ).value = data.comment.name;
commentForm.querySelector( ‘[name=email]’ ).value = data.comment.email;
}
},
maybeResetTooltip( recipeCardElement, data, rating ) {
if ( this.savingRating === rating ) {
this.resetTooltip( recipeCardElement, data );
}
},
resetTooltip( recipeCardElement, data ) {
window.TastyRecipes.staticTooltip.destroy();
this.savingRating = false;

// Reset the default rating.
const cardRatingContainer = recipeCardElement.querySelector( ‘.tasty-recipes-ratings-buttons’ );
if ( cardRatingContainer ) {
this.defaultRating = ( data && data.average ) ? data.average.toFixed(1) : cardRatingContainer.dataset.trDefaultRating;
cardRatingContainer.dataset.trDefaultRating = this.defaultRating;

this.resetSelectedStar( cardRatingContainer, data );
}
},
resetSelectedStar( cardRatingContainer ) {
const selectedRatingElement = cardRatingContainer.querySelector( ‘[data-rating=”‘ + Math.ceil( this.defaultRating ) + ‘”]’ );
if ( selectedRatingElement ) {
selectedRatingElement.querySelector( ‘[data-tr-clip]’ ).dataset.trClip = this.currentRatingPercentage;
selectedRatingElement.parentNode.dataset.trChecked = 1;
}

const previousSelectedElement= cardRatingContainer.querySelector( ‘[data-tr-checked]’ );
if ( previousSelectedElement ) {
const currentSelectedRating = previousSelectedElement.querySelector(‘[data-rating]’);
if ( currentSelectedRating !== selectedRatingElement ) {
delete previousSelectedElement.dataset.trChecked;
}
}
},
backwardCompFormRatingPosition() {
const ratingsButtons = document.querySelector( ‘#respond .tasty-recipes-ratings-buttons, #tasty-recipes-comment-rating .tasty-recipes-ratings-buttons’ );
if ( ! ratingsButtons ) {
return;
}
const ratingsButtonsStyles = window.getComputedStyle(ratingsButtons);
if ( ! ratingsButtonsStyles.display.includes( ‘flex’ ) ) {
ratingsButtons.style.direction = ‘rtl’;
}

if ( typeof tastyRecipesRating !== ‘undefined’ ) {
// Select the rating that was previously selected in admin.
ratingsButtons.querySelector( ‘.tasty-recipes-rating[value=”‘ + tastyRecipesRating + ‘”]’ ).checked = true;
}

const ratingSpans = ratingsButtons.querySelectorAll( ‘.tasty-recipes-rating’ );
for (const ratingSpan of ratingSpans) {
ratingSpan.addEventListener( ‘click’, event => {
if ( ratingSpan === event.target ) {
return;
}
ratingSpan.previousElementSibling.click();
} );
}
}
};

(function(callback) {
if (document.readyState !== “loading”) {
callback();
} else {
window.addEventListener( ‘load’, callback );
}
})(() => {
window.TastyRecipes.ratings.init( window.trCommon ? window.trCommon.minRating : 4 );
});


Shrimp Cobb Salad FAQs

What is the best dressing for shrimp cobb salad

If you’re looking for a lighter option, most vinaigrette dressings would be great. Try honey mustard or balsamic vinaigrette. If you want something creamier, ranch or blue cheese would add great flavor to the salad!

Can I make shrimp cobb salad ahead of time?

Yes! All the components of this salad can be prepped ahead of time, making it quick and easy to assemble when you’re ready to eat.

How do I grill shrimp for cobb salad?

The easiest way to grill shrimp is to thread them onto skewers, season and grill 2-3 minutes per side.

Is shrimp cobb salad healthy?

Yes. This salad is packed with lean protein, vegetables and healthy fats making it a great balanced meal option for lunch or dinner.

Can I use frozen shrimp in cobb salad?

Shrimp cooks best from a thawed state. Feel free to use frozen shrimp, just thaw before cooking either under cold running water or in refrigerator overnight.

How long does shrimp cobb salad last in the fridge?

You can store the components separately for 3-4 days. Once you combine them into a salad, it’s best to eat within a day to avoid things getting brown or soggy.

What toppings go best with shrimp cobb salad?

Traditional cobb salad toppings include, bacon, hard boiled eggs, avocado, onion, tomato and crumbled cheese like blue cheese or feta. You can make it seasonal by adding things like roasted squash, corn, apples or berries depending on the season.

Can I make shrimp cobb salad without eggs?

Yes, feel free to omit the hard boiled eggs from this recipe.

What’s the difference between shrimp cobb salad and a regular cobb salad?

The biggest difference is the protein. The most traditional protein for a cobb salad is chicken breast or turkey, but this recipe uses shrimp and almost any protein source would work well on this salad.

Can I meal prep shrimp cobb salad for lunches?

Yes! This salad is perfect for meal prep because all the components can be cooked and prepped ahead of time!


Enjoy!
–Lindsay–





Source link