Chef-tested recipe
Senegalese herb-stuffed fish and broken rice cooked in tomato broth with cassava, cabbage, carrot, eggplant, okra, and tamarind

Thiéboudienne, also written ceebu jën, is Senegal’s renowned rice-and-fish dish. Firm fish is filled with a pungent rof of parsley, garlic, scallion, chilli, and pepper, then cooked with a tomato broth and a generous selection of vegetables. Broken rice absorbs the seasoned liquid after the fish and vegetables are removed, allowing every component to be served together on one communal platter.
Recipe at a glance
- Servings
- 6 servings
- Prep Time
- 50 mins
- Cook Time
- 1 hour 35 mins
- Resting Time
- 10 mins
- Total Time
- 2 hours 35 mins
- Cuisine
- Senegalese
- Course
- Main dish
- Cooking Method
- Herb-stuffing, frying, broth simmering, steaming, and absorption cooking
- Difficulty
- Advanced
- Best Served With
- Best served communally with the tamarind accompaniment, lime wedges, and a small chilli relish.
Before you begin
Ingredients & equipment
Gather what you need first, then cook through the method with confidence.
As an Amazon Associate I earn from qualifying purchases. Ingredient and equipment links marked “paid link” may earn a commission at no extra cost to you.
Equipment
- Large heavy stockpot with lidpaid link
- Perforated steamer insertpaid link
- Large serving platterpaid link
- Mortar and pestle or blenderpaid link
- Chef’s knifepaid link
- Cutting boardpaid link
- Wooden spoonpaid link
- Digital kitchen scalepaid link
Ingredients
For the fish and rof
- Whole firm white fish such as grouper or red snapper, scaled and cleaned: 1.5 kg
- Flat-leaf parsley, leaves and tender stems: 50 g
- Garlic: 35 g
- Spring onions: 60 g
- Scotch bonnet chilli, seeded if desired: 12 g
- Black peppercorns: 4 g
- Fine sea saltpaid link: 8 g
- Fresh lemon juice: 30 ml
For the tomato broth
- Peanut oilpaid link: 120 ml
- Yellow onions, finely chopped: 300 g
- Tomato paste: 150 g
- Ripe tomatoes, grated: 400 g
- Dried salted fish, rinsed: 60 g
- Nététou or fermented locust beans, rinsedpaid link: 20 g
- Bay leaves: 2
- Water: 2 litres
- Fine sea saltpaid link: 10 g
For the vegetables and rice
- Carrots, cut into large pieces: 300 g
- Green cabbage, cut into wedges: 450 g
- Cassava, peeled and cut into chunks: 400 g
- Sweet potato, peeled and cut into chunks: 350 g
- Eggplant, cut into large pieces: 300 g
- Okra: 150 g
- Whole Scotch bonnet chilli: 1
- Broken rice, rinsed and drainedpaid link: 600 g
- Tamarind pastepaid link: 30 g
- Warm cooking broth: 80 ml
Preparation Overview
Cut three deep pockets in the thick flesh of the fish without cutting through the bone. Pound or blend the rof ingredients into a coarse paste and fill the pockets. Rinse the broken rice until the water is mostly clear and drain thoroughly. Cut vegetables into large pieces so they survive the long simmer.
Method
Pound the parsley, garlic, spring onions, chilli, peppercorns, salt, and lemon juice into a coarse rof.
Fill the cuts in the fish with most of the rof, reserving about 30 g for the broth.
Heat the peanut oil in a large heavy pot. Fry the fish for 4 to 5 minutes per side until lightly coloured, then remove carefully.
Add the onions to the pot and cook for 5 minutes. Stir in the tomato paste and fry for 8 minutes until darkened and glossy.
Add the grated tomatoes, dried salted fish, nététou, bay leaves, reserved rof, water, and salt. Simmer for 15 minutes.
Add the carrots, cabbage, cassava, sweet potato, eggplant, okra, whole Scotch bonnet, and fried fish. Simmer gently for 25 to 35 minutes, removing each item as it becomes tender.
Place the drained broken rice in a perforated steamer over the simmering broth and steam for 15 minutes, then return it to a bowl and break up any clumps.
Measure enough broth to cook the rice by absorption, returning surplus broth to a small saucepan for serving. Add the steamed rice to the main pot, cover tightly, and cook over low heat for 20 to 25 minutes.
Mix the tamarind paste with 80 ml warm broth, strain if fibrous, and serve it as a sharp accompaniment.
Rest the rice for 10 minutes, fluff gently, then arrange it on a large platter with the fish and vegetables and spoon over a little reserved broth.
Beginner Technique Notes
Use firm whole fish or thick steaks; delicate fillets will break during the long preparation.
Fry tomato paste until it darkens slightly. This removes raw acidity and builds the characteristic red base.
Remove vegetables separately as they become tender so the cabbage and okra do not collapse while cassava finishes cooking.
Broken rice absorbs quickly. Keep the heat low and add a little reserved broth only if the grains are still firm.
Tips and Variations
Thiof, a local grouper, is highly valued; red snapper or sea bass are practical substitutes.
Nététou and dried fish provide traditional fermented depth. Use modestly if unfamiliar with their strength.
Vegetable selection changes with the market; turnip, pumpkin, or bitter eggplant may join the platter.
For ceebu jën bu weex, the white variation, omit the tomato paste and grated tomato and adjust the broth seasonings.
Serving Ideas
- Spread the red broken rice across a very large platter. Place the fish in the centre and arrange the vegetables by colour around it, spooning a little broth over the fish without soaking the rice.
Storage
Separate fish, vegetables, and rice into shallow containers and refrigerate within 2 hours for up to 2 days. Reheat until steaming throughout. Do not repeatedly cool and reheat cooked rice. Freeze the tomato broth separately for up to 2 months.
Nutritional Value
Allergen Notes
Contains fish. Peanut oil is used; include a peanut warning even when highly refined oil is selected. Nététou is fermented locust bean, not a tree nut. Check dried fish for cross-contact.
Frequently Asked Questions
What does thiéboudienne mean?
The name comes from Wolof words referring to rice and fish; ceebu jën is another common spelling.
Why use broken rice?
Its smaller grains absorb the seasoned broth readily and create the cohesive texture associated with the dish.
Is the fish always stuffed?
A parsley, garlic, chilli, and pepper rof pushed into cuts in the fish is a defining flavour-building technique.
Can I cook the rice separately?
You can, but cooking it in the tomato fish broth is central to the dish’s flavour and character.
