Oha soup, also known as ofe ora by the Igbo people of southeastern Nigeria, is a hearty, protein-rich stew built around tender meat, smoked and dried fish, and a generous amount of tender Oha leaves. Traditionally served with pounded yam, fufu, eba, or other “swallows,” this soup is deeply flavorful, comforting, and packed with wholesome ingredients.

I’ve long wanted to prepare an authentic Oha soup, and this version mixes tradition with practical substitutions. My mother’s recipe uses achi as the thickener, and after she reunited with us in the US she brought along fresh Oha leaves and other essentials that are difficult to find here. Seeing the fresh leaves kept me excited to recreate the real thing.
Fresh Oha leaves add a distinct aroma and flavor that are essential to the dish. When you cannot find Oha, some cooks combine other leafy greens in small amounts, but for the authentic taste, try to source the real leaves if possible.
Reasons Why We Love this Oha Soup Recipe
- Simple to follow: the main task is cooking the protein until tender; a pressure cooker speeds this up if needed.
- Perfect with many swallows: serves beautifully with pounded yam, fufu, semolina, eba, or wheat-based swallows.
- Flexible thickening options: use achi, ukpo (Mucuna/horse eye bean), or cooked cocoyam paste (ede) depending on availability.
- Customizable proteins: use goat, beef, cow leg, or mixed seafood and smoked fish to suit taste and budget.
📃 Ingredient Description
Key ingredients and their roles in the soup:

- Oha leaves: Tender leaves with an earthy, slightly bitter, peppery note that lend the soup its signature aroma and flavor.
- Achi: A powdered seed used as a thickener and emulsifier for traditional soups; you can substitute ukpor or cooked cocoyam paste.
- Stock/dried fish: Adds a deep smoky, savory note. Add toward the end if you want the fish to retain texture.
- Proteins: Common choices are goat meat, beef, cow leg, tripe, or a mix of smoked fish, stock fish, and seafood like periwinkle or snails. Use what’s available and affordable.
- Palm oil: Unrefined palm oil gives the soup its vibrant color, silky texture, and rich flavor.
- Seasonings: Ground crayfish, local pepper (Cameroon pepper, Ghana pepper, or Nigerian chili), stock cube(s), and ogiri or okpei for an extra umami punch.
💭 Variations and Substitutions

- Thickener: Achi, ukpor, or cooked cocoyam paste work well. If using cocoyam, cook until soft then pound into a smooth paste or cut into small chunks.
- Protein swaps: Substitute goat with beef chuck, cow leg, kpomo (cow skin), or a mixture of smoked fish and shellfish.
- Mushrooms: If snails are unavailable, rehydrated shiitake or other mushrooms provide a pleasant, meaty texture.
- Greens: A touch of uziza leaf can complement Oha leaves for a layered flavor.
- Pepper: Use local chiles in place of Cameroon pepper. Adjust heat to taste.
📝 Step-by-Step Instructions

Step 1: Place seasoned goat meat in a large pot with one stock cube, Cameroon peppers (or preferred pepper), salt, and about 3 cups of water. Cover and cook on high until the meat is tender—about 30–45 minutes depending on cut and gender of the goat. Use a pressure cooker on high for about 3 minutes with natural release to save time.
Step 2: Add the dried fish briefly to the pot to release flavor, then remove it to preserve its texture. Add additional water (about 8 cups total), bring to a boil, then slowly pour in the palm oil while stirring to distribute it evenly.
Step 3: Sprinkle in the achi (or chosen thickener) while stirring continuously to prevent lumps. Cover and cook 1–2 minutes until the soup begins to thicken.
Step 4: Stir in ogiri (or okpei), cooked stock fish, periwinkle, ground crayfish, snails (if using), remaining stock cube, and additional pepper or salt to taste. Reduce heat and simmer for several minutes so the flavors meld.

Step 5: Return the dried fish to the pot and simmer briefly so it warms through but retains texture.
Step 6: Add the fresh Oha leaves, stir gently, and cook uncovered for about 2 minutes. Remove from heat and serve immediately with your preferred swallow such as pounded yam, fufu, or eba.
👩🏽🍳 Maur’s Tips
Tried-and-true tips to get the best results:
- Female goat meat can take longer to become tender. Use a pressure cooker to cut time if needed.
- Add dried fish toward the end to help it keep its shape and texture. If added too early it may fall apart into the soup.
- Snails can be expensive; look for smaller snails or escargot as a more affordable option.
- Never chop Oha leaves with a knife. Tear them apart gently with your fingers to preserve texture and aroma.
- To increase yield, add more broth and adjust thickener and seasoning to taste.

📝 Recipe FAQs
Oha soup originates from southeastern Nigeria and is traditionally enjoyed by the Igbo people.
Yes. Oha soup can be prepared in advance and often tastes even better after the flavors meld. Reheat gently before serving.
Yes. Store the cooled soup in airtight containers and freeze for up to three months. Thaw overnight in the fridge and reheat slowly to preserve flavor and texture.
📖 Recipe
Oha Soup
Oha soup (ofe ora) is a traditional Igbo soup made with tender meat, smoked and dried fish, palm oil, and fresh Oha leaves. Serve with pounded yam, fufu, or eba.
Equipment
- Large non-stick pot or heavy saucepan
Ingredients
- 1 lb 11 oz (approx. 763 g) goat meat
- 10 oz (295 g) cooked stock fish
- 1/2 cup periwinkle
- 6 oz (184 g) snail (optional)
- 1/2 cup ground crayfish
- 9 oz (256 g) dried fish, cleaned
- 3 habanero peppers or scotch bonnet, minced
- 4 oz (128 g) fresh Oha leaves, picked and rinsed
- 2 stock cubes (preferably chicken)
- 1 tablespoon ogiri or okpei (optional)
- 1/2 cup achi (thickener)
- Cameroon peppers or preferred chili to taste
- 1/2 cup unrefined palm oil
- 1/2 teaspoon salt, or to taste
- Water as needed
Instructions
- Add the goat meat, one stock cube, salt, and 3 cups of water to a large pot. Cover and cook on high until the meat is tender (about 30–45 minutes depending on cut). Use a pressure cooker to reduce time if desired.
- Add the dried fish for 2–3 minutes to release flavor, then remove it to preserve its texture.
- Add about 8 cups of water in total and bring to a rolling boil. Slowly pour in the palm oil while stirring to combine.
- Sprinkle in the achi while stirring constantly to prevent lumps. Cover and cook for 1–2 minutes until the soup begins to thicken.
- Add ogiri, stock fish, periwinkle, ground crayfish, remaining stock cube, snail (if using), minced peppers, and additional salt to taste. Simmer over medium-low heat for 6–8 minutes to meld flavors.
- Return the dried fish to the pot, simmer for 1 minute, then add the Oha leaves. Cook uncovered for 2 minutes, remove from heat, and serve with pounded yam, fufu, or eba.
Notes
- Pressure cooking goat meat saves time—3 minutes on high with natural release often works well for tender results.
- Add dried fish late in the cooking process to keep it intact rather than disintegrating into the soup.
- If fresh Oha is unavailable, use a small amount of a complementary leafy green, but the unique flavor of Oha is best when available.
- Tear Oha leaves with your fingers instead of chopping them to preserve aroma and texture.
Nutrition information is an estimate and may vary based on exact ingredients and portions.
Nutrition (per serving, estimate)
Calories: 557 kcal | Carbohydrates: 2 g | Protein: 77 g | Fat: 26 g | Sodium: variable
Whether you are an experienced cook or new to West African cuisine, this Oha soup offers a rich combination of textures and flavors that make it a memorable centerpiece for family meals.
If you try this recipe, please leave a rating and share your experience in the comments. Your feedback helps refine and preserve traditional recipes for others.
PEACE & LOVE
Maureen