Go Back
Portuguese cod, caramelized onion and potato casserole (Bacalhau à Gomes de Sá)
Prep Time
30 mins
Cook Time
1 hr 30 mins
Total Time
2 hrs
In Portugal they say that there’s 1001 ways to prepare cod. We love most of the ones we’ve tried, but this is one of our favourites, and easy to prepare.
Course: Main, Main Course
Cuisine: Portugal, Portuguese
Keyword: Bacalhau à Gomes de Sá, Cod casserole, Portuguese cod
Servings: 6
  • 2.5 lbs or 1.13 kg salted cod
  • 3 lbs white potatoes about 6 potatoes
  • 1 tbsp kosher salt for boiling the potatoes
  • 3 cups fatty milk we used homogenized or 3.25%
  • 3/4 cups extra virgin olive oil
  • 4 medium cooking onions sliced in thin half wheels
  • 5 cloves garlic sliced thin
  • 2 tsp kosher salt for cooking the onions
  • 1 tsp white pepper
  • 2 bay leaves
  • 4 large eggs
  • 15 black olives + extra for serving with the finished dish
  • 1/2 cup flat leaf or Italian parsley chopped
  • Extra olive oil for the table in case anyone wants a little extra over their serving
  1. Place the cod in a large bowl and cover with water.
  2. Refrigerate for at least 24 hours to remove the salt.
  3. Place the cod in a large pot, bring to a boil and reduce the heat. Simmer for about 10 minutes or until the fish flakes.
  4. Drain and set aside to cool.
  5. Place the potatoes (whole) in another large pot.
  6. Add 1 tbsp salt.
  7. Bring to a boil and reduce the heat. Simmer for about 30 minutes or until you can easily poke through a potato with a fork. Timing will depend on the size of the potatoes.
  8. Set the potatoes aside to cool.
  9. Once the potatoes are cool enough to be handled with your hands, peel them and cut them into wheels.

  10. Remove the skin and debone the cooled cod.
  11. Flake the cod (large pieces) into a large bowl.
  12. Heat the milk in a pot just until before the boiling point and remove from the heat.
  13. Pour the milk over the cod pieces, cover (with a lid or place a plate over the bowl) and let sit for 1 to 2 hours.
  14. In a large deep pan, heat the oil on medium.
  15. Add the sliced onions and garlic.
  16. Add the salt, pepper and bay leaves.
  17. Mix well to coat everything in the olive oil.
  18. Cook on medium for about 20 minutes or until the onions are caramelized. Cook slow and do not brown the onions. If the pan seems a bit hot, reduce the temperate.
  19. Remove the bay leaves and set aside.
  20. While the onions are cooking, hard bail 4 eggs, and set aside to cool.
  21. Once the eggs are cool, peel them and carefully cut them into circles. Don’t worry if some of the slices break a little.
  22. Preheat the oven to 425ºF.
  23. Drain out the milk from the fish. Discard the milk.
  24. In a large clay or other deep baking dish, assemble the ingredients.
  25. Spread about 1/3 of the onions evenly on the bottom of the baking dish.
  26. Spread about half of the potato wheels over the onions.
  27. Spread 1/2 the fish flakes over the potatoes.
  28. Sprinkle half the chopped parsley over the fish.
  29. Spread another 1/3 of the onions evenly over the fish.
  30. Spread the remaining potato wheels over the onions.
  31. Spread the remaining fish flakes over the potatoes.
  32. Spread the remaining onions evenly over the fish.
  33. Place the dish in the oven on the middle rack and bake for 15 to 20 minutes, or until the onions and fish edges start to brown.
  34. Remove the baking dish from the oven.
  35. Place the eggs, olives and remaining parsley evenly over the top and serve hot.
  36. Enjoy!