Porcupine Meatballs With Rice and Tomato Sauce

Porcupine meatballs

annick vanderschelden photography/Getty Images

Prep: 10 mins
Cook: 60 mins
Total: 70 mins
Servings: 4 servings
Yield: 12 to 15 meatballs
Nutrition Facts (per serving)
350 Calories
14g Fat
19g Carbs
34g Protein
Show Full Nutrition Label Hide Full Nutrition Label
Nutrition Facts
Servings: 4
Amount per serving
Calories 350
% Daily Value*
Total Fat 14g 18%
Saturated Fat 5g 27%
Cholesterol 101mg 34%
Sodium 929mg 40%
Total Carbohydrate 19g 7%
Dietary Fiber 1g 5%
Total Sugars 7g
Protein 34g
Vitamin C 5mg 23%
Calcium 38mg 3%
Iron 4mg 23%
Potassium 964mg 21%
*The % Daily Value (DV) tells you how much a nutrient in a food serving contributes to a daily diet. 2,000 calories a day is used for general nutrition advice.
(Nutrition information is calculated using an ingredient database and should be considered an estimate.)

Porcupine meatballs are made with ground beef, rice, onion, tomato soup, and seasonings. Bits of rice sticking out of the meatballs is undoubtedly the reason the meatballs are called "porcupines." This version is made with tomato soup as the sauce. You can add an optional can of petite diced tomatoes to the sauce but feel free to leave the diced tomatoes out of the dish.

The meatballs are shaped and cooked in the sauce. The ground beef and rice mixture are similar to cabbage roll stuffing. Top the meatballs and sauce with cabbage wedges or coarsely chopped cabbage for a sort of "unstuffed" cabbage. The sauce also makes a tasty gravy for mashed potatoes.

You can easily double the recipe for leftovers, or freeze the meatballs and sauce for a future meal. It's one of those dishes that tastes even better the next day.


  • 1 pound lean ground beef

  • 1/2 cup uncooked long-grained rice

  • 1/3 cup finely chopped onion

  • 1 to 1 1/2 cup water, divided

  • 1 teaspoon salt

  • 1/8 teaspoon freshly ground black pepper

  • 1 (10 3/4-ounce can) condensed tomato soup

  • 1/2 teaspoon chili powder

Steps to Make It

  1. Combine the ground beef, rice, onion, 1/4 cup of the water, salt, and pepper.

  2. Shape meat mixture into 12 to 15 meatballs. Combine the soup, chili powder, and 3/4 cup of water in a large saucepan; bring to a boil. Add meatballs to the sauce mixture. Add a little more water to cover, if necessary.

  3. Reduce the heat to low, cover the pan, and simmer over very low heat for about 1 hour. Stir occasionally and add more water, if necessary, to keep the meatballs covered with liquid.

  4. Serve the meatballs along with plain boiled or mashed potatoes or noodles. Broccoli is an excellent side vegetable, or serve them with green beans, peas, or corn.


  • Instead of cooking the meatballs on the stovetop, try baking them. Shape the meatballs and heat the sauce mixture. Transfer the heated sauce and meatballs to a baking dish. Cover tightly with foil and cook in a 350 F oven for about 45 minutes to 1 hour.
  • For a low carb option, replace the rice with cauliflower "rice."

Recipe Variations

  • Replace the rice with quinoa or use instant rice.
  • Add 1/4 cup of finely chopped green bell pepper to the meatballs along with the chopped onion.
  • Omit the tomato soup and add 1 large can (15 ounces) of tomato sauce. Reduce the water to 1/2 cup.
  • Add 2 teaspoons of Worcestershire sauce to the tomato sauce mixture.
  • Add 1/8 to 1/4 teaspoon of garlic powder to the meatball mixture.