Ceviche is one of the most celebrated dishes in Latin American cuisine — a vibrant, refreshing medley of fresh seafood, citrus juice, herbs, and vegetables. Whether you’re making it for the first time or looking to perfect your technique, this comprehensive guide will walk you through everything you need to know: from selecting the freshest ingredients to understanding the science of “cooking” with acid, and most importantly, keeping your ceviche safe to eat.
What Is Ceviche?
Ceviche (also spelled “cebiche” or “seviche”) is a dish originating from the coastal regions of Latin America, most famously associated with Peru. At its core, it consists of raw fish or seafood that is marinated in fresh citrus juice — typically lime — which causes a chemical process called denaturation. This process firms up the proteins in the fish, giving it an appearance similar to cooked seafood, though it is not technically “cooked” in the traditional sense using heat.
Today, ceviche is enjoyed across the globe with countless regional variations, including Peruvian-style ceviche with aji amarillo peppers, Mexican ceviche with tomatoes and avocado, and Ecuadorian ceviche served with popcorn and plantain chips.
Understanding the Science: Does Citrus “Cook” Fish?
One of the most common misconceptions about ceviche is that the lime juice fully “cooks” the fish, making it safe to eat regardless of its quality. The acid in citrus juice does denature the proteins — changing the fish’s texture and appearance from translucent to opaque — but it does not kill all bacteria and parasites the same way heat does.
This is why the quality and sourcing of your fish is absolutely critical when making ceviche. The citrus juice will enhance texture and flavor, but food safety depends heavily on what you start with.
Choosing the Right Fish and Seafood
The foundation of any great ceviche is high-quality, fresh seafood. Here’s what to look for:
Best Fish for Ceviche
- Halibut – Firm, mild, and holds up beautifully in the marinade.
- Sea bass (corvina) – A traditional Peruvian choice with a delicate flavor.
- Tilapia – Affordable and widely available, works well for beginners.
- Snapper – Firm texture with a slightly sweet taste.
- Flounder – Light and tender, great for a softer texture.
- Mahi-mahi – Bold flavor with a meaty bite.
Other Seafood Options
- Shrimp – Often lightly cooked before marinating for extra safety.
- Scallops – Tender and sweet, they marinate quickly.
- Octopus – Usually pre-cooked for the best texture.
- Crab – Pre-cooked crab makes a wonderful, safe ceviche option.
What to Avoid
- Fish that smells overly “fishy” or ammonia-like.
- Seafood with dull or discolored flesh.
- Fish purchased from unreliable or uncertified sources.
Food Safety: The Most Important Step
Before diving into the recipe, let’s address the most critical concern: food safety. Since ceviche uses raw or minimally processed seafood, following proper safety guidelines is non-negotiable.
Use “Sushi-Grade” or Frozen Fish
The safest fish to use for ceviche is labeled “sushi-grade” or “sashimi-grade.” This designation means the fish has been frozen at temperatures cold enough to kill parasites. According to the FDA, fish intended for raw consumption should be frozen at -4°F (-20°C) for at least 7 days, or at -31°F (-35°C) for 15 hours.
Even if fresh fish looks pristine, previously frozen fish is often the safer choice for home cooks. Many high-quality fish are frozen immediately after being caught and are perfectly fresh once thawed.
Keep Everything Cold
Always marinate ceviche in the refrigerator, never at room temperature. Raw seafood should be kept below 40°F (4°C) at all times to prevent bacterial growth. Use a cold bowl and cold citrus juice, and return the dish to the fridge immediately after mixing.
Who Should Avoid Raw Ceviche
Certain groups should avoid consuming raw or undercooked seafood, including:
- Pregnant women
- Young children under 5
- Elderly individuals
- Anyone who is immunocompromised
For these groups, consider making ceviche with pre-cooked shrimp or crab for a safer alternative that still delivers great flavor.
Essential Ingredients for Classic Ceviche
Once you have safe, fresh seafood ready, you’ll need the following core ingredients:
The Marinade (Leche de Tigre)
- Fresh lime juice – The star of the show. Always use freshly squeezed lime juice, never bottled. You’ll need approximately 10–15 limes for 1 pound of fish.
- Salt – Enhances all flavors and aids in the denaturation process.
- Aji amarillo paste or fresh chili – For heat and fruity depth (optional but traditional in Peruvian ceviche).
- Garlic – Adds aromatic depth; use sparingly so it doesn’t overpower.
Aromatics and Mix-ins
- Red onion – Thinly sliced; adds crunch and sharpness. Soak in cold water to mellow the bite.
- Fresh cilantro – Bright and herbal; adds a classic ceviche flavor.
- Jalapeño or serrano pepper – For heat; remove seeds for milder spice.
- Tomatoes – Common in Mexican-style ceviche; adds color and sweetness.
- Avocado – Creamy contrast to the acidity; add just before serving.
- Cucumber – Refreshing crunch that pairs beautifully with the citrus.
Step-by-Step Guide to Making Ceviche
Step 1: Prepare Your Fish
Remove any skin and bones from your fish. Using a very sharp knife, cut the fish into small, uniform pieces — approximately ½-inch cubes. Smaller pieces will marinate faster and more evenly. Place the cut fish in a non-reactive bowl (glass or stainless steel work best; avoid aluminum).
Step 2: Season and Add Citrus
Season the fish generously with salt, then pour the freshly squeezed lime juice over it. The juice should completely submerge the fish. If you’d like to add orange juice or lemon juice for a slightly sweeter or more complex citrus profile, now is the time to mix it in. Stir gently to combine.
Step 3: Marinate in the Refrigerator
Cover the bowl tightly with plastic wrap and place it in the refrigerator. Marination time depends on your preference:
- 15–30 minutes – The fish will be lightly cured on the outside but still slightly raw and translucent in the center. This is called “leche de tigre” style and is popular with purists.
- 1–2 hours – The fish will be more fully cured, opaque throughout, with a firmer texture.
- More than 4 hours – Not recommended. The fish can become rubbery and overly acidic.
Step 4: Add the Vegetables and Herbs
About 10–15 minutes before serving, drain some of the excess citrus juice if desired (or keep it — the liquid is known as “leche de tigre” and is considered a delicacy in Peru, often drunk as a shot). Fold in the red onion, cilantro, jalapeño, and any other vegetables you’re using.
Step 5: Taste and Adjust
Give the ceviche a taste and adjust the seasoning as needed. Add more lime juice for extra brightness, more salt to enhance flavors, or more chili for heat. Balance is everything in ceviche — you want acidity, saltiness, heat, and freshness all working in harmony.
Step 6: Serve Immediately
Ceviche is best enjoyed immediately after preparation. If adding avocado, do so right before serving to prevent browning. Serve cold, directly from the refrigerator.
Classic Peruvian Ceviche Recipe
Here is a tried-and-true recipe for classic Peruvian-style ceviche:
Ingredients
- 1 pound fresh white fish (sea bass, halibut, or snapper), cut into ½-inch cubes
- ¾ cup freshly squeezed lime juice (about 10–12 limes)
- 1 teaspoon salt (plus more to taste)
- 1 clove garlic, finely minced
- 1 teaspoon aji amarillo paste (or ½ serrano pepper, minced)
- ½ small red onion, thinly sliced
- 2 tablespoons fresh cilantro, roughly chopped
- 1 tablespoon fresh ginger, grated (optional but adds wonderful depth)
For Serving
- Lettuce leaves
- Boiled sweet potato slices (camote)
- Choclo (large-kernel Peruvian corn) or regular corn kernels
- Cancha (toasted corn nuts)
Instructions
- Season the fish cubes with salt and let rest for 5 minutes.
- Add garlic, aji amarillo paste, and lime juice to the fish. Stir to combine.
- Refrigerate for 20–30 minutes for a traditional texture.
- Remove from the fridge, fold in sliced red onion and cilantro.
- Taste and adjust seasoning with more salt or lime juice if needed.
- Serve on a bed of lettuce with sweet potato, corn, and cancha on the side.
Mexican-Style Ceviche Recipe
A more accessible and crowd-pleasing version, Mexican ceviche is chunkier and often served with tortilla chips:
Ingredients
- 1 pound shrimp (pre-cooked or raw, peeled and deveined), roughly chopped
- ½ cup freshly squeezed lime juice
- ¼ cup freshly squeezed lemon juice
- 2 medium tomatoes, diced
- ½ cucumber, diced
- ¼ cup red onion, finely diced
- 1 jalapeño, seeded and minced
- ½ cup fresh cilantro, chopped
- 1 avocado, diced
- Salt and pepper to taste
- Tortilla chips or tostadas for serving
Instructions
- If using raw shrimp, marinate in citrus juice for 30 minutes until pink and opaque throughout. If using pre-cooked shrimp, marinate for 15 minutes.
- Combine marinated shrimp with tomatoes, cucumber, red onion, jalapeño, and cilantro.
- Season with salt and pepper. Stir to combine.
- Gently fold in avocado just before serving.
- Serve immediately with tortilla chips or tostadas.
Tips for the Best Ceviche Every Time
- Always use fresh citrus juice. Bottled juice lacks the bright, vibrant acidity essential to great ceviche.
- Cut fish uniformly. Even-sized pieces ensure consistent marination throughout.
- Don’t skip the cold. Keep everything refrigerated. Cold ingredients equal safe, fresh-tasting ceviche.
- Soak red onion in ice water for 10–15 minutes before using to remove harsh bitterness while keeping the crunch.
- Don’t over-marinate. More time in citrus doesn’t mean better flavor — it means mushier, tougher fish.
- Taste as you go. Every batch of citrus is different in acidity; adjust salt and lime accordingly.
- Use a non-reactive bowl. Citrus can react with aluminum, giving the ceviche a metallic taste. Use glass, ceramic, or stainless steel.
- Add avocado last. Avocado browns quickly; fold it in right before plating.
- Balance heat carefully. Start with less chili — you can always add more, but you can’t take it away.
Common Mistakes to Avoid
- Using low-quality or old fish – This is the single biggest mistake. No amount of lime juice compensates for poor-quality seafood.
- Marinating at room temperature – This is a serious food safety risk. Always refrigerate.
- Using pre-bottled lime juice – It lacks the complexity and freshness of real limes.
- Over-marinating the fish – Results in a rubbery, overly acidic product.
- Not tasting before serving – Seasoning is everything. Always taste and adjust.
- Adding avocado too early – It will brown and turn mushy by the time you serve.
Serving Suggestions and Pairings
Ceviche is incredibly versatile and can be served in many different ways:
- In a glass – Elegant presentation for parties or appetizers.
- On tostadas – Mexican-style, loaded with toppings like sour cream and hot sauce.
- With plantain chips – Ecuadorian-inspired, scoopable and delicious.
- In lettuce cups – A light, gluten-free serving option.
- As a taco filling – Mix ceviche into warm tortillas with shredded cabbage and a drizzle of hot sauce.
- With sweet potato and corn – Traditional Peruvian accompaniments that balance the acidity beautifully.
For drinks, ceviche pairs wonderfully with a cold light beer, a crisp white wine like Sauvignon Blanc, or a classic Peruvian Pisco Sour.
How to Store Ceviche
Ceviche is best enjoyed immediately after preparation. However, if you have leftovers:
- Store in an airtight container in the refrigerator.
- Consume within 24 hours for the best flavor and safety.
- Note that the fish will continue to “cook” in the residual acid and may become more firm and opaque over time.
- Never freeze ceviche — the texture of the fish will be ruined upon thawing.
Frequently Asked Questions About Ceviche
Is ceviche safe to eat?
Yes, when made with high-quality, sushi-grade or previously frozen fish and kept refrigerated throughout preparation, ceviche is safe for most healthy adults. The key is starting with the best possible seafood and maintaining cold temperatures at all times.
How long should I marinate ceviche?
For traditional texture with a slightly raw center, marinate for 15–30 minutes. For fully cured, opaque fish, marinate for 1–2 hours. Avoid marinating longer than 4 hours as the texture will deteriorate.
Can I use lemon instead of lime?
Yes, lemon juice works as a substitute, though it gives a slightly different flavor profile. Many recipes use a combination of both lime and lemon for balance. Some regional versions also use orange juice for added sweetness.
What is leche de tigre?
“Leche de tigre” (tiger’s milk) refers to the citrus-based marinade left over after the ceviche has marinated. It is packed with flavor and often served as a shot or used as a base for cocktails and sauces in Peruvian cuisine.
Can I make ceviche ahead of time?
You can prepare all the vegetable components ahead of time, but marinate the fish only when you’re ready to serve (or 30–60 minutes before). Do not make ceviche more than a few hours in advance.
Final Thoughts
Making ceviche at home is simpler than it seems, but it rewards those who pay attention to detail. The most important principles are simple: start with the freshest, highest-quality seafood you can find, keep everything cold, use real lime juice, and don’t over-marinate. Follow these principles, and you’ll have a vibrant, zesty, and absolutely safe ceviche that rivals anything you’d find at a restaurant.
Whether you go the traditional Peruvian route with aji amarillo and cancha, or opt for a crowd-pleasing Mexican version loaded with avocado and tomatoes, ceviche is a dish that celebrates freshness in every single bite. Grab your limes, find some beautiful fish, and get started.

