You can use this vegan fish recipe to make a classic vegan fish fry, fish and chips, vegan fish sticks, or a vegan filet-o-fish sandwich! This simple fish fry recipe uses tofu that is flavored with kelp flakes for a fishy taste and fried in an authentic fish fry batter. Dip the vegan fish in some tartar sauce and you will be amazed at how real this tofu fish tastes!

Vegan fish and chips with a piece of the vegan fish on a fork being dipped into vegan tartar sauce.

Want to save this recipe?

Enter your email below and get it sent straight to your inbox. Plus, get more amazing vegan recipes that will satisfy your cravings!

Save Recipe

This is the best vegan fish that you can make! It’s made with simple ingredients yet tastes like an authentic fish fry.

You’ll tofu fish because

  • it’s simple and easy to make!
  • vegan and gluten-free.
  • gives you that taste of a real fish fry, but without animal products!
  • easy to turn into kid-friendly vegan fish sticks!
  • a vegan version of Long John Silver’s fish fry.
A vegan fish sandwich with tarter sauce and lettuce on it.

Ingredients and substitutions

  • Tofu – this will be the base of your “fish.” I find that firm or extra-firm tofu that has been pressed works the best. You can also use jackfruit, hearts of palm, or banana blossom if you want a soy-free alternative.
  • Kelp Flakes – These are simply crushed-up seaweed flakes. You can also use nori sheets and crush them up. This will give your marinade a fishy flavor.
  • Water – for the base of the marinade and in the batter. (You can swap this out for beer for a beer-battered fish.)
  • Salt – to flavor the tofu marinade and in the batter.
  • Flour – to make the base of the batter. You can use regular all-purpose flour, wheat flour, or an all-purpose gluten-free flour mix.
  • Cornstarch – This gives the batter a little crunch. (You can swap this out with panko crumbs instead if you would like.
  • Baking Soda and Baking Powder – this lightens up the batter and makes it slightly airy and crispy.
  • Seasoning – (optional) a dash of onion powder, black pepper, and paprika add a nice flavor to this batter too! You can also use some Old Bay Seasoning.
  • Oil – for deep frying your “fish.” You will need enough for your fish to float in the oil or use a deep fryer. *To make this oil-free, you can bake the fish instead.
  • Lemon Wedges – squeeze a little fresh lemon juice on your faux fish.

Helpful tools

  • A Deep Fryer – or a pot filled with enough oil to allow the tofu to float when frying.
  • Tongs – to take your fish fry out of the oil.
  • Paper Towels – to drain the excess oil off of the “fish” after frying.
  • Parchment Paper – and a cookie sheet if you want to bake it instead of frying it.

How to make vegan fish from tofu

Marinate the tofu

Step 1Drain and press a block of tofu.

Step 2Cut the tofu into any shape that you wish your “fish” to be like sticks or patties.

Step 3Add water, salt, and kelp powder to a shallow dish to make a marinade.

Step 4Place tofu in the marinade and turn it to get the kelp flakes stuck to all sides.

Step 5Let it sit for at least 15 minutes, or cover and refrigerate for up to 3 days. (The longer you let it sit, the fishier the flavor).

A college of two pictures showing the tofu marinating in a fish flavored broth to make the vegan fish fry.

When you are ready to fry

Step 6Put oil in a pan deeper than the tofu is thick. (This will allow it to float). (Or use a deep fryer).

Step 7Heat oil to 375° F and have it ready to add the “fish” once it has been battered.

A college of 2 pictures showing making the batter and dipping tofu in the batter to make breaded tofu fish.

Make the batter and fry

Step 8Combine the dry ingredients (flour, cornstarch, salt, baking soda, and baking powder) in a bowl.

Step 9Add water and stir until it forms a pancake-like batter.

Step 10Coat the marinated tofu in the batter.

Step 11Place in the hot oil immediately, pulling your hand back quickly so as to not get splashed with the oil. (You can also use tongs to place the breaded tofu in the oil.)

Step 12Fry the vegan fish fillet for about 3-4 minutes until the bubbles have died down a little and it’s golden brown. Flip the “fish” if necessary. Serve hot!

Serve your vegan fish with some vegan tartar sauce, vegan mayo, vegan Chick-fil-A sauce, or some chipotle mayo, or simply squeeze a slice of lemon juice over it!

A child dipping a vegan fish stick into vegan tartar sauce.

Vegan fish sticks 

To make fish sticks, cut the tofu into long thin strips about 1/2 inch thick, then batter and fry as you would the larger “fish” patties. 

Pro Tips

  • Don’t cut the tofu too thin or it will fall apart when you try to coat it in the batter. 
  • Kids love these “fish” sticks dipped in some vegan tartar sauce or other vegan dipping sauces!
  • These are also great for adding to vegan fish tacos.
Vegan fish and chips with a pickle on the side along with ketchup and vegan tartar sauce.

Vegan fish and chips

If you want more of a traditional fish and chips meal, cut your tofu into triangle-shaped wedges and serve with chips (aka french fries).

Gluten-free vegan fish sandwich

  • To make the fillet-0-fish style sandwiches gluten-free, I used Schar brand ciabatta roles. (as seen in the picture below).  
  • To make the fish fry mixture gluten-free, I find that any all-purpose gluten-free flour mix works well.  However, I add slightly less water to the gluten-free flour mix to get the same pancake batter-like consistency. 

How to get a flaky fish texture from the tofu

For an extra flaky texture use firm tofu (not extra-firm tofu or super firm tofu) and freeze it completely before using it. Put it in the fridge to thaw it a day or two before you plan on cooking it. Drain off the excess water and press the thawed tofu, and you will have a flakier texture.

Can I bake the vegan fish instead of frying it?

If you want a healthier oil-free vegan fish, you can put the battered fish on a parchment-lined cookie sheet and bake it at 425° F for about 20 minutes.  You simply won’t get the authentic “fish fry” flavor if you don’t actually fry it, yet it’s still delicious when it’s prepared this way! 

How to air-fry vegan fish?

You can use an air fryer for this recipe if you wish, however, the batter is drippy and makes a mess inside of your air fryer. If you choose to do so, you will only need to cook it at 400° F for about 15 minutes.

A vegan fish fry sandwich with french fries on the side.

More vegan seafood recipes

I used to love seafood before I went vegan, so I make a lot of mock seafood recipes. Check out all of my vegan seafood recipes.

A vegan fish sandwich with vegan tartar sauce and lettuce.
Gluten Free Icon
High Protein Icon
Nut Free Icon
Vegan Icon
5 from 4 rating

Vegan Fish

A great way to make an easy vegan fish sandwich, fish and chips, or fish sticks.


To marinate the tofu

  • 1 block tofu, firm or extra firm
  • 3/4 cup water
  • 1/2 teaspoon salt
  • 1/2 teaspoon kelp powder, or nori strips broke up

For the batter

  • 3/4 cup flour, (all-purpose gluten-free flour mix if desired)
  • 2 tablespoons cornstarch, or potato starch
  • 1/4 teaspoon baking powder
  • 1/4 teaspoon baking soda
  • 1/2 teaspoon salt
  • 1/4 teaspoon onion powder , (optional)
  • 1/4 teaspoon paprika , (optional)
  • 3/4 cup water, (2/3 cup for gluten-free)
  • 3 cups oil, for deep frying
  • 1/2 cup vegan tartar sauce, for dipping and putting on sandwiches



Marinate the tofu

  • Drain and press a block of tofu.
  • Cut the tofu into any shape that you wish your "fish" to be, such as sticks or patties.
  • Add 3/4 cups water, 1/2 tsp salt and 1/2 tsp kelp powder to a shallow dish to make a marinade.
  • Place tofu in the marinade and turn it to get the kelp flakes stuck to all sides.
  • Let it sit for at least 15 minutes, or cover and refrigerate for up to 3 days.  (The longer you let it sit, the fishier the flavor).

When you are ready to fry

  • Add 3 cups of oil to a pan deeper than the tofu is thick. (This will allow it to float). (Or use a deep fryer).
  • Heat oil to 375°F (190°C) and have it prepared as the 'fish' will be added once it is battered.

Make the batter

  • Combine 3/4 cups flour, 2 tbsp cornstarch, 1/4 tsp baking soda, 1/4 tsp baking powder, and salt in a bowl (optional: 1/4 tsp onion powder and 1/4 tsp paprika).
  • Add 3/4 cups water and stir until it forms a pancake-like batter.
  • Coat the marinated tofu in the batter.
  • Place in the hot oil immediately, pulling your hand back quickly as to not get splashed.
  • Fry for about 3-4 minutes until the bubbles have died down a little and it’s golden brown. Flip the “fish” if necessary.
  • Serve hot with tartar sauce!


To Bake the Vegan Fish
  • Pre-heat oven to 425°F (220°C). 
  • Batter the “fish” and place on a cookie sheet that has been lined with parchment paper.
  • Bake for 20 minutes.
For Gluten-Free “Fish”
  • Most all-purpose gluten-free flour mixes work well. 
  • I find that they need slightly less water than traditional flour, so add about 1/2 of water and then slowly add more until you get a pancake-like batter.
  • If you want a gluten-free vegan sandwich bun, I find that the Schar brand works well.
Serving: 1fish patty, Calories: 139kcal, Carbohydrates: 12g, Protein: 9g, Fat: 5g, Sodium: 614mg, Potassium: 51mg, Fiber: 1g, Vitamin A: 70IU, Calcium: 151mg, Iron: 1.6mg
Did you make this recipe?Please leave a star rating and review below!

📌 Be sure to follow me on Pinterest for new vegan recipes!