It’s simple food, but not boring. It’s soft, slightly sweet, kind of delicate. And once I tried making it myself, I realized this recipe is more about patience than skill. You slow down a bit, and it turns out better.
I’ve made it a handful of times now, and each time I tweak something. Sometimes I rush the chilling step and regret it. Sometimes I get the seasoning just right and feel weirdly proud. It’s one of those recipes that teaches you as you go.
Ingredients I Used for the Recipe
- 500 g mixed white fish (like cod, haddock, or hake) – this is the base, gives that soft, clean flavor
- 1 small onion, finely chopped – adds a little sweetness and depth
- 40 g matzo meal – helps bind everything together without making it heavy
- 1 teaspoon sugar – just enough to give that traditional slight sweetness
- 1 teaspoon salt – brings everything together
- 1 egg, lightly beaten – acts as the glue for the mixture
- A small dash of white pepper – subtle heat without overpowering
- 1 liter water – for the stock
- Fish bones or head (non-oily) – this builds a light, clean stock
- 1 large carrot, sliced – adds flavor and also used for topping later
- 1 small onion, quartered – rounds out the stock
- 1 teaspoon salt (for stock) – seasoning the broth
- 1 teaspoon sugar (for stock) – balances the flavor
- 5 white peppercorns – gentle spice in the background
How to make Gefilte Fish?

Step 1 – Build the stock first
I always start here because it sets the tone for everything else. I toss the water, fish bones, carrot slices, onion, salt, sugar, and peppercorns into a pot and bring it to a boil.
Once it starts bubbling, I skim off that foam on top. Not the most exciting part, but it makes the stock cleaner. Then I let it simmer for about 30 minutes. The smell alone tells me it’s working.
Step 2 – Strain and save the good stuff
After simmering, I strain the stock carefully. I keep the carrot slices aside because those go on top later. I learned that the hard way after accidentally mashing them once. Not pretty.
The liquid should look light, not cloudy. If it smells clean and slightly sweet, you’re on track.
Step 3 – Prep the fish mixture
I pulse the fish in a food processor just a few times. This part matters more than I expected. Too much and it turns into paste, too little and it doesn’t hold together well.
I aim for finely chopped, not smooth. It should still have a bit of texture when you touch it.
Step 4 – Mix everything together
In a big bowl, I combine the fish with matzo meal, sugar, salt, and white pepper. I mix it gently with a spoon first, then add the egg.
At the end, I switch to using my hands. Not squeezing, just folding it together. That took me a couple tries to get right. Overmixing makes them dense.
Step 5 – Let it rest
I cover the bowl and stick it in the fridge for about 30 minutes. I used to skip this when I was impatient, and the texture always suffered. Resting helps everything bind properly.
Now I just use that time to clean up or scroll my phone a bit.
Step 6 – Shape the fish balls
I wet my hands slightly so the mixture doesn’t stick. Then I shape them into oval balls, kind of flattened. They don’t have to be perfect. Mine never are.
As long as they hold together, you’re good.
Step 7 – Poach gently
I bring the stock back to a gentle simmer, not a full boil. Then I lower the fish balls in carefully. Dropping them in too fast can break them apart, and yeah, I’ve done that before.
I let them cook for about 30 minutes. Sometimes in batches if the pot is crowded.
Step 8 – Finish and chill
Once they’re cooked, I transfer them to a dish. Then I reduce the stock a bit so the flavor gets stronger and pour it over the fish balls.
I top each one with a carrot slice. Then comes the hardest part… waiting. They really do taste better after chilling overnight. I’ve tried sneaking one early and it’s just not the same.
What surprised me the most
I didn’t expect such a simple recipe to feel this satisfying. There’s something about making the stock from scratch that makes a difference. It’s not complicated, just a little time and attention.
Also, the texture. I used to think it would be mushy, but when done right, it’s soft but holds together nicely. Kind of delicate, not heavy at all.
And that slight sweetness? I wasn’t sure about it at first, but now it’s the part I look forward to.
Tips
Don’t over-process the fish
This is probably the easiest mistake to make. If it turns into a paste, the final texture gets too dense. Keep it slightly coarse.
Let the mixture rest
I know it’s tempting to skip, but it really helps everything come together. The difference shows in how well the fish balls hold their shape.
Keep the poaching gentle
A rolling boil will break them apart. I keep the heat low so the water barely moves.
Use homemade stock if you can
I’ve tried shortcuts, but honestly, making your own stock takes just 30 minutes and tastes so much better. It’s lighter and cleaner.
Chill before serving
This one matters more than I expected. The flavor settles, and the texture firms up just enough. Cold is the way to go here.
Don’t stress about shape
They don’t need to look perfect. Mine never do. As long as they taste good, that’s what counts.
The way I actually like to eat it
I usually serve it straight from the fridge, with a bit of horseradish on the side. That sharp kick against the mild fish works really well.
Sometimes I keep it simple. Sometimes I go back for seconds without even thinking. It’s one of those quiet dishes that grows on you.
And yeah, it took me a couple tries to really get it right. But now it feels like one of those recipes I’ll keep coming back to, not because it’s flashy, but because it just feels… right.

Gefilte Fish Recipe
Description
Gefilte means "stuffed fish" in Yiddish and Gefilte Fish is a slightly sweet mixture of minced fish, onions and spices that resembles quenelles. Originally, this fish paste was stuffed back into the fish skin and poached in a simple homemade fish stock but now, you're more likely to find them in the form of oval fish balls. Traditionally served on Shabbat and Jewish holidays by Ashkenazi Jews, this delicate poached fish dish is perfect as a first course and beautifully presented with carrot slices and horseradish relish.
ingredients
For the fish balls
For the fish stock
Instructions
Make the fish stock
- Place water, fish bones or head, carrot, quartered onion, salt, sugar, and white peppercorns in a saucepan and bring to a boil.
- Skim off any scum that rises to the surface.
- Simmer for 30 minutes, then strain the stock, carefully reserving the carrot slices for decoration without breaking them.
Prepare the fish balls
- Pulse the fish meat a few times in a food processor until finely chopped or minced, being careful not to turn it into a paste. Transfer to a large bowl.
- Sprinkle the matzo meal, sugar, salt, and white pepper over the fish and mix well with a wooden spoon.
- Add the lightly beaten egg and mix thoroughly to bind the mixture. Finish mixing gently with your hands, avoiding squeezing the paste.
- Cover the bowl with cling film and refrigerate for 30 minutes to firm up the mixture.
- After chilling, wet your hands and form the fish paste into oval-shaped fish balls, slightly flattened on one side.
Poach and finish
- Bring the reserved fish stock to a gentle simmer in a large saucepan. Carefully lower the fish balls into the stock, cover, and poach for 30 minutes. Work in batches if needed to avoid overcrowding.
- Using a slotted spoon, transfer the cooked fish balls to a large shallow serving dish.
- Return the poaching liquid to the heat and reduce by half. Pour the reduced stock over the fish balls in the serving dish.
- Decorate each fish ball with a reserved carrot slice and chill in the refrigerator overnight before serving.
Nutrition Facts
Servings 12
- Amount Per Serving
- Calories 68kcal
- % Daily Value *
- Total Fat 1gg2%
- Saturated Fat 0.3gg2%
- Trans Fat 0gg
- Cholesterol 20mgmg7%
- Sodium 200mgmg9%
- Potassium 150mgmg5%
- Total Carbohydrate 4gg2%
- Dietary Fiber 0.5gg2%
- Sugars 1gg
- Protein 10gg20%
- Calcium 2% mg
- Iron 4% mg
* Percent Daily Values are based on a 2,000 calorie diet. Your daily value may be higher or lower depending on your calorie needs.
Note
- Make your own stock: Homemade fish stock creates a light, flavorful aspic when chilled, elevating the dish beyond store-bought versions.
- Serving suggestion: Traditionally served with chrain, a horseradish relish, and a slice of carrot on top for classic presentation.
- Make ahead: This dish improves with time; prepare a day ahead and chill overnight for best flavor and texture.
- Fish selection: Use a combination of mild white fish like cod, hake, or haddock for authentic flavor and texture.
