Sicilian Caponata (Sweet-and-Sour Eggplant)
Caponata is the dish that taught me eggplant can taste luxurious. Sicily’s sweet-and-sour eggplant stew, an agrodolce of tomato, celery, olives, capers, raisins and vinegar, is salty, tangy and sweet all at once, and it gets better as it sits.
My first batch, though, was heavy and swimming in oil. The fix came down to two things: salting the eggplant for a full 30 minutes before frying, and letting the tomato sauce thicken before the eggplant goes in. Salting draws out water, and University of Illinois Extension notes that it helps eggplant absorb less oil during cooking. In my testing, it meant I could cut the frying oil from 150 ml to about 100 ml and still get browned, creamy cubes.
Frying in olive oil isn’t a compromise here. University of Granada researchers found that deep-frying eggplant and other vegetables in extra virgin olive oil increased their phenolic compounds, because phenols from the oil transferred into the vegetables, as FoodNavigator reported. The trade-off is extra calories from the absorbed oil, which is one more reason to salt well and keep the oil in check. If frying worries you, my guide to frying with extra virgin olive oil explains why it holds up so well to the heat.
Follow this recipe and you’ll have a caponata with eggplant that holds its shape, a thick, glossy sauce, and a sweet-sour balance that’s mellow rather than sharp.

What I Learned From Testing This Recipe
Recipe Testing Note Tested in 2 full rounds, plus a roasted-eggplant variation. Last updated: October 2026. Equipment: induction stovetop, 28 cm heavy stainless-steel skillet (round 2), plus a 24 cm saucepan for the sauce in round 1. Key variables tested: salting time, frying oil quantity, sugar and vinegar levels, when to add the eggplant, and frying vs. roasting.
In round 1, I cut the eggplant into roughly 3 cm cubes, salted them for only 10 minutes, and fried them in about 150 ml of olive oil in 2 batches, 8 to 10 minutes each. The eggplant soaked up a lot of oil and turned soft and mushy. I made the sauce in a separate saucepan, simmered it for just 10 minutes, and added the eggplant while the sauce was still loose. The result tasted of good eggplant, but it was heavy and oily, too sweet, sharp from the vinegar, and the celery still had too much bite.
For round 2, I changed almost everything about the method and very little about the ingredients. I cut the eggplant slightly smaller (2½ to 3 cm), salted it with 1 teaspoon of salt for 30 minutes, patted it dry, and fried it in 3 smaller batches with about 100 ml of oil in total, letting each side brown before turning. I cooked the sauce 10 minutes longer, cut the sugar and vinegar, added the eggplant only once the sauce was thick, and stirred in the pine nuts at the very end. It made a big difference: browned eggplant that still held its shape, and a balanced sauce.
What I changed after testing: Salting went from 10 to 30 minutes, frying oil from 150 ml to about 100 ml, brown sugar from 2 to 1½ tablespoons, and red wine vinegar from 3 to 2½ tablespoons, because round 1 was oily, too sweet and too sharp. I also simmered the sauce for 20 minutes before the eggplant went in, because the round 1 sauce was still thin and watery when I added it.
I also tried roasting the eggplant instead of frying it: tossed with about 2 tablespoons of olive oil and roasted in a 220°C (425°F) fan oven for 25 to 30 minutes. It was easier and much less oily, and it tasted good, but fried eggplant felt more like the caponata I wanted. Both versions are in the substitutions table below.
Ingredients
Serves 4 to 6 as a side, or about 4 as a light main with bread. Prep: 20 minutes | Salting: 30 minutes | Cooking: about 55 minutes | Total: about 1 hour 20 minutes
For the eggplant
- 900 g (about 2 lb) eggplant, cut into 2½ to 3 cm (about 1 inch) cubes
- 1 teaspoon salt, for salting the eggplant
- About 100 ml (a scant ½ cup) olive oil, for frying, used in batches
For the sauce
- 1 large yellow onion (about 180 g), diced
- 3 celery stalks, thinly sliced
- 400 g (14 oz) crushed tomatoes
- 2 tablespoons capers, drained
- 100 g (about ⅔ cup) pitted green olives, halved
- 40 g (about ¼ cup) raisins
- 2½ tablespoons red wine vinegar
- 1½ tablespoons brown sugar
- ¼ teaspoon salt, plus more to taste
To finish
- 30 g (about ¼ cup) pine nuts
- 1 handful fresh basil leaves, torn
The total salt in my final version was 1¼ teaspoons: 1 teaspoon for salting the eggplant and the rest in the sauce. Olives and capers are already salty, so taste before adding more.

Before You Start: What to Watch For
- Don’t rush the salting. Ten minutes wasn’t enough in my first round. Thirty minutes draws out enough moisture that the eggplant browns instead of soaking up oil.
- Pat the eggplant completely dry. Wet cubes spatter in hot oil and steam instead of browning.
- Fry in small batches. Three batches in a 28 cm skillet worked best. A crowded pan drops the oil temperature, and the eggplant turns greasy. My guide to how to cook with olive oil explains how to read the shimmer that tells you the oil is ready.
- Let the cubes brown before turning. Moving them constantly in round 1 gave me pale, soft eggplant.
- Make the sauce thick before the eggplant goes in. If the eggplant joins a watery sauce, it absorbs liquid and breaks down.
- Plan to let it rest. Caponata tastes noticeably better after 30 to 60 minutes at room temperature, and best the next day.
Method
- Salt the eggplant. Toss the eggplant cubes with 1 teaspoon of salt in a colander set over a bowl, and leave for 30 minutes. The cubes will look damp and beaded with moisture, and some liquid will collect in the bowl.

- Dry the eggplant. Pat the cubes thoroughly dry with a clean kitchen towel or paper towels. They should feel dry to the touch, not slick.
- Heat the oil. Pour about a third of the olive oil into a 28 cm heavy skillet over medium-high heat. It’s ready when the surface shimmers and a cube of eggplant sizzles steadily the moment it goes in.
- Fry the eggplant in 3 batches. Add a third of the eggplant in a single layer with a little space between the cubes. Let it cook undisturbed until the undersides are deep golden-brown before turning, then fry for 6 to 8 minutes per batch in total. The cubes are done when the outsides are browned and the insides are soft but the cubes still hold their shape. Transfer to a plate and repeat with the remaining oil and eggplant. In my testing, this step took 20 to 25 minutes in all.

- Soften the onion and celery. Lower the heat to medium. In the same skillet, cook the onion and celery in the oil left in the pan for 10 to 12 minutes, stirring often, until the onion is translucent and the celery has softened. If the pan looks completely dry, add a small splash of olive oil.
- Add the tomatoes, capers, olives and raisins. Stir in the crushed tomatoes, capers, olives, raisins and ¼ teaspoon of salt. Bring to a gentle simmer over medium-low heat.
- Simmer uncovered. Let the sauce simmer for 20 minutes uncovered, stirring occasionally. This is the step I rushed in round 1, and it’s the one that matters most for texture.
- Add the vinegar and sugar halfway through. After about 10 minutes of simmering, stir in the red wine vinegar and brown sugar, then continue simmering for the remaining 10 minutes. The sharp vinegar smell softens as it cooks.
- Check the sauce before adding the eggplant. The sauce is ready when it’s thick and shiny, with no watery puddle around the vegetables. The celery should be soft but still visible.

- Add the eggplant. Gently fold the fried eggplant into the sauce and cook for a final 8 to 10 minutes, stirring carefully so the cubes stay whole. The caponata is done when the eggplant is coated in sauce and still visible as distinct cubes.
- Taste and adjust. Taste for balance. It should be sweet-and-sour rather than strongly vinegary. Add a pinch more salt only if needed, remembering the olives and capers.
- Finish and rest. Take the pan off the heat, stir in the pine nuts and torn basil, and let the caponata rest for 30 to 60 minutes at room temperature. Served hot, the vinegar tasted stronger and the tomato flavor felt separate. After resting, the eggplant had absorbed the sauce and everything tasted more balanced.
Tested Substitutions
| Original ingredient | Tested substitute | Result |
|---|---|---|
| Green olives | Kalamata olives | Stronger, saltier flavor |
| Brown sugar | White sugar | Worked, but less caramel-like |
| Red wine vinegar | White wine vinegar | Sharper and less rounded |
| Raisins | Chopped dried apricots | Sweeter and softer |
| Pine nuts | Almonds | Good crunch, but less traditional-tasting |
| Fried eggplant | Roasted eggplant (2 tbsp oil, 220°C / 425°F fan oven, 25 to 30 min) | Much less oily and easier, with a slightly different flavor |
| Crushed tomatoes | Fresh tomatoes (untested) | I haven’t tried this yet. Let me know in the comments. |
| Brown sugar | Honey (untested) | I haven’t tried this yet. Let me know in the comments. |
| Red wine vinegar | Apple cider vinegar (untested) | I haven’t tried this yet. Let me know in the comments. |
| Green olives | Black olives (untested) | I haven’t tried this yet. Let me know in the comments. |
Why This Recipe Can Fail (And How to Fix It)
Common Problems
- Too oily and heavy: The eggplant wasn’t salted long enough, or it was fried in a crowded pan with too much oil. In round 1, 10 minutes of salting and 150 ml of oil gave me greasy eggplant. Salt for the full 30 minutes, pat dry, and fry in 3 batches with about 100 ml of oil in total.
- Mushy eggplant: The eggplant went into a thin sauce too early, or the cubes were turned before they had browned. Let each side brown before turning, and add the eggplant only for the final 8 to 10 minutes, once the sauce is thick.
- Thin, watery sauce: It wasn’t simmered long enough. My round 1 sauce was still loose after 10 minutes. Simmer uncovered for 20 minutes, until no watery puddle remains around the vegetables.
- Too sweet: Too much sugar. Two tablespoons of brown sugar was too much in my first round. One and a half tablespoons gave a balanced sweet-and-sour result.
- Too sharp or vinegary: The vinegar went in late, there was too much of it, or you’re tasting it straight off the stove. I reduced it from 3 to 2½ tablespoons and added it halfway through the simmer. Then let the caponata rest. The sharpness softens noticeably after an hour, and more by the next day.
- Crunchy celery: The celery needs a long, gentle cook. Give the onion and celery the full 10 to 12 minutes before the tomatoes go in, and let the sauce simmer the full 20 minutes.
Serving Suggestions
I like caponata best at room temperature or slightly warm, not piping hot. Spoon it onto toasted bread as an antipasto, or serve it as a side alongside grilled or pan-fried fish. It makes a satisfying light main with crusty bread and a wedge of cheese.
It also fits beautifully into a mezze-style spread with olives, cheese and pickled vegetables from my Mediterranean preserving and brining guide, or spooned over a grain bowl with farro and home-cooked chickpeas.

Storage, Reheating and Make-Ahead
Make-ahead: Caponata is a perfect make-ahead dish. In my testing, it tasted best the day after cooking, when the sweet, sour and salty flavors had blended and the eggplant was softer but still held its shape.
Refrigerator: Store it in a covered glass container. Here’s how mine changed:
- Day 1: Good, with the eggplant still holding some bite.
- Day 2: Better. More flavor, softer eggplant.
- Day 3: Still very good, and the vinegar much less sharp.
- Day 4: Good, but the texture was starting to turn very soft.
I’d use it within 4 days. That matches the USDA’s leftovers and food safety guidance, which recommends refrigerating leftovers within 2 hours and eating them within 3 to 4 days.
Freezer: I froze a small portion and thawed it overnight in the fridge. The flavor was fine, but the eggplant became softer and more broken up. Frozen caponata works well spread on toast or stirred through pasta, but fresh is better.
Serving after storage: Let it come to room temperature for about 30 minutes, or warm it gently in a pan.
Mediterranean Secret: Make caponata a day ahead. The longer rest is what turns a good eggplant stew into something that tastes like Sicily.
With a skillet of eggplant and a spoon for tasting, Nevaeh Hall
Print
Caponata
- Total Time: 80 minutes
- Yield: 4 servings
- Diet: Vegetarian
Description
Caponata is a traditional Sicilian eggplant stew that combines the flavors of sweet and sour in a rich tomato sauce. Perfect as a side or light main course.
Ingredients
- 900 g eggplant, cut into 2½ to 3 cm cubes
- 1 teaspoon salt, for salting the eggplant
- About 100 ml olive oil, for frying
- 1 large yellow onion, diced
- 3 celery stalks, thinly sliced
- 400 g crushed tomatoes
- 2 tablespoons capers, drained
- 100 g pitted green olives, halved
- 40 g raisins
- 2½ tablespoons red wine vinegar
- 1½ tablespoons brown sugar
- ¼ teaspoon salt, plus more to taste
- 30 g pine nuts
- Fresh basil leaves, torn
Instructions
- Salt the eggplant. Toss the eggplant cubes with 1 teaspoon of salt in a colander set over a bowl, and leave for 30 minutes.
- Dry the eggplant. Pat the cubes thoroughly dry with a clean kitchen towel or paper towels.
- Heat the oil. Pour about a third of the olive oil into a skillet over medium-high heat.
- Fry the eggplant in 3 batches. Add a third of the eggplant in a single layer and cook until browned.
- Soften the onion and celery. In the same skillet, cook the onion and celery in the remaining oil for 10 to 12 minutes.
- Add the tomatoes, capers, olives, and raisins. Stir in the crushed tomatoes and bring to a gentle simmer.
- Simmer uncovered for 20 minutes, stirring occasionally.
- Add the vinegar and sugar halfway through the simmering.
- Check the sauce. Ensure it is thick before adding the eggplant.
- Add the eggplant and gently fold into the sauce for a final 8 to 10 minutes.
- Taste and adjust for balance.
- Finish and let rest for 30 to 60 minutes at room temperature.
Notes
Caponata improves after resting and tastes best the next day.
- Prep Time: 20 minutes
- Cook Time: 55 minutes
- Category: Side Dish
- Method: Frying
- Cuisine: Italian
