Quick Recipe Version (TL;DR)
Quick Ingredients
- 1 lb (450 g) ground beef (80–85% lean)
- 2 tbsp olive oil
- 1 medium onion, finely diced
- 4 garlic cloves, minced
- 1 tbsp tomato paste
- 1/2 cup (120 ml) dry red wine or beef broth
- 1 can (14.5 oz / 400 g) crushed tomatoes
- 1 tsp dried oregano, 1/2 tsp dried basil, pinch red pepper flakes
- 1 tsp sugar, 1–1 1/4 tsp kosher salt, 1/2 tsp black pepper
- 4 ciabatta rolls (or 1 large loaf, split)
- 8 slices provolone cheese
- 1/2 cup (50 g) grated Parmesan cheese
- 1/2 cup loosely packed fresh basil leaves, torn
- 2 tbsp softened butter, 1 garlic clove (for rubbing bread)
Do This
- 1. Preheat oven to 425°F (220°C). Line a baking sheet with parchment.
- 2. Sauté onion in olive oil over medium heat for 5 minutes; add garlic and cook 1 minute.
- 3. Add ground beef; cook, breaking it up, until browned, 7–8 minutes. Stir in tomato paste and red pepper flakes.
- 4. Deglaze with wine or broth; simmer 2 minutes. Add crushed tomatoes, dried herbs, sugar, salt, and pepper. Simmer 10–15 minutes until thick.
- 5. Split ciabatta, lightly butter cut sides, and toast cut-side up for 5–7 minutes until just crisp.
- 6. Pile beef onto bottom halves, top with Parmesan, provolone, and basil. Return to oven 6–8 minutes until cheese is melted and edges are toasty. Close sandwiches, slice, and serve hot.
Why You’ll Love This Recipe
- All the cozy comfort of an Italian-style meat sauce, tucked into a crusty, toasty ciabatta sandwich.
- Balanced flavors: garlicky, tomato-braised beef, creamy provolone, nutty Parmesan, and fresh basil.
- Easy weeknight-friendly method, but impressive enough for casual entertaining.
- Great for using up extra ground beef and turns basic pantry staples into something special.
Grocery List
- Produce: 1 medium yellow onion, 5 garlic cloves, 1/2 cup fresh basil leaves
- Dairy: Provolone cheese (8 slices), Parmesan cheese, butter
- Pantry: Ground beef, olive oil, tomato paste, crushed tomatoes, dry red wine or beef broth, dried oregano, dried basil, red pepper flakes, sugar, salt, black pepper, ciabatta rolls or loaf
Full Ingredients
For the Garlicky Tomato-Braised Beef
- 2 tbsp olive oil
- 1 medium yellow onion, finely diced (about 1 cup)
- 4 large garlic cloves, minced
- 1 lb (450 g) ground beef, 80–85% lean
- 1 tbsp tomato paste
- 1/4–1/2 tsp red pepper flakes (optional, to taste)
- 1/2 cup (120 ml) dry red wine or beef broth
- 1 can (14.5 oz / 400 g) crushed tomatoes (or tomato purée)
- 1 tsp dried oregano
- 1/2 tsp dried basil
- 1 tsp sugar
- 1–1 1/4 tsp kosher salt, plus more to taste
- 1/2 tsp freshly ground black pepper
For the Ciabatta Melts
- 4 individual ciabatta rolls (about 4–5 in / 10–12 cm) or 1 large ciabatta loaf (about 1 lb / 450 g), split lengthwise
- 2 tbsp unsalted butter, softened
- 1 garlic clove, peeled and halved (for rubbing on toasted bread)
- 8 slices provolone cheese (about 6 oz / 170 g)
- 1/2 cup (50 g) freshly grated Parmesan cheese
- 1/2 cup loosely packed fresh basil leaves, torn or thinly sliced
- Optional: extra-virgin olive oil for drizzling

Step-by-Step Instructions
Step 1: Prep your ingredients and heat the pan
Dice the onion, mince the 4 garlic cloves, and set them aside in separate piles. Tear or slice the fresh basil leaves and grate the Parmesan if not already grated. Split your ciabatta rolls (or loaf) horizontally.
Place a large skillet or sauté pan over medium heat. Add the olive oil and let it warm for 1–2 minutes until it shimmers but does not smoke. While it heats, position an oven rack in the top third of your oven and preheat to 425°F (220°C). Line a large baking sheet with parchment paper for easy cleanup.
Step 2: Sauté the aromatics
Add the diced onion to the hot oil with a pinch of salt. Cook, stirring occasionally, for 4–5 minutes, until the onion becomes soft and translucent, with just a little golden color at the edges. Lower the heat slightly if it begins to brown too quickly.
Stir in the minced garlic and cook for 30–60 seconds, just until fragrant. Keep the garlic moving in the pan so it does not burn, as burnt garlic will make the sauce bitter.
Step 3: Brown the beef and build flavor
Crumble the ground beef into the pan. Increase the heat to medium-high and cook, breaking up the meat with a wooden spoon or spatula, until it is no longer pink and starting to brown in spots, about 7–8 minutes. If there is a lot of excess fat, carefully spoon some off, leaving about 1–2 tablespoons in the pan for flavor.
Sprinkle in the red pepper flakes (if using), then add the tomato paste. Cook the tomato paste with the beef for 1–2 minutes, stirring constantly. This step caramelizes the paste slightly and deepens the tomato flavor, giving the filling a rich, almost slow-cooked taste.
Step 4: Deglaze and simmer the tomato-braised beef
Pour in the red wine (or beef broth), scraping up any browned bits from the bottom of the pan. Let it simmer for 2–3 minutes until slightly reduced and the sharp alcohol smell has mellowed (if using wine).
Add the crushed tomatoes, dried oregano, dried basil, sugar, 1 teaspoon kosher salt, and black pepper. Stir well to combine. Bring the mixture to a gentle simmer, then reduce the heat to low. Simmer uncovered for 10–15 minutes, stirring occasionally, until the sauce is thick and spoonable, not runny. Taste and adjust seasoning with more salt, pepper, or a pinch more sugar if the tomatoes are very acidic. Turn off the heat but keep the mixture warm.
Step 5: Toast and flavor the ciabatta
While the beef simmers, arrange the ciabatta halves cut-side up on the prepared baking sheet. Spread the softened butter lightly over the cut surfaces.
Transfer the baking sheet to the preheated 425°F (220°C) oven. Toast the ciabatta for 5–7 minutes, until the edges are lightly golden and the surface feels crisp but not hard. Remove from the oven. While still hot, gently rub the cut sides of the bread with the halved garlic clove to infuse a subtle garlic aroma.
If your ciabatta is very thick, you can pinch or tear out a bit of the soft interior from the top halves to create more room for the filling. This helps the sandwiches hold together better and keeps the ratio of bread to filling nicely balanced.
Step 6: Assemble the beef-stuffed melts
Give the beef mixture a quick stir. Spoon a generous layer of the tomato-braised beef onto each bottom half of the ciabatta, dividing it evenly among the four sandwiches. Aim for about 1/2–3/4 cup of filling per sandwich, depending on the size of your rolls.
Sprinkle the grated Parmesan evenly over the beef. Lay 2 slices of provolone over each sandwich, making sure the cheese reaches close to the edges so it will melt beautifully. Scatter the torn basil leaves over the cheese.
Leave the top halves of the ciabatta off for now; place them cut-side up on the baking sheet so they can toast a bit more while the cheese melts.
Step 7: Melt, finish, and serve
Return the baking sheet to the 425°F (220°C) oven. Bake for 6–8 minutes, until the provolone is fully melted and bubbling in spots, and the edges of the ciabatta are deeply golden and crisp. If you like extra browning, you can switch to the broiler for the last 1–2 minutes, watching closely so nothing burns.
Remove from the oven. If you like, drizzle the beef and cheese lightly with a little extra-virgin olive oil and add a few extra basil leaves on top for freshness. Close each sandwich with its toasted top half, pressing down gently. Let rest for 2–3 minutes to set, then slice each sandwich in half on a diagonal.
Serve hot while the bread is still crunchy and the cheese is soft and melty. These are wonderful with a simple green salad or roasted vegetables on the side.
Pro Tips
- Thicken the filling: The beef mixture should be thick enough to mound on a spoon. If it looks runny, simmer a few more minutes; too much liquid will make the bread soggy.
- Use good bread: Choose ciabatta with a firm crust and airy interior. Softer sandwich rolls will not hold up as well to the juicy filling.
- Hollow the tops slightly: Pulling out a bit of the inner bread from the top halves of the ciabatta makes room for the filling and prevents the sandwiches from being too bready.
- Cheese coverage matters: Overlap the provolone slightly and bring it close to the edges so you get a nice cheesy seal that helps hold the beef in place.
- Make it ahead-friendly: The beef filling can be made 1–2 days in advance; reheat gently on the stove with a splash of water before assembling the melts.
Variations
- Spicy Calabrian-style: Add 1–2 tsp of Calabrian chili paste along with the tomato paste and use a bit more red pepper flakes for a pronounced heat and smoky depth.
- Extra cheesy: Swap half of the provolone for low-moisture mozzarella and add an extra 1/4 cup Parmesan for a super-gooey, intensely cheesy melt.
- Lighter version: Use lean ground turkey or chicken in place of beef, and choose part-skim provolone. Taste and adjust seasoning, as poultry is milder than beef.
Storage & Make-Ahead
For best texture, store the components separately. The tomato-braised beef can be cooled and refrigerated in an airtight container for up to 4 days, or frozen for up to 3 months. Reheat gently in a saucepan over low heat with a splash of water or broth until hot and saucy again. Grated Parmesan and sliced provolone will keep in the fridge for several days.
Toast the ciabatta and assemble the melts just before serving. Leftover assembled sandwiches can be wrapped in foil and refrigerated for up to 1 day. Reheat, still wrapped in foil, at 350°F (175°C) for 10–15 minutes, then open the foil and bake 3–5 minutes more to re-crisp the bread. Note that reheated sandwiches will be a bit softer than freshly made, but still tasty.
Nutrition (per serving)
Approximate values per sandwich (1 of 4), using 85% lean beef and 2 slices of provolone each: about 780 calories; 40 g protein; 46 g fat; 50 g carbohydrates; 3 g fiber; 9 g sugar; 1,250 mg sodium. Actual values will vary based on specific brands and the size of your ciabatta and cheese slices.
