Skip to content
DishRoute.
Must try in Senegal

Thieboudienne.

Senegalese Fish and Broken Rice

Ceebu jën · Ceebu jen · say it: cheb-oo JEN

Thieboudienne is fish and rice cooked in sequence in a single pot, and the sequence is the whole point. Steaks of firm fish get slashed and packed with rof, a pounded green paste of parsley, garlic, scallion and chilli, then poached in a dark base of onion and tomato paste fried until it turns brick-red. The vegetables go in next and come out one by one as they soften; only then does the broken rice go into what is left, absorbing every bit of the seasoning until the pot runs dry and the bottom layer toasts. The result tastes savoury, faintly sour from tamarind, and much deeper than the ingredient list suggests. It is a long lunch, made for a shared bowl.

Platter of orange broken rice topped with fish steaks, cassava, carrot and cabbage wedges with a whole red chilli
Senegalese Fish and Broken Rice
Gate
Flag of Senegal SenegalSaint-Louis
Prep
40 min
Cook
1 hr 40 min
Total time
2 hr 20 min
Serves
6
Status
Takes skill
Nutrition / serving · estimated
Calories 720 kcal
Protein 42 g
Carbs 96 g
Fat 20 g
Fiber 7 g
Sodium 980 mg

Why this recipe works.

  • Builds the broth in the correct order, so the rice cooks in fish stock rather than water and needs no extra seasoning at the end.
  • Gives you a workable rof paste from ingredients any supermarket carries, instead of a shopping list you cannot fill.
  • Explains how to get xoon, the toasted rice crust, without scorching the pot.
  • Honest about the fermented seasonings: it tells you what nététou and guedj do and what the dish loses without them.

Ingredients.

23 items
Servings
6
Now showing amounts for 6 servings

For the rof paste

For the pot

For the vegetables

To finish

Equipment

  • Wide heavy pot or Dutch oven with a lid, at least 6 litres
  • Mortar and pestle or small food processor
  • Slotted spoon
  • Sharp knife

Instructions.

  1. Pound the rof and stuff the fish

    Pound the parsley, garlic, scallions, deseeded scotch bonnet and salt to a coarse green paste. Cut two deep slashes in each fish steak and push the paste well into the cuts, then set the fish aside while you start the base.

    Tip Work the paste in with your thumb until the slash bulges. Paste sitting on the surface washes straight off in the broth.

  2. Fry the onion and tomato base

    Heat the oil in a wide heavy pot over medium heat and cook the chopped onions with a pinch of salt for about 12 minutes, stirring, until they are limp and just starting to colour at the edges. Stir in the tomato paste and keep frying for another 8 to 10 minutes.

    Tip The paste is ready when it has gone from bright red to brick-dark and a clear ring of oil pools around it — not before.

  3. Build the broth

    Crush in the nététou and guedj if using, add the bay leaves, sliced onion and the whole scotch bonnet, then pour in the water. Bring to a boil, season generously with salt and pepper, and let it bubble for 10 minutes so the base dissolves into a smooth, dark broth.

    Tip Do not pierce the whole chilli. Intact, it perfumes the pot; split, it takes it over.

  4. Poach the fish

    Lower the stuffed fish steaks into the simmering broth in a single layer and cook gently for 15 to 20 minutes, until the flesh has turned opaque to the bone and slides off it when nudged. Lift the fish out with a slotted spoon onto a platter and cover it loosely.

    Tip Keep the broth at a lazy simmer with bubbles just breaking the surface. A rolling boil shreds the steaks.

  5. Cook the vegetables in stages

    Add the cassava, carrots and sweet potato to the broth and simmer for 15 minutes, then add the cabbage, eggplant and okra and cook for 10 minutes more. Remove each piece to the fish platter as soon as a knife tip slides in with no resistance.

  6. Season the broth for the rice

    Stir the strained tamarind liquid into the pot and taste. The broth should be noticeably sour, savoury and a shade saltier than you would drink it — the rice will absorb all of that. Measure out roughly 1.2 litres and set any excess aside for reheating.

    Tip If the broth tastes thin, boil it hard and uncovered for 5 minutes to concentrate it before you measure.

  7. Cook the rice and build the crust

    Tip the rinsed broken rice into the measured broth, stir once to level it, and simmer uncovered until the liquid drops below the surface of the grains, about 10 minutes. Cover, drop the heat to its lowest setting and steam for 20 minutes without lifting the lid.

    Tip In the last 5 minutes you should hear a faint crackle from the base of the pot. That is xoon forming; if you smell smoke instead, take it off the heat immediately.

  8. Assemble the bowl

    Fluff the rice with a fork, scrape up the toasted crust from the bottom and fold it through. Spread the rice on a wide platter, arrange the fish and vegetables over it, and spoon a ladle of hot broth across the top. Serve with lime wedges and the whole chilli in the middle.

Tips from our kitchen.

  • Use fish steaks cut across the bone, not fillets. Bone and skin hold the pieces together through 25 minutes of simmering and give the broth its body.
  • Fry the tomato paste far longer than feels reasonable — until it darkens to brick and oil beads out at the edge. Undercooked paste tastes tinny and turns the whole pot flat.
  • Pull each vegetable out the moment it yields to a knife tip. Cassava and carrot need far longer than cabbage, and everything left in the pot to the end collapses into mush.
  • Measure the broth before the rice goes in: you want roughly 1.5 times the volume of the dry rice for broken grains, and it should taste slightly too salty on its own.
  • For xoon, stop stirring once the rice is nearly dry, turn the heat to its lowest setting and listen — a faint crackle means crust, a smell of smoke means you waited too long.
  • If you can find nététou (fermented locust bean, also sold as soumbala or dawadawa), crush two lumps into the broth. It is the single ingredient that makes a home pot taste Senegalese rather than generic.

Substitutions.

Guedj (dried fermented fish) 2 anchovy fillets mashed into the onion base
Anchovy gives you salt and fermented depth but none of the smoky note. It is a reasonable stand-in, not a match.
Tamarind pulp Juice of 1 lime plus 1 tsp brown sugar, stirred in at the end
Tamarind gives a rounder, fruitier sourness; lime is sharper and hits earlier, so add it off the heat.
Broken rice Short-grain white rice, rinsed twice
Broken rice is sold in African, Indian and Middle Eastern grocers and is worth seeking out. Long-grain basmati is the worst choice here — it stays separate and refuses to absorb the broth.

Variations.

Ceebu jën weex (white thieboudienne)
No tomato paste at all. The broth stays pale gold, the fish flavour comes forward, and the tamarind sourness reads much more clearly.
Ceebu yapp
The same method built on lamb or beef instead of fish, with the meat browned first and simmered until it shreds.
Thiebou dienne with bitter eggplant
Add small African eggplants (jaxatu) with the cassava. Their bitterness cuts the richness and is much loved locally, though it divides visitors.

Storage & reheating.

Keep the rice and the fish and vegetables in separate containers for up to 2 days in the fridge, or the fish will break down into the grain. Reheat the rice covered with a splash of water over low heat until it steams, and warm the fish and vegetables briefly in any leftover broth. Freezing is not worth it: the cassava turns fibrous and the rice goes gluey on thawing. The rof paste, on the other hand, freezes well in a small jar for a month.

Serve with

Nothing else is needed — the dish is the meal. Serve from one wide platter with lime wedges and a whole simmered scotch bonnet on the side for anyone who wants to burst it into their own portion.

The story behind Thieboudienne.

Ceebu jën means, plainly, rice and fish in Wolof, and it is the dish Senegal puts forward as its own. In 2021 it was inscribed on the UNESCO Representative List of the Intangible Cultural Heritage of Humanity — recognised not just as a recipe but as a whole set of practices around fishing, the shared bowl and the way a family eats lunch together. Popular tradition credits its invention to Penda Mbaye, a nineteenth-century cook in Saint-Louis, though that attribution is oral rather than documented and Senegalese cooks tell it as heritage rather than history.

What is documented is the rice. Saint-Louis was the administrative capital of French West Africa, and broken rice — riz brisé, the fragments left over from milling and shipped cheaply from colonial Indochina — arrived in bulk through its port. It was the affordable grain, but it also turned out to be the better one for this dish: short, thirsty fragments that swell with broth instead of staying separate and polite. Senegalese cooks kept buying broken rice long after cheaper politics stopped requiring it, and today good markets in Dakar sell it graded by fineness.

Every household argues about the details. Thiebou dienne rouge, coloured with tomato paste, is the version most people mean; thiebou dienne blanc leaves the tomato out entirely and lets the fish and vegetables carry the colour. The vegetable list flexes with the season and the budget — cassava, cabbage, carrot, sweet potato, bitter African eggplant, okra, whole scotch bonnet — and there is no fixed number of them. The one thing nobody concedes on is xoon, the crust of rice caught on the bottom of the pot, which is scraped up, piled on top and disappears first.

Questions, answered.

Why is thieboudienne considered Senegal's national dish?

It is the everyday lunch of the shared bowl across most of the country, and it carries formal recognition too: in 2021 UNESCO inscribed ceebu jën on its Representative List of the Intangible Cultural Heritage of Humanity, citing the fishing, cooking and communal eating practices around it rather than the recipe alone.

What fish should I use if I cannot get thiof?

Thiof is white grouper, the prestige choice in Senegal. Any firm white fish cut into thick bone-in steaks works: grouper, sea bass, snapper, hake, kingfish or a thick cod loin. Avoid thin, flaky fillets, which fall apart during the simmer and cloud the broth you need for the rice.

What is rof and can I skip it?

Rof is the green stuffing pounded from parsley, garlic, scallion, chilli and salt, packed into slashes cut in the fish so it seasons from the inside out. You can skip it and the dish will still be pleasant, but it will taste one-dimensional — the herb paste is what makes each bite of fish distinct from the broth around it.

My rice came out mushy. What went wrong?

Almost always too much broth. Broken rice needs less liquid than whole grains, roughly one and a half times its volume, and it keeps absorbing after the heat goes off. Measure the broth rather than eyeballing it, and stop stirring once the liquid drops below the surface of the rice so the grains steam instead of being agitated into starch.

Can I make this in advance for a party?

Partly. Make the rof paste and cut the vegetables a day ahead, and you can even cook the fish and vegetables in the broth in the morning and set them aside. Cook the rice within an hour of serving, though — reheated thieboudienne rice never regains the loose, separate texture it has straight from the pot.

Keep exploring Senegal.

Senegal has 9 more dishes in the atlas — Bissap and Dibi, and 7 more.

Recipe by The DishRoute Kitchen · published August 20, 2026 · updated August 20, 2026