Crispy, flaky, and so delicious, this Beer Battered Vegan Fish and Chips recipe is dangerously close to the real thing.

I’ll just come out and say it. I wasn’t expecting much from the food scene when I visited the UK recently. But boy was I wrong! From the Scotch Eggs to the Beet Wellington, it was a real culinary experience. Except…for the fish and chips.
After seeing a restaurant promoting their “vegan fish and chips”, I dragged our group there for dinner, excited to try out a vegan fish recipe. Turns out their rendition of this famous dish was really just soggy fried eggplant. Disappointing is an understatement!
So I wanted to create something that actually had the taste and texture of fish, but would fit into a vegetarian and vegan diet. The secret ingredient? Heart of palm! This recipe uses simple ingredients you will already have on hand in the pantry and fridge (well, you might need to get the hearts of palm, but after you try this recipe they will become a pantry staple!).
Ingredients for Vegan Fish and Chips
When creating vegan fried fish, I wanted to make sure and keep that flaky fish texture. They also needed to look the part as we often eat with our eyes first! Every ingredient here serves a purpose, whether it be for flaky texture or to sneakily trick your brain into tasting fish!
- Hearts of Palm: The white color and mild flavor are reminiscent of fish! The texture, when roughly chopped up, is also similar to flaked fish. Find them canned in most grocery stores!
- Panko: Panko breadcrumbs are a Japanese style breadcrumb that are light and crispy, giving this vegan fish the perfect texture.
- Nori: Yup, seaweed comes from the sea so it gives us a hint of the ocean!
- Capers: These little salty gems are often associated with fish, tricking your brain into thinking it’s fish.
- Old Bay: What else would we season a “seafood” dish with?
- Vegan Mayonnaise: Much like making crab or salmon cakes, this helps glue everything together.
- Batter: The batter we’ll dip our vegan fish into is a classic beer batter, which is just flour, Old Bay seasoning, salt, pepper, garlic powder, and ale-style beer!
What Is Hearts Of Palm?
These are the very core of the trunk of several varieties of palm trees. They can be found with the canned veggies and are either in cans or jars, and packed in water or brine. Some say they taste similar to artichoke hearts.
How to make Vegetarian Fish and Chips
Recipes like this come together quickly – the ingredients are quickly combined in the food processor, before being shaped, battered, and fried!
Step 1: Blitz
Add all the fish ingredients to the bowl of a food processor. Use the pulse button to chop things up just a little. Keep some larger chunks of the hearts of palm for a flaky texture.
Step 2: Shape
Press a scoop of the filling between your palms to make a flattish log. I got 12 from my mixture. Then you’ll want to freeze them for no more than 15 minutes before frying. If you are longer than that preparing the batter and oil, move them to the fridge.
Step 3: Batter
Whisk up the beer batter in a bowl until smooth and combined.
Step 4: Oil
Heat oil in a large pot. You need just enough to cover the fish, so you don’t need it too deep.
Step 5: Assemble
Use a fork to carefully dunk each piece of “fish” into the batter, letting excess run off. Fry for about 5 minutes, or until perfectly golden and heated through. Transfer to a rack to drain while you fry the remaining pieces. Serve immediately!
Recipe tips
Serve it up Hot: These are best served fresh and hot! Vegan fried fish doesn’t taste great when leftover, though if you do have some, you can reheat in the air fryer.
Manual Labor: No food processor? You can chop the hearts of palm with a knife and mash everything together with a fork. It might not be exactly the same texture but it will work!
Dip of Choice: Tartar sauce is the classic pairing, but you can also reach for malt vinegar or ketchup.
Here, Fishy Fishy!
Obviously you’ll want to serve up vegan fish and chips, but you can always add more!
- Parsley Salad will add some light, refreshing greens against the fried food.
- Watermelon Gazpacho is a great first course for guests while you handle the frying. Easily made ahead and waiting in the fridge.
And of course, don’t forget a pint to wash everything down!
For more vegan fish alternatives, be sure to try out our Carrot Lox and our Tomato Tuna Poke Bowls!
Ingredients
Vegan Fish
- 2 14-oz cans heart of palm drained, 396g cans
- ½ cup panko breadcrumbs 30 g
- ¼ cup crumble nori seaweed, 15 g
- 2 Tbsp capers
- 2 Tbsp vegan mayonnaise
- 1 tsp old bay seasoning
- ½ tsp salt
Batter
- 1 cup all-purpose flour 120 g
- 1 tsp old bay seasoning
- ½ tsp each salt, pepper, garlic powder
- 1 ½ cups ale beer
For Frying and Serving
- 4 cups vegetable oil 950 mL
- 4 portions French fries*
- To serve: lemon wedges, vegan tartar sauce**
Instructions
- Blitz: Add all vegan fish ingredients to a food processor. Blitz briefly, just until heart of palm is broken down a bit (you still want some larger chunks of it, which provide the flaky fish texture).
- Shape: Shape into about 12 flattened logs. Place on a parchment-lined baking sheet and pop them in the freezer to chill while you prepare the batter and oil (they should be in the freezer for no more than 15 minutes, move them to the fridge if it takes longer).
- Batter: Stir together flour and spices, then whisk in the beer until a smooth batter is formed.
- Oil: Heat oil in a deep pan or deep fat fryer to about 350ºF (176ºC), ensuring oil level will be high enough to completely cover the "fish".
- Assemble: Working in batches, use forks or metal tongs to dip each vegan fish stick into the batter, letting excess batter drip off. Immediately transfer to the hot oil, cooking for 5 to 6 minutes, or until golden brown and crispy. Transfer finished vegan fish to a wire rack. Continue until all fish sticks are finished.
- Serve: Serve immediately with french fries and vegan tartar sauce.
Michele says
Can u use less oil to fry or bake them
Sarah Bond says
I haven’t tried baking or air frying these, but you could certainly try!