
Hand-rolled couscous steamed three times over a tomato-and-harissa-spiced broth of whole grouper or sea bream, chickpeas, carrot, turnip, and potato, finished with capers and preserved lemon. The Tunisian Friday-feast couscous; coast specialty distinct from the inland lamb version.
Fish couscous is the Tunisian coastal Friday meal — Bizerte, Hammamet, Mahdia, and Sfax all have their variants. The Berber roots of couscous are universal across North Africa, but the Tunisian version is distinguished by the heavy harissa and tomato base and the use of whole fish (rather than the lamb-and-vegetable inland standard). Fridays after mosque prayer, couscous comes out of every Tunisian kitchen — the smell traveling through neighborhoods is the country's defining Friday signature.
Fork lifts couscous coated in tomato-orange broth, with chunks of carrot, potato, turnip, and tender fish flakes. The grains are fluffy-separate, each holding broth without clumping — that's the three-steam technique paying off. Harissa heat sits behind tomato sweetness; caraway-coriander warmth gives the Tunisian-Maghreb signature. Capers pop briny; preserved lemon bursts citrus. Friday-feast satisfaction in every spoonful.
Three-stage steaming is the structural heart: each rest-and-rub cycle redistributes moisture and separates grains. Without it, couscous becomes a single starchy mass. The broth's harissa-and-tomato deep-cooks during the steaming hours, concentrating flavor. Adding fish only in the final stage prevents overcooking — fish flesh becomes papery if simmered as long as the root vegetables.
Variations
Sfax-style adds octopus pieces alongside the fish. Bizerte-style uses sardines. Inland Mahdia substitutes lamb shoulder (a hybrid coast-inland version). Vegetarian couscous skips fish and adds extra zucchini and squash. Modern Tunis restaurants serve individual portions with a single fish fillet rather than the whole fish.
On the Palate
Where Couscous Tunisien au Poisson sits in the Tunisian flavor cloud
Steam the couscous in three rest-and-rub cycles rather than boiling it — each cycle redistributes moisture and separates the grains, which is the only thing standing between fluffy couscous and one starchy lump.
Ingredients
Serves 6How it's made
10 steps · 1 hour 10 min active + 1 hour 20 min waiting
- 122 min
Couscous prep: place 500 g medium couscous in a wide bowl. Sprinkle with 100 ml water + 2 tbsp olive oil + 1 tsp salt. Rub with fingertips to separate grains. Rest 20 min.
Watch outThe grains should feel damp and separate, not wet — sprinkle water gradually so nothing clumps before it even hits the steamer.
- 27 min
Broth base: heat 4 tbsp olive oil in a couscoussier or large pot. Add 1 chopped onion, 4 chopped garlic; sauté 6 min until golden.
- 33 min
Stir in 2 tbsp harissa, 2 tbsp tomato paste, 1 tsp caraway, 1 tsp coriander seed, 1 tsp cumin, ½ tsp paprika. Cook 2 min.
- 46 min
Add 1.5 L water + 400 g passata + 1 cup cooked chickpeas + 3 carrots cut into chunks + 2 turnips cut into chunks + 2 potatoes quartered + 1 tsp salt. Bring to gentle boil.
- 526 min
Place steamer-top with couscous over broth. Cover loosely. Steam 25 min while broth simmers below.
Watch outKeep the broth at a lazy simmer under the couscous; a hard boil throws water up and gums the bottom grains.
- 616 min
Lift couscous off, return to bowl. Sprinkle with 100 ml warm broth + 1 tbsp butter. Rub grains. Steam again 15 min.
- 714 min
Add fish to broth: 1 whole gutted sea bream or grouper (about 1.5 kg, scored on both sides). Simmer gently 12-15 min until fish flesh flakes.
Watch outFish is done the instant the flesh flakes at a gentle poke and turns opaque to the bone — pull it before it dries.
- 85 min
Lift couscous off final time, return to bowl. Sprinkle with 100 ml broth. Rest 5 min.
- 96 min
Plate: mound couscous on a large platter. Lift fish onto top. Arrange vegetables around. Ladle broth generously over. Garnish with 2 tbsp capers, sliced preserved lemon, chopped parsley.
- 105 min
Serve hot with extra harissa on the side. Each diner customizes broth amount.





