Texas caviar is a recent and zesty mixture of beans and veggies. It’s excellent for events, picnics, and summer season cookouts, bringing brilliant taste to each gathering!

Once I’m throwing a celebration, right here’s one appetizer I all the time look to: Texas caviar! I like that this recipe is each a enjoyable snack and an truly nutritious meals. The black-eyed peas, crunchy veggies, and zingy French dressing make a dip filled with plant-based protein and fiber that additionally tastes completely scrumptious!
This dip was invented in Texas within the 1940’s (it’s additionally known as Cowboy caviar), after which unfold everywhere in the US. My spin on this get together dip all the time has mates gathered across the bowl at our home and for good purpose: it’s simply that tasty!
Why You’ll Love This Recipe
- Prepared in 15 to twenty minutes: It simply depends upon how lengthy it takes you to cut veggies!
- Complete crowd-pleaser: Everybody gathers across the bowl once we serve it
- Naturally plant-based and gluten-free: Many get together snacks function cheese or bread so I like that this one is so recent and colourful!
- Make-ahead pleasant: It truly tastes higher after marinating in a single day
5-Star Reader Overview




“Cherished the Texas Caviar
Since I first tried the recipe, I’ve made it one other 4 occasions and shared it with mates. My husband is an enormous fan of the flavors. Thanks” –Yvonne C.

Substances Wanted
Similar to a great potato salad, everybody has their very own method to make components in Texas caviar! The frequent denominator: black eyed peas are a should. From there, there are all types of variations on the greens and dressing. Listed below are the important recent components you want:
- Black-eyed peas: The star ingredient! You need to use canned black-eyed peas for comfort or cook dinner dried black eyed peas from scratch
- Black beans: Provides protein, texture, and a colour distinction (some folks use just one kind of bean, however I like the mix)
- Candy corn: Contemporary corn, frozen corn, or canned corn all work, however canned is best.
- Purple bell pepper: Provides crunch and sweetness (inexperienced bell pepper works too, although purple is sweeter)
- Cherry tomatoes: I want these to roma tomatoes as a result of they’re persistently flavorful year-round
- Purple onion: Provides sharp, recent chunk (you may as well use inexperienced onions for a milder taste)
- Jalapeño pepper: Seed it to manage the warmth degree, or omit totally for a gentle model
- Contemporary cilantro: That is in fact important for that genuine Tex-Mex taste
For the Cowboy caviar dressing, a standard method to make it’s to make use of store-bought Italian dressing. Nevertheless it’s a lot tastier with home made! The dressing is straightforward to whip up utilizing just some components: lime juice, apple cider vinegar, sugar, garlic powder, cumin, oregano and olive oil

Do you know? Black eyed peas are literally beans; they’re a part of the legume household with black beans and chickpeas. Whereas they’re usually eaten within the American South, they’re loved everywhere in the world. Attempt them in my black eyed pea salad or my straightforward black eyed peas.
Ideas for Making Texas Caviar
Cube greens uniformly: Taking an additional minute to chop your bell pepper, tomatoes, and jalapeño into similar-sized items (in regards to the measurement of the corn kernels) is price it.
Let it marinate: You’ll be able to serve this instantly, however I do advocate half-hour of refrigeration time. The flavors meld and the veggies launch their juices into the dressing.
Toss gently: When you add the dressing, fold every part along with a big spoon slightly than stirring vigorously. This avoids mushing up the beans and tomatoes.
Style and modify: Earlier than serving, style and add extra lime juice for brightness, a pinch of salt if wanted, or an additional drizzle of olive oil if it appears dry.
Management the warmth: The jalapeño seeds and membranes comprise a lot of the warmth. Take away them for delicate or go away some in for medium warmth.
Artistic Methods to Serve It
There are many methods to serve Texas caviar or Cowboy caviar: the preferred is with tortilla chips! Listed below are a couple of of my favourite concepts to get your wheels turning:
- Chips: It’s implausible with chips (and even home made tortilla chips). Plantain chips are one other good choice.
- Fish: Serve it over baked or grilled fish like baked salmon or grilled tilapia.
- Shrimp: Function a facet with grilled shrimp, sauteed shrimp, or garlic shrimp.
- Burgers: It’s a protein-packed facet for veggie burgers like portobello burgers or black bean burgers.
- Tacos or fajitas: Serve it with crispy avocado tacos or alongside vegetarian fajitas or shrimp fajitas.
- Avocado toast: Pile this on prime of mashed avocado on complete grain toast for a satisfying lunch that’s full of fiber and plant-based protein.

Storing Leftovers
Retailer Texas caviar in an hermetic container within the fridge for as much as 3 days. I truly want it after it’s had time to sit back: the flavour deepens after marinading.
Earlier than serving, give every part a great stir for the reason that dressing tends to settle on the backside. Style and if needed, freshen it up with a squeeze of lime juice and a small drizzle of olive oil.
A Style of Texas
When you’re like us, you may surprise: how did this dip get its identify? (We love a great origin story.) Whereas many individuals name it Cowboy caviar, it’s a nickname for Texas caviar. Seems, the colourful dip was invented in Texas in 1940 by a girl named Helen Corbitt. She first served it on New 12 months’s Eve at a rustic membership, presumably utilizing black eyed peas as a result of they’re often known as fortunate New 12 months’s Eve meals.
It caught on and when she later served it at a Texas lodge, it was dubbed “Texas caviar” due to it’s similarity to the look of actual caviar, a elaborate appetizer made with fish roe. The identify caught and it’s been used ever since!
Dietary Notes
This Texas caviar recipe is vegetarian, vegan, plant-based, dairy-free, and gluten-free.
Ceaselessly Requested Questions
In 2020, a viral TikTok video sparked what turned often known as the “Cowboy Caviar controversy.” A creator shared this bean salad recipe calling it “Cowboy Caviar,” and a few viewers identified that it was truly only a bean salad or salsa, not a brand new invention. Texas caviar has been a beloved Southern recipe since 1940, lengthy earlier than social media. The controversy truly helped extra folks uncover this scrumptious recipe!
Sure! This cowboy caviar dip is genuinely nutritious. The black beans and black-eyed peas have plant-based protein and fiber, which assist preserve you full. The recent veggies contribute vitamin A, vitamin C, and different antioxidants. The olive oil within the dressing presents heart-healthy fat. It’s naturally low in saturated fats and accommodates no ldl cholesterol.
Completely! You’ll be able to put together it as much as 1 day prematurely and retailer it lined within the fridge: it additionally lasts 3 to 4 days complete.
Texas Caviar (Cowboy Caviar)
This Texas caviar (Cowboy caviar) can have everybody crowded across the bowl! It’s full of massive, zesty taste and ideal for events and cookouts.
- Prep Time: quarter-hour
- Prepare dinner Time: 0 minutes
- Complete Time: quarter-hour
- Yield: 8
- Class: Appetizer
- Methodology: Uncooked
- Delicacies: Tex Mex
- Food regimen: Vegan
Substances
For the greens
- 2 15-ounce cans black eyed peas (or 3 cups cooked)
- 15-ounce can black beans (or 1 ½ cups cooked)
- 1 15-ounce can corn (or 1 ½ cups frozen and thawed)
- 1 purple bell pepper
- 1 cup cherry tomatoes
- 3 inexperienced onions
- 1 medium jalapeno, seeded (non-obligatory)
- ½ cup chopped cilantro
- 2 teaspoons kosher salt
For the dressing
- 2 tablespoons lime juice
- 4 tablespoons apple cider vinegar
- 2 tablespoons sugar
- ½ teaspoon garlic powder
- ½ teaspoon cumin
- 1 teaspoon oregano
- 4 tablespoons olive oil
Directions
- Drain and rinse the beans and corn.
- Cube the bell pepper. Chop the cherry tomatoes. Thinly slice the inexperienced onions. Seed and cube the jalapeno pepper. Chop the cilantro.
- Add all of the greens and beans to a bowl. Combine with the kosher salt.
- In a medium bowl, whisk collectively the vinegar, sugar, garlic powder, and cumin. Regularly whisk within the olive oil. Pour the dressing over the greens and blend to mix.
- Eat instantly, or refrigerate till serving (it tastes even higher after permitting to marinade half-hour or longer). Serve with chips for dipping. Shops refrigerated for as much as 3 to 4 days.
Notes
Beans: You’ll be able to cook dinner dried black-eyed peas from scratch in case you want. Go to my Black Eyed Peas recipe.
Warmth degree: Take away all jalapeño seeds and ribs for delicate warmth or go away some in for medium spice.
Storage: Retains refrigerated in an hermetic container for 3 to 4 days. Taste intensifies over time.
Variations: Add chili powder or chipotle for smokiness or add diced avocado simply earlier than serving.
(operate(){
window.addEventListener( ‘message’, operate( occasion ){
if ( ( ‘https://nutrifox.com’ !== occasion.origin && ‘https://nutrifox.take a look at’ !== occasion.origin ) ||
typeof occasion.information !== ‘string’ ) {
return;
}
var payload = JSON.parse( occasion.information );
swap ( payload.occasion ) {
case ‘setHeight’:
var iframe = doc.getElementById( ‘nutrifox-label-‘ + payload.recipeId );
iframe.model.peak = payload.peak + ‘px’;
break;
}
} );
}());
window.trCommon={“minRating”:6,”ajaxurl”:”https://www.acouplecooks.com/wp-admin/admin-ajax.php”,”ratingNonce”:””,”postId”:71578};
window.TastyRecipes = window.TastyRecipes || {};
window.TastyRecipes.smoothScroll = {
init() {
doc.addEventListener( ‘click on’, ( e ) => {
let anchor = e.goal;
if ( anchor.tagName !== ‘A’ ) {
anchor = anchor.closest( ‘a.tasty-recipes-scrollto’ );
}
if ( ! anchor || ! anchor.classList.accommodates( ‘tasty-recipes-scrollto’ ) ) {
return;
}
const elementHref = anchor.getAttribute( ‘href’ );
if ( ! elementHref ) {
return;
}
e.preventDefault();
this.goToSelector( elementHref );
});
},
goToSelector( selector ) {
const factor = doc.querySelector( selector );
if ( ! factor ) {
return;
}
factor.scrollIntoView( { conduct: ‘easy’ } );
}
};
doc.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 = doc.querySelectorAll(this.cookModeSelector);
if (cookModes.size > 0) {
for (const cookMode of cookModes) {
if (this.wakeLockApi) {
cookMode.querySelector(‘enter[type=”checkbox”]’).addEventListener(“change”, occasion => {
this.checkboxChange(occasion.goal);
}, false);
} else {
cookMode.model.show = “none”;
}
}
}
},
checkboxChange(checkbox) {
if (checkbox.checked) {
this.lock();
} else {
this.unlock();
}
},
setCheckboxesState(state) {
const checkboxes = doc.querySelectorAll(this.cookModeSelector + ‘ enter[type=”checkbox”]’);
for (const checkbox of checkboxes) {
checkbox.checked = state;
}
},
async lock() {
attempt {
this.wakeLock = await this.wakeLockApi.request(“display”);
this.wakeLock.addEventListener(“launch”, () => {
this.wakeLock = false;
this.setCheckboxesState(false);
});
this.setCheckboxesState(true);
} catch (error) {
this.setCheckboxesState(false);
}
},
unlock() {
if (this.wakeLock) {
this.wakeLock.launch();
this.wakeLock = false;
}
this.setCheckboxesState(false);
}
};
(operate(callback) {
if (doc.readyState !== “loading”) {
callback();
} else {
doc.addEventListener(“DOMContentLoaded”, callback);
}
})(() => {
window.TastyRecipes.cookMode.init();
});
window.TastyRecipes = window.TastyRecipes || {};
window.TastyRecipes.staticTooltip = {
factor: null,
tooltipElement: null,
deleting: false,
init( factor ) {
if ( this.deleting ) {
return;
}
this.factor = factor;
this.buildElements();
},
destroy() {
if ( ! this.tooltipElement || this.deleting ) {
return;
}
this.deleting = true;
this.tooltipElement.classList.take away( ‘opened’ );
setTimeout( () => {
this.tooltipElement.take away();
this.deleting = false;
}, 500 );
},
buildElements() {
const tooltipElement = doc.createElement( ‘div’ );
tooltipElement.classList.add( ‘tasty-recipes-static-tooltip’);
tooltipElement.setAttribute( ‘id’, ‘tasty-recipes-tooltip’ );
const currentTooltipElement = doc.getElementById( ‘tasty-recipes-tooltip’ );
if ( currentTooltipElement ) {
doc.physique.replaceChild( tooltipElement, currentTooltipElement );
} else {
doc.physique.appendChild( tooltipElement );
}
this.tooltipElement = doc.getElementById( ‘tasty-recipes-tooltip’ );
},
present() {
if ( ! this.tooltipElement ) {
return;
}
const tooltipTop = this.factor.getBoundingClientRect().prime
+ window.scrollY
– 10 // 10px offset.
– this.tooltipElement.getBoundingClientRect().peak;
const tooltipLeft = this.factor.getBoundingClientRect().left
– ( this.tooltipElement.getBoundingClientRect().width / 2 )
+ ( this.factor.getBoundingClientRect().width / 2 ) – 1;
const posLeft = Math.max( 10, tooltipLeft );
this.maybeRemoveTail( posLeft !== tooltipLeft );
this.tooltipElement.setAttribute( ‘model’, ‘prime:’ + 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.take away( ‘tr-hide-tail’ );
}
},
changeMessage( message ) {
if ( ! this.tooltipElement ) {
return;
}
this.tooltipElement.innerHTML = message;
}
};
window.TastyRecipes.ajax = {
sendPostRequest( url, information, success, failure ) {
const xhr = new XMLHttpRequest();
xhr.open( ‘POST’, url, true );
xhr.ship( this.preparePostData( information ) );
xhr.onreadystatechange = () => {
if ( 4 !== xhr.readyState ) {
return;
}
if ( xhr.standing === 200 ) {
success( JSON.parse( xhr.responseText ) );
return;
}
failure( xhr );
};
xhr.onerror = () => {
failure( xhr );
};
},
preparePostData( information ) {
const formData = new FormData();
for ( const key in information ) {
formData.append( key, information[key] );
}
return formData;
},
};
window.TastyRecipes.rankings = {
defaultRating: 0,
currentRatingPercentage: 100,
savingRating: false,
init( minRating ) {
this.minRating = minRating;
this.formWatchRating();
this.closeTooltipWhenClickOutside();
this.addBodyClassBasedOnSelectedRating();
this.backwardCompFormRatingPosition();
},
formWatchRating() {
const rankings = doc.querySelectorAll(‘.tasty-recipes-no-ratings-buttons [data-rating]’);
if ( rankings.size {
occasion.preventDefault();
this.defaultRating = occasion.goal.closest( ‘.checked’ ).dataset.score;
this.setCheckedStar( occasion.goal );
this.maybeSendRating( this.defaultRating, occasion.goal );
this.setRatingInForm( this.defaultRating );
} );
}
},
closeTooltipWhenClickOutside() {
window.addEventListener( ‘click on’, e => {
// Bailout (do not take away the tooltip) when the clicked factor is a score star, or it is the tooltip itself.
if ( e.goal.closest( ‘.tasty-recipes-rating’ ) || e.goal.classList.accommodates( ‘tasty-recipes-static-tooltip’ ) ) {
return;
}
window.TastyRecipes.staticTooltip.destroy();
} );
},
setRatingInForm( score ) {
const ratingInput = doc.querySelector( ‘#reply .tasty-recipes-rating[value=”‘ + rating + ‘”]’ );
if ( ! ratingInput ) {
return;
}
ratingInput.click on();
},
addBodyClassBasedOnSelectedRating() {
const ratingInputs = doc.querySelectorAll( ‘enter.tasty-recipes-rating’ );
if ( ! ratingInputs ) {
return;
}
for ( const ratingInput of ratingInputs ) {
ratingInput.addEventListener( ‘click on’, currentEvent => {
const selectedRating = currentEvent.goal.getAttribute( ‘worth’ );
this.handleBodyClassByRating( selectedRating );
this.toggleCommentTextareaRequired( selectedRating );
} );
}
},
handleBodyClassByRating( score ) {
if ( score < this.minRating ) {
doc.physique.classList.take away( 'tasty-recipes-selected-minimum-rating' );
return;
}
doc.physique.classList.add( 'tasty-recipes-selected-minimum-rating' );
},
toggleCommentTextareaRequired( score ) {
const commentTextarea = doc.getElementById( 'remark' );
if ( ! commentTextarea ) {
return;
}
if ( score {
window.TastyRecipes.staticTooltip.changeMessage( response.information.message );
window.TastyRecipes.staticTooltip.present();
this.updateAverageText( response.information, recipeCardElement );
this.maybeFillCommentForm( response.information );
// Conceal the tooltip after 5 seconds.
setTimeout( () => {
this.maybeResetTooltip( recipeCardElement, response.information, score );
}, 5000 );
},
() => {
this.resetTooltip( recipeCardElement );
}
);
},
updateAverageText( information, recipeCardElement ) {
if ( ! information.common ) {
return;
}
this.setRatingPercent( information );
if ( ! information.depend ) {
return;
}
const quickLink = doc.querySelector( ‘.tasty-recipes-rating-link’ );
if ( quickLink ) {
this.setTextInContainer( quickLink, information );
this.setPartialStar( quickLink );
}
const cardStars = recipeCardElement.querySelector( ‘.tasty-recipes-ratings-buttons’ );
cardStars.dataset.trDefaultRating = information.common;
this.setTextInContainer( recipeCardElement.querySelector( ‘.tasty-recipes-rating’ ), information );
},
setTextInContainer( container, information ) {
if ( ! container ) {
return;
}
if ( information.label ) {
const ratingLabelElement = container.querySelector( ‘.rating-label’ );
if ( ratingLabelElement ) {
ratingLabelElement.innerHTML = information.label;
}
return;
}
const averageElement = container.querySelector( ‘.common’ );
if ( averageElement ) {
averageElement.textContent = information.common;
}
const countElement = container.querySelector( ‘.depend’ );
if ( countElement ) {
countElement.textContent = information.depend;
}
},
setPartialStar( container ) {
const highestStar = container.querySelector( ‘[data-rating=”‘ + Math.ceil( this.defaultRating ) + ‘”]’ );
if ( highestStar ) {
highestStar.dataset.trClip = this.currentRatingPercentage;
}
},
setRatingPercent( information ) {
this.defaultRating = information.common.toFixed( 1 );
const elements = information.common.toFixed( 2 ).toString().cut up( ‘.’ );
this.currentRatingPercentage = elements[1] ? elements[1] : 100;
if ( this.currentRatingPercentage === ’00’ ) {
this.currentRatingPercentage = 100;
}
},
setCheckedStar( goal ) {
const cardRatingContainer = goal.closest( ‘.tasty-recipes-ratings-buttons’ );
const selectedRatingElement = cardRatingContainer.querySelector( ‘[data-tr-checked]’ );
if ( selectedRatingElement ) {
delete selectedRatingElement.dataset.trChecked;
}
const thisStar = goal.closest( ‘.tasty-recipes-rating’ );
thisStar.dataset.trChecked = 1;
thisStar.querySelector( ‘[data-tr-clip]’ ).dataset.trClip = 100;
},
maybeFillCommentForm( information ) {
if ( ! information.remark || ! information.remark.content material ) {
return;
}
const commentForm = doc.querySelector( ‘#commentform’ );
if ( ! commentForm ) {
return;
}
const commentBox = commentForm.querySelector( ‘[name=comment]’ );
if ( ! commentBox || commentBox.worth ) {
return;
}
// Add remark particulars for enhancing.
commentBox.innerHTML = information.remark.content material;
if ( information.remark.identify ) {
commentForm.querySelector( ‘[name=author]’ ).worth = information.remark.identify;
commentForm.querySelector( ‘[name=email]’ ).worth = information.remark.e mail;
}
},
maybeResetTooltip( recipeCardElement, information, score ) {
if ( this.savingRating === score ) {
this.resetTooltip( recipeCardElement, information );
}
},
resetTooltip( recipeCardElement, information ) {
window.TastyRecipes.staticTooltip.destroy();
this.savingRating = false;
// Reset the default score.
const cardRatingContainer = recipeCardElement.querySelector( ‘.tasty-recipes-ratings-buttons’ );
if ( cardRatingContainer ) {
this.defaultRating = ( information && information.common ) ? information.common.toFixed(1) : cardRatingContainer.dataset.trDefaultRating;
cardRatingContainer.dataset.trDefaultRating = this.defaultRating;
this.resetSelectedStar( cardRatingContainer, information );
}
},
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 = doc.querySelector( ‘#reply .tasty-recipes-ratings-buttons, #tasty-recipes-comment-rating .tasty-recipes-ratings-buttons’ );
if ( ! ratingsButtons ) {
return;
}
const ratingsButtonsStyles = window.getComputedStyle(ratingsButtons);
if ( ! ratingsButtonsStyles.show.contains( ‘flex’ ) ) {
ratingsButtons.model.course = ‘rtl’;
}
if ( typeof tastyRecipesRating !== ‘undefined’ ) {
// Choose the score that was beforehand chosen 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 on’, occasion => {
if ( ratingSpan === occasion.goal ) {
return;
}
ratingSpan.previousElementSibling.click on();
} );
}
}
};
(operate(callback) {
if (doc.readyState !== “loading”) {
callback();
} else {
window.addEventListener( ‘load’, callback );
}
})(() => {
window.TastyRecipes.rankings.init( window.trCommon ? window.trCommon.minRating : 4 );
});
