Classic Porcupine Meatballs

Oh, these porcupine meatballs! They’re the ultimate comfort food that takes me right back to childhood dinners around the family table. Don’t let the quirky name fool you – there are no actual porcupines involved! The name comes from the way the rice pokes out of the meatballs as they cook, resembling little porcupine quills.

Classic Porcupine Meatballs

What makes these meatballs truly special is how the rice cooks right inside the meat, absorbing all those savory flavors while creating a perfectly tender texture. The tomato sauce gets infused with the essence of the meatballs as they simmer together, creating this incredible sauce that’s just begging to be spooned over a bed of fluffy rice. It’s one of those magical one-pan recipes where every ingredient works together to create something greater than the sum of its parts.

Classic Porcupine Meatballs

Ingredients

Classic Porcupine Meatballs

For the meatballs:

  • 1 tablespoon canola oil
  • 1/2 cup uncooked long grain rice
  • 1/2 cup water
  • 1 tablespoon onion soup mix
  • 1/2 teaspoon garlic powder
  • 1 pound ground beef
  • 1 pound ground pork

For the sauce:

  • 1 can (10-11 ounce) tomato soup
  • 1/2 cup water
  • 1 1/2 tablespoons brown sugar
  • 1 tablespoon Worcestershire sauce
Classic Porcupine Meatballs

Steps

Classic Porcupine Meatballs
  1. Add 1 tablespoon canola oil to a large frying pan and set aside. This will be used for browning the meatballs later.
  2. In a large mixing bowl, combine 1/2 cup uncooked rice, 1/2 cup water, 1 tablespoon onion soup mix, 1/2 teaspoon garlic powder, 1 pound ground beef, and 1 pound ground pork. Mix thoroughly with your hands until all ingredients are evenly distributed. The mixture will feel wetter than traditional meatballs, but this moisture is essential for cooking the rice properly.
  3. Form the mixture into 1 1/2 inch meatballs (you should get about 22-25 meatballs). The mixture will feel loose and slightly wet – this is normal and necessary for the rice to cook properly inside the meatballs.
  4. Heat your large lidded sauté pan over medium-high heat until hot. Add the oil, then carefully place meatballs in the pan, leaving space between each one. Brown the first side for 4-5 minutes without disturbing them – this extended browning creates a crust that helps them hold together when flipped.
  5. Once the bottom is deeply browned, carefully turn each meatball to brown all sides, about 2-3 minutes per side. Work in batches if needed to avoid overcrowding the pan, which would cause steaming instead of browning.
  6. When all meatballs are browned, drain excess fat from the pan, tilting carefully while holding the meatballs in place with a spatula.
  7. In a separate bowl, whisk together the sauce ingredients: 1 can tomato soup, 1/2 cup water, 1 1/2 tablespoons brown sugar, and 1 tablespoon Worcestershire sauce until smooth. Pour this mixture evenly over the meatballs in the pan.
  8. Cover the pan with a tight-fitting lid and reduce heat to medium-low. Simmer for 20-30 minutes, gently shaking the pan occasionally to redistribute the sauce (or carefully stir with a spoon). The meatballs are done when the internal temperature reaches 165°F (74°C) and the rice inside is tender when you cut one open.
  9. Serve hot over a bed of cooked rice, spooning the extra tomato sauce generously over the top. The sauce will have thickened slightly and become infused with flavors from the meatballs.
Classic Porcupine Meatballs

Smart Swaps

  • Use ground turkey instead of beef/pork for a lighter version (add 1 tablespoon olive oil to maintain moisture)
  • Substitute brown rice for white rice (increase cooking time by 10 minutes and add 2 tablespoons extra water to the meatball mixture)
  • Try tomato passata with 1 tablespoon tomato paste instead of tomato soup for a less sweet, more intense tomato flavor

Make It Diabetes-Friendly

  • Replace white rice with 1/2 cup riced cauliflower (reduces carbs by approximately 40g per recipe)
  • Use 1 tablespoon monk fruit sweetener instead of brown sugar (saves 18g carbs)
  • Add 1 cup diced bell peppers to the sauce for extra nutrition without significant carb impact
  • Serve over cauliflower rice instead of regular rice to keep the meal under 15g carbs per serving

Pro Tips

  • Don’t skip the browning step! This creates the flavor foundation for the whole dish
  • The meatballs will be delicate until fully cooked – handle with care when turning
  • Double the sauce ingredients if you prefer extra sauce for serving
  • These freeze beautifully for up to 3 months – cool completely before transferring to freezer containers

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *