Porcupine Meatballs Recipe photo by Taste of Home
Total Time
Prep: 20 min. Cook: 1 hour
Porcupine meatballs get their moist, tender texture from rice, which acts as a binding agent to keep the meatballs together.

Updated: Mar. 22, 2024

Porcupine meatballs (also called “porcupine balls”) are a fun twist on a regular meatball. These beef meatballs are seasoned with spices and simmered in a rich tomato sauce, like many other meatballs. What makes these stand out from other meatballs is the use of rice instead of bread crumbs. Yup, the rice is the porcupine!

Why put rice in meatballs? Rice acts as the binding agent to hold the meatballs together, and it’s a genius substitute for bread crumbs. The rice plumps up as it cooks to create soft, tender meatballs. Since they don’t contain the bread crumbs typically found in meatballs, porcupine balls are naturally gluten free. Make them as a fantastic party appetizer, or spoon them over mashed potatoes to create an easy dinner.

What are porcupine meatballs?

Porcupine meatballs are meatballs made with rice. They have been a family staple since the Great Depression (and even before that!). They get their name because the rice pokes out of the meat while they’re cooking. The cooked meatballs resemble the spiky animal.

How to Make Porcupine Meatballs

Porcupine meatballs are just as easy to make as regular meatballs, but there are a few tricks to ensure the rice cooks through.

For starters, we’ve found that 80/20 beef is the best ground beef to use for meatballs made with rice. The fat adds moisture, which helps the rice cook through. Since these meatballs need to simmer for about an hour, the added fat also ensures the meatball stay nice and juicy.

Also, make sure to shape the meat mixture into small meatballs. The rice won’t properly cook in larger meatballs, and you’ll end up with unpleasant crunchy rice in the middle of the meat.

Finally, cover the pot as the meatballs simmer. This traps the moisture inside, ensuring the rice steams up to perfection.

Porcupine Meatballs Ingredients

  • Ground beef: We recommend 80/20 ground beef for this recipe. The rice might turn out crunchy and undercooked if you substitute a leaner meat.
  • Long-grain rice: We use uncooked long-grain rice in this porcupine meatballs recipe. It cooks up with a fluffy texture. We don’t recommend substituting brown rice or instant rice. Brown rice takes longer to cook, and instant rice doesn’t require as much water. The meatballs could turn out crunchy or soggy with another type of rice.
  • Water: It may sound strange to add water to a meatball mixture, but the water helps the rice cook through. The meatballs will be delicate to handle, but they won’t fall apart. The rice will soak in the water and expand as it cooks, binding the ingredients together.
  • Onion: The onion releases moisture as it cooks, ensuring the porcupine meatballs stay juicy and moist. If you’re cooking for picky eaters, chop the onion very finely (or grate it on a box grater). Once cooked, its texture will be less noticeable.
  • Tomato sauce: We make a simple homemade tomato sauce by combining canned tomato sauce, water, brown sugar and Worcestershire sauce. The flavors are perfectly balanced, and the sauce becomes extra-savory as it simmers with the meatballs.


Step 1: Shape the porcupine meatballs

Combine the uncooked rice, water, chopped onion, salt, celery salt, pepper and garlic powder in a large bowlTMB Studio

In a bowl, stir together the rice, water, chopped onion, salt, celery salt, pepper and garlic powder.

Add the ground beef and mix well in a bowlTMB Studio

Add the ground beef, and mix well.

Shape the mixture into 1 inch ballsTMB Studio

Shape the meat mixture into 1-1/2-inch balls.

Editor’s Tip: The water makes the meatball mixture very delicate, so the porcupine balls are hard to roll by hand. Use a small cookie scoop (an essential cookie-baking supply) or a round tablespoon to form the meatballs.

Step 2: Brown the porcupine meatballs

In a large skillet, brown the meatballs on all sides in canola oil. Drain any excess grease.

Step 3: Make the sauce

In a bowl, stir together the tomato sauce, water, brown sugar and Worcestershire sauce.

Step 4: Simmer the meatballs in the sauce

Pour the sauce over the meatballs in the skillet. Adjust the heat to maintain a simmer.

Cook the meatballs in a large skillet with canola oilTMB Studio

Cover and simmer for one hour.

A bowl of Porcupine Meatballs with savory sauce and beerTMB Studio

Recipe Variations

  • Use premade tomato sauce: Feel free to swap in condensed tomato soup, or use the big-batch marinara sauce you have stashed away in the freezer.
  • Swap in gravy: Instead of simmering the meatballs in tomato sauce, simmer them in gravy. You can use cream of mushroom soup, or make an easy homemade gravy, like the one we use in this meatballs and gravy recipe.
  • Add vegetables: Simmer chopped vegetables in the skillet alongside the meatballs. Try adding spinach, diced red peppers, sliced mushrooms or chopped cabbage.
  • Boost the sauce’s flavor: Add roasted garlic, a Parmesan rind, crushed red pepper flakes or herbs, such as Italian seasoning, to boost the flavor of the tomato sauce.

How to Store Porcupine Meatballs

Store porcupine meatballs in an airtight container in the refrigerator for up to four days. Reheat them in the microwave, or gently simmer the meatballs and their sauce in a saucepan on the stovetop.

Can you freeze porcupine meatballs?

Meatballs are a great meal to make ahead and freeze. Cool the meatballs completely, then freeze the meatballs and their sauce in a freezer-safe container. Leave a little space in the container, as the sauce will expand as it freezes. To use, thaw the meatballs in the refrigerator overnight. Reheat as directed.

Porcupine Meatball Tips

Porcupine Meatballs in sauce served in plates with beer on the sideTMB Studio

What should you serve with porcupine meatballs?

Serve porcupine meatballs with toothpicks as a party appetizer. If you’re wondering what to serve with porcupine meatballs for dinner, we suggest spooning them over a bed of mashed potatoes, pasta or cooked rice.

Why do my porcupine meatballs fall apart?

Meatball recipes can fall apart if they don’t have the proper binders to hold the other ingredients together. Most recipes use bread crumbs and eggs, but our porcupine meatballs recipe uses rice as the binding agent. The meatballs will be soft and difficult to handle when they’re raw. However, the rice will expand as it cooks to hold the meatballs together.

What makes meatballs soggy?

Meatballs can become soggy if they contain too many liquid ingredients. This porcupine meatball recipe shouldn’t yield soggy meatballs, since the uncooked rice absorbs the water as the meatballs cook.

Watch how to Make Porcupine Meatballs

Porcupine Meatballs

Prep Time 20 min
Yield 4 servings.


  • 1/2 cup uncooked long grain rice
  • 1/2 cup water
  • 1/3 cup chopped onion
  • 1 teaspoon salt
  • 1/2 teaspoon celery salt
  • 1/8 teaspoon pepper
  • 1/8 teaspoon garlic powder
  • 1 pound ground beef
  • 2 tablespoons canola oil
  • 1 can (15 ounces) tomato sauce
  • 1 cup water
  • 2 tablespoons brown sugar
  • 2 teaspoons Worcestershire sauce


  1. In a bowl, combine the first 7 ingredients. Add beef and mix well. Shape into 1-1/2-in. balls. In a large skillet, brown meatballs in oil; drain. Combine tomato sauce, water, brown sugar and Worcestershire sauce; pour over meatballs. Reduce heat; cover and simmer for 1 hour.

Nutrition Facts

1 serving: 421 calories, 21g fat (6g saturated fat), 70mg cholesterol, 1317mg sodium, 34g carbohydrate (9g sugars, 2g fiber), 24g protein.

These well-seasoned porcupine meatballs in a rich tomato sauce are one of my mom's best main dishes. I used to love this meal when I was growing up. I made it at home for our children, and now my daughters make it for their families. —Darlis Wilfer, West Bend, Wisconsin