Gefilte Fish

Gefilte fish on a serving dish with a glass of wine and and horseradish in the background


Brett Stevens / Getty Images

Prep: 30 mins
Cook: 90 mins
Chill: 60 mins
Total: 3 hrs
Servings: 12 servings
Yield: 24 balls
Nutrition Facts (per serving)
415 Calories
16g Fat
28g Carbs
40g Protein
Show Full Nutrition Label Hide Full Nutrition Label
Nutrition Facts
Servings: 12
Amount per serving
Calories 415
% Daily Value*
Total Fat 16g 20%
Saturated Fat 5g 25%
Cholesterol 168mg 56%
Sodium 1193mg 52%
Total Carbohydrate 28g 10%
Dietary Fiber 4g 13%
Total Sugars 11g
Protein 40g
Vitamin C 14mg 68%
Calcium 119mg 9%
Iron 2mg 12%
Potassium 757mg 16%
*The % Daily Value (DV) tells you how much a nutrient in a food serving contributes to a daily diet. 2,000 calories a day is used for general nutrition advice.
(Nutrition information is calculated using an ingredient database and should be considered an estimate.)

Gefilte fish is an iconic Ashkenazic Jewish food that is often served at Passover as well as other Jewish holidays. It consists of fish, usually white-fleshed freshwater fish like carp or pike, that is chopped and mixed with ingredients such as onions, carrots, parsley, eggs, and matzah meal and formed into a loaf or individual balls or oval patties. The fish patties are then poached in a flavorful broth and chilled until ready to serve. If desired, you can use the fish mixture to stuff fish heads or pieces of fish.

"I could not find freshwater fish so I used fresh haddock fillets for the gefilte fish and they held their shape nicely in the poaching broth. They were a little bland, so I recommend frying a tablespoon or so of the fish mixture and tasting for seasoning before shaping into balls." —Diana Rattray

gefilte fish/tester image
A Note From Our Recipe Tester


For the Fish Balls:

  • 2 large onions, finely chopped

  • 2 to 4 tablespoons canola oil, more as needed

  • 4 pounds fresh whitefish fillets, such as haddock, carp or pike, cleaned

  • 2 large carrots, peeled and coarsely chopped

  • 2 large parsnips, peeled and coarsely chopped

  • 4 cloves garlic, coarsely chopped

  • 1/4 cup coarsely chopped fresh parsley

  • 1/2 cup matzo meal

  • 4 large eggs

  • 1 to 2 tablespoons granulated sugar

  • 1 tablespoon paprika

  • 1 teaspoon kosher salt, more to taste

  • 1/2 teaspoon white pepper, more to taste

  • Horseradish sauce, for serving

For the Poaching Broth:

  • 5 medium carrots, peeled and thinly sliced

  • 3 medium onions, peeled and quartered

  • 4 cloves garlic, quartered

  • 1 to 2 tablespoons granulated sugar

  • 1 teaspoon paprika

  • 1 tablespoons kosher salt, more to taste

  • 1/2 teaspoon white pepper, more to taste

  • 6 cups water, more as needed

  • Cooking spray

Steps to Make It

Make the Fish Balls

  1. Gather the ingredients for the fish balls.

  2. In a large skillet, sauté 1 of the onions in 2 tablespoons of the oil until lightly caramelized. Set aside to cool.

  3. Pulse, then process the fish in a food processor in batches, if necessary, until smooth. Set aside in a large bowl.

  4. Pulse, then process the carrots, parsnips, the remaining onion, garlic, and parsley in the food processor until finely chopped. Place in a separate bowl.

  5. Add the reserved sautéed onion and the matzo meal to the ground fish.

  6. Add the ground vegetables to the fish mixture.

  7. Add the eggs, sugar, paprika, salt, white pepper, and enough of the remaining oil for the mixture to hold together nicely. Mix well. If time allows, cover the fish mixture and store in the refrigerator for 1 to 2 hours.

  8. Form the mixture into 24 equal-size ovals, patties, or balls and set aside.

Make the Poaching Broth and Cook the Gefilte

  1. Gather the ingredients for the poaching liquid.

  2. In a large soup pot, add the carrots, onions, garlic, sugar, paprika, salt, white pepper, and water. Bring to a boil over high heat.

  3. Reduce the heat to low, and simmer until carrots are tender, about 20 minutes.

  4. Remove the vegetables from the broth with a slotted spoon, reserving the carrots for garnish.

  5. Gently lower the fish balls into the broth, in two batches if necessary to avoid crowding the pot. Keep the heat at a constant simmer. Add more water to the pot if needed to completely cover the fish balls (bring to a low boil, then return the heat to a simmer). Cook on low for about 1 hour. Adjust the broth with more salt and pepper to taste, if needed. Continue to cook on low about 30 minutes more.

  6. With cooking spray, coat pans large enough to hold all of the gefilte fish in a single layer. Carefully remove the fish balls from the broth with a slotted spoon and transfer to the pans. Ladle some of the broth over the fish. Place a piece of the reserved carrot on each gefilte fish. Let the fish cool.

  7. After the fish has cooled, cover and store it in the refrigerator until ready to serve.

  8. Gefilte fish is traditionally eaten cold with a prepared horseradish sauce. Enjoy!


You should never taste the raw fish and egg mixture for flavor, but there is a way to taste and adjust the seasonings. In the same pan used to cook the onions, fry a tablespoon or so of the fish mixture in a teaspoon or two of oil. Taste the cooked mixture for seasoning and adjust accordingly.

How to Store

  • Refrigerate the gefilte fish in an airtight container within 2 hours and consume within 3 days.
  • To freeze, wrap individual fish balls in plastic wrap and store them in an airtight container. Defrost them in the refrigerator for 8 to 12 hours or overnight.
  • Gefilte fish is usually served cold or at room temperature.

Recipe Tags: