Meatball subs topped with marinara, caramelized onion, and mozzarella are filling sandwiches that can be served for dinner or on game day.

This recipe is adapted from Smitten Kitchen.  The original recipe can be found here. This is a hearty meal!

I would typically use ground turkey for meatballs but I decided to try ground chicken instead. This decision was made mostly because we are probably having turkey two other nights this week (tacos and turkey Italian sausage), and you are what you eat and I don’t want to turn into Thanksgiving dinner!

Meatball sub on a plate with sweet potato fries.

Meatball Subs

Yield: 8 sandwiches
Prep Time: 10 minutes
Cook Time: 1 hour
Total Time: 1 hour 10 minutes

Meatball subs topped with marinara, caramelized onion, and mozzarella are filling sandwiches that can be served for dinner or on game day.



  • The baguettes or seeded sandwich rolls you’ll use for your sandwiches
  • 2 lbs. ground meat (beef, turkey, chicken, pork, veal, or a blend)
  • 2 tablespoons chopped parsley
  • 1/3 cup finely grated Parmesan or Romano cheese
  • 3/4 teaspoon salt
  • Pinch of red pepper flakes
  • 2 small garlic cloves, minced or pressed
  • 1 teaspoon onion powder
  • 1 teaspoon Worcestershire sauce
  • 1 large egg
  • Olive oil
  • 4 cups prepared marinara sauce

Caramelized onions

  • 2 large yellow onions, thinly sliced
  • 1 tablespoon butter
  • 1 tablespoon olive oil
  • Salt
  • 2 cups coarsely shredded mozzarella cheese



  1. Split rolls almost the whole way through, leaving one side attached. Scoop out some of the roll to create a channel for the meatballs to rest in. Grind the bread you pulled out in a food processor into coarse crumbs. You will need 1 1/3 cups fresh breadcrumbs for the meatballs. Set rolls aside until later.
  2. Place the fresh breadcrumbs in a large bowl with 3/4 cup warm water and all of the meatball ingredients except for the olive oil and tomato sauce. Combine with a fork, breaking up clumps of meat until the ingredients are evenly distributed. Form mixture into 2-inch meatballs. I find wet hands make it easier to form meatballs without them sticking too much.
  3. Heat a generous slick of oil (few tablespoons) in a large non-stick saute pan with a lid. Brown meatballs in batches, being careful not to crowd the pan or nudge them before they are nicely browned or they will stick and you’ll leave delicious meatball bits in the pan. These meatballs are soft, so use a gentle hand. Transfer meatballs to a paper towel-lined tray and continue until they are all browned.
  4. Discard the oil and heat your tomato sauce in the pan. Add the meatballs, cover the pan and simmer them on the lowest heat possible for 25 to 30 minutes, until the meatballs are cooked through.


  1. Caramelize onions: While the meatballs are simmering, you can cook the onions. Heat the olive oil and butter in a heavy large skillet over medium-low heat. Add onion, sprinkle with salt and a little pepper and cook until they’re tender, sweet, and a deep golden brown, stirring occasionally, about 30 minutes.


  1. Arrange meatballs with sauce in the hollowed-out roll(s). Drape caramelized onions over the top and sprinkle with shredded cheese. Broil subs to melt the cheese.


  • Recipe from A Smitten Kitchen.
Nutrition Information:
Yield: 8 Serving Size: 1
Amount Per Serving: Calories: 687Total Fat: 35gSaturated Fat: 13gTrans Fat: 1gUnsaturated Fat: 17gCholesterol: 152mgSodium: 1570mgCarbohydrates: 44gFiber: 4gSugar: 11gProtein: 47g sometimes provides nutritional information, but these figures should be considered estimates, as they are not calculated by a registered dietitian. Please consult a medical professional for any specific nutrition, diet, or allergy advice.

Did you make this recipe?

Please leave a comment on the blog or share a photo on Instagram