Salads
This ceviche salad recipe transforms fresh fish into a vibrant, citrus-kissed dish that's as refreshing as it is flavorful. The secret lies in properly marinating the seafood with lime juice and chili peppers—just enough time to cook the fish without overpowering its delicate texture.
I've perfected this technique over years of testing, ensuring every bite delivers that perfect balance of tangy, bright flavors with crisp vegetables.
The beauty of this recipe is its simplicity: no cooking required beyond the citrus marinade.
You'll need just a few key ingredients—high-quality white fish, fresh lime juice, salt, and a touch of chili pepper—to create the ceviche base, then pair it with crisp lettuce, ripe avocado, and juicy tomatoes for a salad that's both hearty and light.
The acidity of the lime tenderizes the fish while preserving its natural flavor, creating a dish that's equally at home for lunch or dinner.
What makes this ceviche salad truly special is how it comes together in minutes yet feels like a restaurant-worthy creation. The fish becomes opaque and flaky, the vegetables stay crisp, and the dressing ties everything together with a zesty punch.
It's the kind of dish that's perfect for warm weather or when you crave something fresh without heavy cooking.
Serve it chilled with a side of tortilla chips or on its own as a light main course. The possibilities are endless, but the foundation remains the same: bright, citrus-marinated fish with vegetables that add texture and freshness. Here's how to make it perfectly every time.
Ingredients for ceviche salad
Bright citrus, crisp veggies, and flaky fish—just nine ingredients transform into restaurant-quality ceviche salad.
| Ingredient | Amount | Notes |
|---|---|---|
| White Fish Fillets 🐟 | 1 ½ lb | Firm white fish like snapper or cod |
| Fresh Lime Juice 🍋 | 1 cup | About 6-8 limes, freshly squeezed |
| Fresh Cilantro Leaves 🌿 | ½ cup | Chopped, stems removed |
| Red Chili Peppers 🌶️ | 2 whole | Jalapeños or serranos, finely chopped |
| Red Onion 🧅 | ½ whole | Thinly sliced, soaking in cold water |
| Ripe Avocado 🥑 | 1 whole | Pitted, peeled, and cubed |
| Cherry Tomatoes 🍅 | 1 cup | Halved, seeds removed |
| Iceberg Lettuce 🥬 | 4 cups | Chopped, crisp variety |
| Extra-Virgin Olive Oil 🫒 | 2 tbsp | For drizzling |
| Kosher Salt 🧂 | 1 tsp | Diamond Crystal preferred |
| Black Pepper 🌶️ | ½ tsp | Freshly ground |
| Tortilla Chips 🍟 | 1 cup | For serving, optional |
The fish is non-negotiable here. Look for snapper or cod at your seafood counter—they hold up best to the lime marinade. Whole Foods or local fish markets often have the freshest cuts, but don't overlook the frozen section if you're in a pinch (thaw overnight in the fridge). Avoid fish with a strong odor or dull eyes. For the lime juice, Mexican limes are ideal if available, but regular limes work fine. The key is freshness—don't use bottled lime juice, even if it's 'fresh-squeezed' labeled. And if you're feeling adventurous, try yellowtail or mahi-mahi for a slightly sweeter flavor profile.
No fresh cilantro? Dried cilantro works at half the amount, but it won't have that same bright punch. The chili peppers can be swapped for hot sauce or cayenne at 1/4 tsp if you prefer milder heat. For the onion, red or yellow works best—white onion is too harsh. If your avocado is too ripe, swap for green mango or cucumber to keep the dish crisp. The cherry tomatoes can be subbed for grape tomatoes or even cucumber slices if you're avoiding red. And for the lettuce, romaine or butter lettuce adds more substance than iceberg, though iceberg stays crisper longer.
Store the fish and lime marinade separately in airtight containers for up to 2 days in the fridge. The vegetables should be prepped and stored in a sealed container with paper towels to absorb moisture—keeps them crisp for 3 days. For serving, assemble everything just before eating to maintain that perfect crunch. This dish tastes even better the next day as the flavors meld, so double the batch if you're feeding a crowd. Leftovers? The fish can be drained and stored separately, then tossed with fresh lime juice before serving again.
Why You'll Love This Recipe
- No Cooking Required: I swear by this—just dice the fish, squeeze the lime, and let the acid work its magic. No stove, no oven, no waiting for water to boil. That’s my kind of meal.
- Zesty Brightness: The lime juice hits first—sharp, tangy, like a wake-up call for your taste buds—then the red onion and chili peppers add this slow-building heat. It’s fresh, it’s bold, and it’s the kind of flavor that lingers in the best way.
- Picnic to Party: Pack it in a bowl for a beach day or serve it in a big platter for guests. The fish stays bright, the herbs add color, and it’s always a crowd-pleaser. (Yes, even my picky uncle asks for seconds.)
- Budget-Friendly Protein: Fresh fish can feel fancy, but a single fillet stretches far here. The lime and onion make it taste luxurious, but the cost? Way more reasonable than takeout. Plus, leftovers keep well—just toss them back in lime juice.
Step-by-step instructions for bright citrus-marinated fish salad
Transform fresh white fish into tender, citrus-kissed bites with this straightforward method.
Prepare the Fish for Marinating
Cut the 1.5 lb white fish fillets into ½-inch cubes and place them in a non-reactive glass or ceramic bowl. The fish should be completely submerged in the marinade for even cooking, so use a large enough bowl for this purpose. Pat the cubes dry with paper towels—this helps the lime juice penetrate more effectively and prevents a watery ceviche.
Add the 1 cup fresh lime juice to the bowl and gently stir to coat the fish completely. You'll notice the fish immediately begins to "cook" in the acid, turning opaque. Cover the bowl and refrigerate for 20-30 minutes, stirring once halfway through. The fish is perfectly cooked when it flakes easily with a fork and has a firm, opaque texture—no pink should remain in the center.
Soak and Slice the Onion
While the fish marinates, slice the ½ whole red onion paper-thin into half-moons. Place the slices in a colander and cover with cold water for 5 minutes to remove some of the sharpness. Drain and pat dry thoroughly with paper towels—this step is crucial for balancing the bright flavors without overwhelming bitterness.
Finely chop the 2 whole red chili peppers, removing seeds if you prefer less heat. The peppers should be finely minced so they distribute evenly throughout the salad without large chunks. Set both aside until ready to combine with the fish.
Assemble the Fresh Vegetable Base
Chop the 4 cups iceberg lettuce into bite-sized pieces and place in a large serving bowl. Halve the 1 cup cherry tomatoes and remove seeds, then add to the lettuce. Cube the 1 whole ripe avocado and set aside—add it just before serving to prevent browning. Finally, coarsely chop the ½ cup fresh cilantro leaves and stir into the lettuce mixture.
The lettuce should be crisp and cool, providing a refreshing contrast to the tender fish. The cherry tomatoes add a juicy sweetness that balances the acidity, while the cilantro contributes a bright, herbal note. Keep this base chilled until ready to serve.
Combine and Season the Ceviche
Drain the marinated fish, reserving the lime juice in case you need to thin the ceviche later. Add the fish to the lettuce mixture along with the chopped red onion and chili peppers. Gently toss everything together, being careful not to overmix—the fish should remain intact for texture.
Drizzle with 2 tablespoons extra-virgin olive oil and sprinkle with 1 teaspoon kosher salt and ½ teaspoon black pepper. Taste and adjust seasoning if needed—you may want to add a splash of the reserved lime juice if the mixture seems too thick. The ceviche should be bright, tangy, and perfectly balanced with a hint of spice.
Serve with Crunchy Tortilla Chips
Just before serving, gently fold in the cubed avocado to maintain its creamy texture. Arrange the ceviche salad on a platter and serve immediately with 1 cup tortilla chips on the side for scooping. The chips add a satisfying crunch that contrasts beautifully with the tender fish and crisp vegetables.
For best results, serve this ceviche salad chilled, as the flavors continue to meld in the refrigerator. Each bite should deliver a perfect balance of citrusy fish, fresh vegetables, and a touch of heat—with every component at its peak texture and temperature.
Pro Tips For Making Ceviche Salad
- CUT FISH SMALLER THAN YOU THINK: I learned this the hard way—big chunks of fish stay undercooked in the middle while the edges turn rubbery. Aim for ½-inch pieces max; they’ll soak up lime faster and stay tender. (Yes, even if you’re impatient like me.)
- USE KEY LIMES IF YOU CAN: Regular limes are fine, but key limes pack more acid and less water, which means your ceviche will brighten up quicker without turning soupy. If you can’t find them, roll regular limes on the counter first—they’ll yield more juice.
- RINSE THE ONION: Red onion is sharp and can overpower the dish if not handled right. Thinly slice it, then rinse under cold water to mellow the bite. Pat it very dry afterward—wet onion dilutes the lime and makes the salad watery.
- STACK THE CHILI PEPPERS: Skip the seeds for a cleaner heat, but don’t skip the stems. Stack 2-3 thinly sliced peppers on top of the fish right when you add the lime—this ensures the heat infuses evenly instead of sitting at the bottom. (Your future self will notice the difference.)
Essential equipment for perfect results
Citrus Marinating Bowl
Use a non-reactive glass or ceramic bowl (like Pyrex) for marinating the fish—metal reacts with lime juice and can impart off-flavors. I prefer a wide, shallow bowl (at least 8-inch diameter) to ensure the fish cubes are fully submerged.
A glass measuring cup works for smaller batches, but larger quantities need a deeper vessel. 🍋
Sharp Chef’s Knife
A high-quality 8-inch chef’s knife (like Wüsthof or Shun) is essential for cleanly cubing fish and slicing onions. For the fish, cut against the grain into ½-inch cubes—this creates tender bites that hold up to the citrus.
A serrated knife works for tomatoes, but avoid it for fish to prevent tearing. 🔪
Fine-Mesh Strainer
A stainless steel fine-mesh strainer (like OXO Good Grips) is perfect for draining the onions after soaking. The small holes remove excess water while keeping the delicate slices intact.
For the fish, a colander with slightly larger holes works better—you don’t need to strain the marinade, just remove the fish when ready. 🧽
Citrus Juicer or Reamer
Fresh lime juice makes all the difference—skip bottled! A handheld citrus juicer (like OXO Good Grips) extracts more juice than a reamer and is gentler on your hands. For limes, roll them on the counter first to soften the flesh.
If you’re making this often, a manual citrus press (like Norpro) is worth the investment—it yields 30% more juice than hand-squeezing. 🍋
Serving Platter
Choose a wide, shallow platter (like Corelle or Le Creuset) to showcase the vibrant colors. The fish should be the star, so avoid dark plates that mute the bright citrus hues. For extra flair, use a glass or ceramic dish—it keeps the salad chilled longer and looks elegant.
A wooden board works too, but place it on a tray to catch any drips. 🍽️
Optional: Tortilla Chip Scoop
If serving with chips, a small metal scoop (like OXO Good Grips) makes it easy to portion them without crushing. Skip the tongs—they’re too bulky for delicate chips.
For a fun touch, arrange chips in a small bowl or basket on the side for scooping. This keeps the presentation neat and prevents soggy chips. 🍟
Nutrition facts
Frequently asked questions
Can I use any type of fish for ceviche?
Stick to firm white fish like snapper, cod, or mahi-mahi—they hold up best to citrus marinating. Avoid delicate fish like tilapia or flounder, which can turn mushy. For extra flavor, try yellowtail or sea bass, but always use sushi-grade fish to ensure safety.
How do I know when the fish is fully cooked?
The fish is perfectly cooked when it turns opaque and flaky (no pink remains) after 20-30 minutes in lime juice. Test with a fork—it should break apart easily. Overcooking makes it rubbery, while undercooked fish poses a risk, so timing is key.
Can I make ceviche ahead of time?
Yes! Store the marinated fish and dressing separately in airtight containers for up to 2 days. Assemble the salad just before serving to keep vegetables crisp. The flavors actually improve overnight as the citrus tenderizes the fish further.
What if my ceviche tastes too acidic?
Add a splash of cold water or reserved marinade to dilute the acidity, then taste again. For balance, stir in 1 teaspoon honey or olive oil—this rounds out the bright flavors without overpowering the dish.
Can I substitute lime juice with lemon?
Lemon works in a pinch, but it's less acidic and may not fully "cook" the fish. For best results, use Mexican limes (key limes) if available—they're the traditional choice. If using lemon, add 1 extra tablespoon of juice and increase marinating time to 35 minutes.
