The distinction between what's called "shrimp cocktail" and what's called "ceviche" in Latin America is a blurry one. There's no easy way to map it, but to take a very cursory look: Starting with the most classic Peruvian ceviche, we find raw and cooked seafood in a flavorful lime-based marinade; moving up to Ecuador, we encounter all kinds of ceviche, some similar to the Peruvian ones, others diverging a bit by, say, mixing ketchup into the base—often when shrimp are involved; on to Colombia, and we confusingly find ceviche served in a ketchup-based cocktail sauce, while coctel comes in a thicker sauce that also contains mayo (check out Kenji's description and recipe for the version from Cartagena); head farther north, to Mexico, and coctel de camarones (shrimp cocktail) is a popular appetizer, also served in a lime- and ketchup-based sauce, but minus the mayo.*
If you want a Mexican dish that's more like Peruvian ceviche, make sure to check out aguachiles, which star raw shrimp and other seafood in a chili-lime sauce.
Those Colombian and Mexican cocteles, while sharing ground with citrusy ceviche, also have a lot in common with shrimp cocktail itself—you know, either the kind served with a horseradish-flavored ketchup dipping sauce, or the British version, in which the shrimp are tossed in Marie Rose sauce (basically a mayo-ketchup blend). Which is all to say, it's a fascinating tapestry stretching far across the globe.
Today, though, I'm focusing on the Mexican kind. I love almost everything about it: the plump poached shrimp, the tart tomato-lime sauce, the fresh cilantro, and the crunch of sweet diced white onion. But in practice, many versions I've eaten, both in the States and in Mexico, have been too sweet for me.
In extreme cases, this sweetness is due to the addition of straight-up sugar or even citrusy soda (think Sprite and its ilk). Even without those, though, basic Mexican shrimp cocktail can be very sweet, so my goal here was to make a version that's true to the original, but strikes a balance of sweet and tart.
The problem—if you, like me, find it to be a problem—is the ketchup itself. When I started testing this recipe, I tried using ketchup as the only source of tomato, which is how a lot of recipes do it. But what I found was that no matter how much lime juice I added in an attempt to balance it out, I could never quite overcome the ketchup's sweetness.
The solution is pretty straightforward: Use less ketchup, and supplement it with some tomato puree. I didn't want to cut the ketchup entirely, because it's an important part of the dish; I just wanted less of it.
Beyond that, everything else here is very simple.
I start with shelled shrimp, which I also devein if the veins are dark. You can slice the shrimp along their backs and remove the veins, but I've also found that you can often just pluck the veins out with tweezers from the head end of the shrimp.
I use the same poaching method that Kenji uses in his Colombian version, dry-brining the shrimp with salt and baking soda for a short time to increase their plumpness, then placing them in cool water with lime juice and bringing the temperature up to 170°F until the shrimp are just cooked through. By starting them cold and keeping the temperature from climbing too high, you end up with shrimp whose texture is more perfectly tender from edge to edge.
After poaching, I drain them well, chill them under cold running water, and cut them into smaller pieces, which I find makes them easier to eat on saltines (the way they're usually served).
In a bowl, I toss the poached shrimp with a little ketchup, along with some tomato puree, lime juice, orange juice, diced white onion, jalapeño or serrano pepper, and cilantro.
Then I serve them with some avocado on top, saltines on the side, and a bottle of Mexican-style hot sauce, so folks can spike them with as much heat as they want. Whether you think of it more as a ceviche or more as a shrimp cocktail—or just something that exists happily in the middle—it's totally delicious.