Here’s a comforting, old-fashioned porcupine meatballs recipe: tender ground beef meatballs studded with rice (the “quills”) simmered in a bright tomato sauce. These savory, homey meatballs are simple to prepare, freeze well, and please adults and kids alike. Serve them over mashed potatoes, noodles, or with crusty bread for a satisfying, nostalgic meal.
Ingredients
- 1 lb (450 g) ground beef (or half beef/half pork)
- 1/2 cup uncooked long-grain white rice
- 1 large egg
- 1 small onion, finely chopped
- 2 cloves garlic, minced
- 1/4 cup breadcrumbs
- 2 tbsp fresh parsley, chopped (or 1 tsp dried)
- 1 tsp salt
- 1/2 tsp black pepper
- 1/2 tsp paprika (optional)
- 2 tbsp vegetable oil (for browning)
- 1 (15 oz) can tomato sauce
- 1 cup beef or chicken broth
- 1 tbsp Worcestershire sauce or soy sauce
- 1 tsp sugar (optional, to taste)

Servings and Cooking Time
Servings: 4 (about 4 meatballs per person, depending on size). Preparation time: 20 minutes. Cooking time: 35–40 minutes (including simmering). Total time: ~55–60 minutes.
Nutritional Value
These values are approximate and listed for one serving (1/4 of recipe ≈ 4 meatballs; about 300–350 g with sauce). Per one serving: Calories ~420 kcal; Protein ~26 g; Carbohydrates ~28 g; Fat ~22 g; Fiber ~2 g; Sodium ~700 mg. (Nutrition shown is for one person/serving.)
Step-by-Step Cooking Process
- Rinse 1/2 cup long-grain rice under cold water and drain.
- In a large bowl, combine ground beef, drained rice, chopped onion, minced garlic, egg, breadcrumbs, parsley, salt, pepper, and paprika; mix gently until combined.
- Form mixture into uniform meatballs about 1 1/4–1 1/2 inches in diameter—wet your hands if sticky.
- Heat 2 tbsp oil in a large skillet or Dutch oven over medium heat.
- Brown meatballs in batches, turning gently so they color but do not fully cook; remove to a plate.
- Pour off excess fat, add a splash of broth if pan is dry, then stir in tomato sauce, remaining broth, Worcestershire, and sugar; bring to a simmer.
- Carefully nestle browned meatballs into the simmering sauce in a single layer.
- Reduce heat to low, cover, and simmer gently for 25–30 minutes until rice is tender and meatballs are cooked through (internal temp ~160°F/71°C).
- Uncover for the last 5 minutes to thicken sauce if needed; adjust salt and pepper to taste.
- Remove from heat, let rest 5 minutes, then garnish with extra parsley and serve hot.

Alternative Ingredients
You can use ground turkey or chicken for a leaner option, or half beef/half pork for extra flavor. Substitute brown rice (requires pre-cooking) or cooked quinoa for rice. Use tomato crushed tomatoes instead of sauce for chunkier texture; gluten-free breadcrumbs or oats work for binding.
Serving and Pairings
Serve porcupine meatballs over mashed potatoes, buttered egg noodles, or steamed rice. Pair with a simple green salad, roasted vegetables, or sautéed spinach. Crusty bread or dinner rolls are great for soaking up the sauce; a light red wine complements the dish.
Storage and Reheating
Cool completely, then store in an airtight container in the refrigerator for up to 3–4 days. To reheat, warm gently in a saucepan over low heat with a splash of broth until heated through, or microwave covered in 30‑second intervals. Meatballs freeze well for up to 3 months—thaw overnight in refrigerator before reheating.
Cooking Mistakes
- Overmixing the meat—makes dense meatballs.
- Making meatballs too large—rice may not cook through.
- Skipping the browning step—loses flavor depth.
- Boiling the sauce—can break apart meatballs.
- Not adjusting seasoning after simmering—may taste flat.
Helpful Tips
- Keep meatballs uniform in size for even cooking.
- Use slightly undercooked rice only if you’ll simmer long—otherwise use raw rice as directed.
- Chill formed meatballs 10 minutes for firmer shape before browning.
- Reserve a cup of sauce if you want extra for serving.
- Test one meatball for seasoning before shaping the rest.

FAQs
What makes porcupine meatballs different from regular meatballs?
Porcupine meatballs include uncooked rice mixed into the meat, which puffs during cooking and looks like quills—hence the name. The rice also stretches the meat mixture, adding texture and helping the meatballs hold together during simmering.
Can I use brown rice instead of white rice in porcupine meatballs?
You can, but brown rice generally needs longer to cook; either pre-cook the brown rice until just tender and reduce simmer time, or use shorter-grain white rice as in the classic recipe for reliable results.
How do I prevent the meatballs from falling apart while simmering?
Gently brown meatballs first to set the exterior, avoid overcrowding, and simmer gently (not boiling). A binder like egg and breadcrumbs helps, and chilling formed meatballs briefly before cooking improves firmness.
Can porcupine meatballs be made ahead for a party?
Yes—prepare and brown the meatballs ahead, then cool and refrigerate up to 24 hours. Rewarm them slowly in the sauce over low heat or bake briefly before serving; you can also freeze for longer storage.
Are porcupine meatballs suitable for freezing?
Yes, these meatballs freeze well. Cool completely, freeze in a single layer on a baking sheet, then transfer to a freezer bag for up to 3 months. Thaw overnight in the fridge and reheat in sauce until hot.
What is the best sauce to use with porcupine meatballs?
A simple tomato sauce made from tomato sauce or crushed tomatoes with broth, a splash of Worcestershire, and a touch of sugar works best. You can also use marinara or a light gravy depending on preference.
How can I make porcupine meatballs gluten-free?
Replace breadcrumbs with gluten-free breadcrumbs or ground oats, and verify any Worcestershire or broth is gluten-free. Use certified gluten-free oats if substituting for binder to keep texture and structure.
Conclusion
Porcupine meatballs are a nostalgic, easy-to-make comfort food—meatballs studded with rice simmered in a savory tomato sauce. They’re adaptable, freezer-friendly, and perfect for weeknight dinners or family gatherings. With simple ingredients and straightforward steps, this recipe delivers hearty, crowd-pleasing results.

Porcupine Meatballs Recipe
Ingredients
- 1 lb 450 g ground beef (or half beef/half pork)
- 1/2 cup uncooked long-grain white rice
- 1 large egg
- 1 small onion finely chopped
- 2 cloves garlic minced
- 1/4 cup breadcrumbs
- 2 tbsp fresh parsley chopped (or 1 tsp dried)
- 1 tsp salt
- 1/2 tsp black pepper
- 1/2 tsp paprika optional
- 2 tbsp vegetable oil for browning
- 1 15 oz can tomato sauce
- 1 cup beef or chicken broth
- 1 tbsp Worcestershire sauce or soy sauce
- 1 tsp sugar optional, to taste
Instructions
- Rinse 1/2 cup long‑grain rice under cold water and drain.
- In a large bowl, combine ground beef, drained rice, chopped onion, minced garlic, egg, breadcrumbs, parsley, salt, pepper, and paprika; mix gently until combined.
- Form mixture into uniform meatballs about 1 1/4–1 1/2 inches in diameter—wet your hands if sticky.
- Heat 2 tbsp oil in a large skillet or Dutch oven over medium heat.
- Brown meatballs in batches, turning gently so they color but do not fully cook; remove to a plate.
- Pour off excess fat, add a splash of broth if pan is dry, then stir in tomato sauce, remaining broth, Worcestershire, and sugar; bring to a simmer.
- Carefully nestle browned meatballs into the simmering sauce in a single layer.
- Reduce heat to low, cover, and simmer gently for 25–30 minutes until rice is tender and meatballs are cooked through (internal temp ~160°F/71°C).
- Uncover for the last 5 minutes to thicken sauce if needed; adjust salt and pepper to taste.
- Remove from heat, let rest 5 minutes, then garnish with extra parsley and serve hot.