Pin it
The Filet-O-Fish has been on the McDonald's menu since 1965, and there's a reason it never left. That soft steamed bun, the crunchy fried fish, the cool tangy tartar sauce, and exactly half a slice of melted cheese hit a very specific note that's hard to stop thinking about.
This copycat gets all of it right. The fish is Alaskan pollock, the same species McDonald's uses. The batter is light and crisp, thanks to cold beer and cornstarch. The tartar sauce is a three-ingredient mix that tastes exactly like the original. And the steamed bun is the real secret that most home cooks skip.
Once you make it at home, you notice how much better it is fresh. The bun is warm and pillowy, the fish is still crackling, and the whole thing is hot all the way through. It only gets that way when you made it two minutes ago.
Everything that goes into the sandwich
This is a short, focused list. The pollock should be as fresh as you can find, and the relish in the tartar sauce must be sweet rather than dill. That one detail is what makes the sauce taste like the real thing instead of just any tartar sauce.
- Alaskan pollock fillets. Mild and flaky, this is the same fish McDonald's uses. Cod is a reliable substitute with a slightly meatier texture.
- All-purpose flour and cornstarch. The combination fries up lighter and crispier than flour alone. Cornstarch is the key to that thin, shattery crust.
- Cold beer or sparkling water. The carbonation creates tiny bubbles in the batter that expand in the hot oil. The result is a lighter, crunchier coating with less grease.
- Mayonnaise. The base of the tartar sauce. Full-fat gives a richer, creamier texture than reduced-fat versions.
- Sweet pickle relish. Non-negotiable for the McDonald's flavor. Use sweet, not dill. Two tablespoons is all it takes.
- American cheese slices. Each sandwich gets exactly half a slice. A full slice overwhelms the fish.
- Soft burger buns. Brioche or plain soft rolls both work. The steaming step is what transforms them.
- Vegetable oil. You need about two inches of depth in the pan so the fillets can float and cook evenly on all sides.
How the sandwich comes together
- Make the tartar sauce first. Stir together 1/2 cup mayo, 2 tablespoons sweet pickle relish, and 1 teaspoon lemon juice with a pinch of salt. Refrigerate it. It only gets better as it sits.
- Prep the fish. Cut each fillet into a square roughly 3.5 to 4 inches across to match the bun. Pat every piece bone-dry with paper towels, then season both sides lightly with salt and black pepper.
- Mix the batter. Whisk 1/2 cup flour, 1/4 cup cornstarch, 1/2 teaspoon salt, 1/4 teaspoon garlic powder, and 1/4 teaspoon baking powder in a bowl. Pour in about 1/2 cup cold beer or cold sparkling water and whisk until smooth. The batter should be the consistency of thin pancake batter. Keep the bowl cold.
- Heat the oil. Pour two inches of vegetable oil into a heavy skillet or Dutch oven. Heat to 365°F (185°C). Use a thermometer.
- Batter and fry in batches. Dust each fish piece lightly in plain flour first, shaking off the excess. Dip in the batter and let the drips fall back into the bowl. Lower into the hot oil gently. Fry two pieces at a time for 3 to 4 minutes per side until deep golden and cooked through. Drain on a wire rack.
- Steam the buns. Place a steamer basket over about an inch of simmering water. Set the split buns cut-side down in the basket, cover, and steam for 60 to 90 seconds until warm and soft.
- Assemble immediately. Spread a generous spoonful of tartar sauce on the bottom bun. Set the hot fish fillet on top. Lay half a slice of American cheese over the fish (the residual heat will soften it). Close the bun and serve right away.
Why the steamed bun matters so much
Most homemade versions fall short because of the bun. People toast it, and the result tastes like a normal fish sandwich, not a Filet-O-Fish. McDonald's steams their buns, and it makes them warm and almost pillowy in a way no toaster achieves.
The steam takes 90 seconds and you don't need special equipment. A metal steamer basket over a pot of simmering water does the job. Place the buns cut-side down so the steam hits the inner surface directly. If you own a rice cooker with a steam tray, that works too. Do this while the last batch of fish finishes frying so everything lands on the plate at the same time.
Pollock versus cod: what to buy
Alaskan pollock is the authentic choice and worth seeking out. The flavor is very mild and clean, which lets the batter and tartar sauce do their work without competition. Cod is slightly meatier and a touch sweeter, which works well but produces a noticeably different sandwich.
Both species are sustainably managed in US and Alaskan waters. The Seafood Watch guide for Alaskan pollock rates the wild-caught options as a best choice, so this is one of the more responsible fried fish sandwiches you can make at home. For more great ways to cook white fish, try the crispy fish with dipping sauce or the Captain D's batter-dipped fish, both of which use a similar frying technique.
Getting a crispy batter every single time
Cold batter and hot oil are the two variables that matter most. Keep your beer or sparkling water straight from the fridge and mix the batter right before you fry. If the bowl warms up while you're working through batches, set it over a bowl of ice to keep it cold between dips.
The other key is the double-flour step: dust the fish in plain flour before the batter dip. It gives the batter something to grip so it doesn't slide off in the oil. You'll find this same approach in other crispy coatings, including the method behind homemade KFC-style chicken, where the pre-dredge is what creates an even, thick crust.
Cook the fish to an internal temperature of 145°F (63°C). The FDA seafood safety guidelines recommend this temperature for all fish, and at that point pollock will be opaque all the way through and will flake cleanly when pressed.
Storing and reheating leftovers
An assembled sandwich doesn't store well; the bun softens and the coating loses its crunch within an hour. Keep the fried fish fillets and the tartar sauce in separate containers in the fridge for up to two days.
To reheat the fillets, spread them on a wire rack set over a baking sheet and bake at 400°F (200°C) for 8 to 10 minutes. They crisp back up almost as well as fresh. The microwave is faster but makes the coating soft. If you want to explore more copycat fish sandwiches, the classic Filet-O-Fish style recipe is another great starting point with a slightly different approach.
FAQs
- What fish does McDonald's actually use in the Filet-O-Fish?
McDonald's uses Alaskan pollock, a mild, flaky white fish that fries up clean and holds its shape well. It's also one of the most sustainably managed fish in the ocean. Cod is the closest substitute if your store doesn't carry pollock. Both work well in this recipe; the flavor difference is subtle.
- Can I use frozen fish fillets instead of fresh?
Yes, frozen pollock or cod both work fine here. Thaw the fillets fully in the fridge overnight or under cold running water for a few minutes. The most important step is patting them completely dry with paper towels before battering. Surface moisture makes the batter slide off and causes the oil to spatter badly.
- Can I make this in an air fryer instead of frying in oil?
A wet batter doesn't air-fry well because it drips before it sets. For an air fryer version, coat the fish in seasoned flour, then egg wash, then panko breadcrumbs instead. Air fry at 400°F (200°C) for 10 to 12 minutes, flipping once halfway. You get a crunchier texture, but it will taste different from the original thin-batter style.
- What can I substitute in the tartar sauce?
The homemade version here uses just mayo, sweet pickle relish, and lemon juice. The sweet relish is the most important detail. Avoid tartar sauces that lean heavily on dill, they taste quite different from the McDonald's version. If you want a little extra tang, a small splash of white vinegar stirred in at the end works well.
- How do I steam burger buns without a steamer?
Set a metal colander or steamer basket over a pot with about an inch of simmering water. Place the split buns cut-side down in the basket, cover with a lid, and steam for 60 to 90 seconds. The bun will be warm and soft without getting soggy. A microwave works too: wrap the bun in a damp paper towel and microwave for 15 seconds.
- How long can I store leftover tartar sauce?
Keep it in a sealed jar or container in the fridge for up to five days. The flavor actually improves after a few hours as the relish and mayo meld together. It's worth making a double batch because it's great on any fried or baked fish you make during the week.
- What oil temperature should I use for frying the fish?
The target is 360°F to 375°F (182°C to 190°C). Below that range, the batter absorbs oil and turns greasy before the fish cooks through. Above it, the outside browns too fast. A clip-on fry thermometer or an instant-read digital thermometer is the most reliable way to hit this, especially if you're new to frying.