
Moroccan Zaalouk Eggplant and Tomato Dip
A smoky, garlicky Moroccan cooked salad of roasted eggplant and ripe tomatoes, simmered slowly with cumin, paprika, and olive oil until jammy, then finished with fresh cilantro and lemon. Serve warm or at room temperature with warm bread.
- Prep
- 20 min
- Cook
- 1 hr 10 min
- Wait
- 15 min
- Total
- 1 hr 45 min
- Makes
- About 3 cups (6 servings as a dip or side)
Steps
Before you start
- Position an oven rack in the center and preheat to 425°F (220°C).
- Choose ripe, in-season tomatoes for the best flavor; if they are pale or hard, use canned whole tomatoes (see substitutions).
- Total time is about 1 hour 45 minutes, but most of it is hands-off roasting and simmering.
- Line the baking sheet with parchment for easy cleanup.
Preheat and prep eggplantOven 425°F / 220°C
- Heat the oven to 425°F (220°C) and line a rimmed baking sheet with parchment.
- Trim the stems from the eggplants and pierce each one 8–10 times with a fork.
- Rub the skins with 1 tablespoon of the olive oil and set them on the baking sheet.
+ Show details− Hide details
Ready when: Oven is fully preheated and eggplants are oiled all over.
Tip: Piercing the skin lets steam escape so the eggplants don't burst.
Roast the eggplantOven 425°F / 220°C
- Roast the eggplants in the center of the 425°F (220°C) oven for 40–45 minutes, turning once halfway, until the skins are wrinkled and charred in spots and the flesh is completely collapsed.
+ Show details− Hide details
Ready when: A knife slides into the thickest part with no resistance and the eggplants slump when nudged.
Tip: Undercooked eggplant turns the dip bitter and spongy, so err on the side of longer.
Grate the tomatoes
- While the eggplants roast, halve the tomatoes and grate the cut sides on the large holes of a box grater into a bowl, stopping when you reach the skin.
- Discard the skins.
- You should have about 2½ cups (600 g) of pulp and juice.
- Mince the garlic and chop the cilantro.
+ Show details− Hide details
Ready when: Only flat tomato skins remain in your hand.
Tip: Grating removes the skins without the need to blanch.
Cool and drain eggplant
- Transfer the roasted eggplants to a colander or sieve set over a bowl.
- Cool for 15 minutes, then slit each open and scrape out the flesh, discarding the skins and any large clusters of seeds near the stem.
- Let the flesh drain for a few minutes, then chop roughly.
+ Show details− Hide details
Ready when: Flesh is soft, creamy, and no longer dripping heavily.
Tip: Draining prevents a watery dip.
Bloom the aromatics
- Heat the remaining 3 tablespoons olive oil in a 12-inch (30 cm) skillet over medium heat for 1 minute.
- Add the garlic, cumin, paprika, and cayenne if using.
- Stir constantly for 45–60 seconds.
+ Show details− Hide details
Ready when: The garlic smells fragrant and is pale gold, not brown, and the oil turns deep red.
Tip: If the garlic browns it turns bitter. Add the tomatoes immediately if it starts to darken.
Simmer the tomatoes
- Pour in the grated tomatoes and juice, add 1 teaspoon of the salt, and bring to a simmer over medium heat.
- Reduce to medium-low and cook uncovered, stirring occasionally, for 15 minutes.
+ Show details− Hide details
Ready when: The sauce is noticeably thicker and the oil starts to pool at the edges.
Add eggplant and mash
- Add the chopped eggplant to the skillet.
- Mash with a potato masher or wooden spoon until mostly broken down but still slightly rustic.
- Stir to combine.
+ Show details− Hide details
Ready when: No large eggplant chunks remain and the mixture looks cohesive.
Slow-cook until jammy
- Cook over low heat, uncovered, stirring every 5 minutes and scraping the bottom, for 25–30 minutes.
- If it sticks or looks dry, add 2 tablespoons water.
+ Show details− Hide details
Ready when: When you drag a spoon across the pan, the trail holds for 2–3 seconds and the oil has separated at the edges. No watery liquid remains.
Tip: Don't rush with high heat; it will scorch and the flavor will turn sharp.
Finish and season
- Remove from the heat.
- Stir in the cilantro, lemon juice, remaining ¼ teaspoon salt, and black pepper.
- Taste and adjust with more salt or lemon juice until bright and well balanced.
+ Show details− Hide details
Ready when: Tastes savory, smoky, and slightly tangy, with no raw garlic edge.
Tip: Add the cilantro off the heat to keep its color and fresh flavor.
Serve
- Spoon into a shallow bowl and make a swirl on top.
- Serve warm or at room temperature with warm bread, pita, or crudités.
+ Show details− Hide details
Tip: The flavor improves after resting 30 minutes.
Good to know
Tips
- Roasting the eggplant whole gives a smoky depth similar to traditional charring over a flame; for more smoke, char the skins briefly under the broiler at the end.
- Use a wide skillet so moisture evaporates quickly and the dip becomes jammy rather than soupy.
- Keep some texture when mashing; a fully smooth purée loses the traditional character.
- Drizzle with extra olive oil and sprinkle with paprika before serving for a restaurant-style finish.
Make ahead
Zaalouk tastes better the next day. Make it up to 3 days ahead, cool completely, and refrigerate in an airtight container. Bring to room temperature or reheat gently before serving.
Storage & reheating
Room temperature: up to 2 hours. Refrigerator: up to 4 days in an airtight container. Freezer: up to 2 months; thaw overnight in the fridge. Reheat in a skillet over low heat with a splash of water, stirring, until warmed through, or serve cold.
Substitutions
- ripe tomatoes → One 28-ounce (800 g) can whole peeled tomatoes, crushed by hand. Use with juices; simmer a few extra minutes to thicken.
- fresh cilantro → Flat-leaf parsley, or a half-and-half mix. Parsley gives a milder, grassier flavor.
- cayenne pepper or hot paprika → Harissa, ½ teaspoon. Add with the garlic and spices for gentle heat.
- lemon → Red wine vinegar, 1 tablespoon. Add gradually and taste.
More dips & spreads
See all →Find more like this
- Meal
- Lunch
- Cuisine
- Moroccan
- Quick & Easy
- EasyMake AheadBudget





