This post may contain affiliate links. Please read our disclosure policy.

These old-fashioned porcupine meatballs are tender beef meatballs made with uncooked rice, onion, seasonings, and tomato sauce, then simmered until the rice cooks through and peeks out like little “quills.” The classic stovetop version comes together with simple pantry ingredients and is ready in about 1 hour, with baked, slow cooker, and make-ahead options included below.

Old Fashioned Porcupine Meatballs in a steel skillet with a gold spoon

Kellie’s Note
Nostalgic Dinner Winner

Comfort food is going on the menu from fall until March. Things like Beef Stew and these Easy Porcupine Meatballs.

I remember my grandmother making this Porcupine Meatball recipe when I was little and I love them. Basically, if there was a recipe that had white rice in it in any way, shape or form, I was all in. And I was begging for seconds. 

This simple recipe is on constant repeat on my dinner table because it’s just so easy to make. You can make your meatballs in the oven but I like to make my meatballs on the stovetop in a skillet.

If you love classic comfort food that doesn’t take anything fancy, this recipe is for you. These porcupine meatballs are cozy, filling, and made with inexpensive ingredients, but they still feel like a real homemade dinner.

They’re also easy to prep ahead, family-friendly, and flexible enough for a quick stovetop meal or a make-ahead freezer dinner.

Why This Recipe Works

  • The rice cooks right in the sauce so the meatballs stay hearty and tender while getting that classic porcupine look.
  • A tomato-based sauce keeps everything moist while the meatballs simmer, which helps the rice soften evenly.
  • The ingredient list is simple and affordable with pantry staples you probably already have on hand.
  • You can make them more than one way with classic stovetop, baked, and hands-off options depending on your schedule.
  • They reheat beautifully which makes them great for meal prep, leftovers, or freezer dinners.

Ingredients for Porcupine Meatballs

The classic version of porcupine meatballs relies on a few simple staples: ground beef, uncooked rice, onion, tomato sauce, and seasonings. From there, you can make a few easy swaps depending on what you have in the kitchen, but the combination of beef, rice, and sauce is what gives this recipe its old-fashioned flavor and signature texture.

  • Ground beef – We opt for lean ground beef to create our meatballs to keep the calories in check. 90/10 or 80/20 lean ground beef still makes for a juicy, flavorful meatball.
  • Rice – Use long-grain rice, uncooked so the rice holds together and doesn’t fall apart during cooking.
  • Onion – A Vidalia onion will add sweetness to the meatballs.
  • Egg – Use 1 egg as a binding agent.
  • Seasoning – Garlic powder, onion powder, salt and pepper add flavor and depth to the meatballs. While it’s not traditionally in a porcupine meatballs, we pumped up the flavor just a bit.
  • Worcestershire Sauce – We always love a dash of Worcestershire sauce in anything meaty. You can leave it out or substitute with soy sauce or coconut aminos.

For the full ingredient list and instructions, see the recipe card at the bottom.

Helpful ingredient notes

  • Broth: Use broth instead of water for deeper flavor.
  • Ground beef: An 85/15 or 90/10 blend works well. Ground turkey can also be used for a lighter version.
  • Rice: Long-grain white rice is the easiest and most reliable choice. Brown rice can work, but it will need more liquid and a longer cooking time.
  • Onion: Grated or very finely diced onion blends best into the meatballs.
  • Tomato sauce: This keeps the recipe classic and gives the meatballs plenty of moisture as they cook.
Ingredients for Porcupine meatballs.

How To Make Porcupine Meatballs

You’ll find the full printable recipe card below, but here’s what to watch for as you make them:

1. Mix the meatball mixture gently. Combine the beef, rice, onion, and seasonings just until mixed. The mixture may feel a little looser than standard meatballs, and that’s normal because the rice needs room to absorb liquid as it cooks.

2. Shape evenly sized meatballs. Try to keep the meatballs close to the same size so they cook at the same rate. If they’re packed too tightly, they can turn dense instead of tender.

3. Build the sauce. Once the sauce is mixed, it may look slightly thin at first. That’s exactly what you want because some of that liquid will be absorbed by the rice during cooking.

4. Simmer gently, not aggressively. A gentle simmer is the key to tender meatballs and properly cooked rice. If the heat is too high, the sauce can reduce too quickly before the rice softens.

5. Check for doneness the right way. The meatballs are done when the beef is fully cooked and the rice is tender, not chalky. If the sauce thickens too much before the rice is ready, add a couple tablespoons of broth or water, cover, and continue simmering.

6. Let them rest briefly before serving. A short rest helps the sauce settle and gives the meatballs time to firm up slightly for easier serving.

What are Porcupine Meatballs

Porcupine meatballs are a classic comfort-food recipe made with seasoned ground beef and uncooked rice that simmer together in tomato sauce. As the meatballs cook, the rice pokes out through the surface, which gives them their signature porcupine-like look.

They’ve been a family-favorite dinner for decades because they’re budget-friendly, filling, and made with simple pantry ingredients. If you grew up eating retro comfort food, there’s a good chance a version of these showed up on your dinner table.

Kellie’s Porcupine Meatball Variations

  • Double the Sauce: Increase sauce by 50% if you’re serving over mashed potatoes or noodles.
  • Ground Turkey or Pork: Swap half or all of the beef; add 1 Tbsp olive oil if using very lean turkey.
  • Sausage Boost: Replace 1/3 of the beef with mild Italian sausage for extra flavor.
  • Creamy Mushroom: Use 2 cans condensed cream of mushroom and 1 cup water plus add 1/2 teaspoon of paprika.
  • Stuffed‑Pepper Vibes: Stir 1 cup diced bell pepper into the sauce.
  • Herb & Spice Twists: Try smoked paprika, oregano, or a pinch of red pepper flakes.
  • Classic Stovetop: This is the best place to start for the traditional old-fashioned flavor and texture.
  • Retro Baked Version: For a more vintage-style take, bake the meatballs in a condensed tomato soup-based sauce.
  • Slow Cooker Version: Great for prep-ahead days when you want dinner ready with minimal hands-on time.
  • Instant Pot Version: A faster option that still gives you a tender meatball and soft rice when you need a more efficient dinner.
Porcupine Meatballs in a skillet with one on a spoon

How to Store and Reheat Leftovers

  • Refrigerator: Store leftover meatballs in airtight containers in the refrigerator up to 4 days.
  • Reheat: Simmer the porcupine meatballs gently in sauce on the stovetop or bake in a casserole dish covered with foil in the oven at 325˚F until hot.
  • Freeze (cooked): Cool completely; freeze up to 3 months with sauce. Thaw overnight; reheat gently.
  • Freeze (from raw): Freeze rolled meatballs on a baking sheet in a single layer, then bag up to 3 months. Bake or simmer from thawed; add 5–10 minutes cook time.

What To Serve With Porcupine Meatballs

You can enjoy these porcupine balls as they are or serve them up in a roll for a fun meatball sub.

Porcupine Meatballs with sauce over a bed of rice on a fun, quirky plate

Kellie’s Tips for Perfect Meatballs

  • Sauce – You can skip the step of making the sauce, if you prefer, and use your favorite jarred sauce or vodka sauce recipe. It will save you time but the sauce recipe for these meatballs is really simple and amazingly tasty.
  • Ground Beef – Be sure to use a lean ground beef so the sauce isn’t too fatty. If you mistakenly buy ground beef that is higher in fat don’t skip the step of pouring off the fat.
  • Rice – You can use jasmine rice or Instant Rice, the cooking time is plenty long enough for the regular rice to cook all the way through. Just be sure not to use already cooked rice from your leftover Sunday dinner. It will not hold up well and your meatballs will fall apart.

Want to see what else we’re cooking up in the kitchen lately? Follow us over on Instagram!

skillet with meatballs and a plate with a serving of meatballs over rice.

Old-Fashioned Porcupine Meatballs Recipe

4.75 from 8 votes
Prep: 5 minutes
Cook: 55 minutes
Total: 1 hour
Servings: 6
One pot dinner magic, Porcupine Meatballs are loaded with flavor and simmered in a savory tomato sauce that's simply magical.

Equipment

Ingredients 

For the meatballs

  • 1 lb lean ground beef
  • 1/2 cup long grain rice, uncooked
  • 1/2 cup diced onion
  • 1/3 cup water
  • 1 large egg
  • 1 tsp garlic powder
  • 1 tsp onion powder
  • 1 tbsp worcestershire sauce
  • 1 tsp ground pepper
  • 2 tbsp chopped fresh parsley
  • 1 tbsp olive oil

For the sauce:

  • 2 cups tomato sauce
  • 1/2 cup water
  • 3 tbsp dark brown sugar
  • 1 1/2 tbsp worcestershire sauce
  • 1/2 tsp garlic powder
  • 1 tsp kosher salt
  • 1 tsp ground pepper

Instructions 

  • In a large bowl, combine the ground beef, rice, water, onion, egg, garlic powder, onion powder, worcestershire sauce, parsley and pepper.
  • Shape the meat mixture into balls approximately 2 inches in diameter and set aside.
  • Heat the oil in a large skillet set over medium heat. Add the meatballs to the pan and brown on all sides, approximately 8-10 minutes. Drain the fat from the pan and return to the heat.
  • While the meatballs are cooking, whisk together the tomato sauce, water, sugar, worcestershire sauce, garlic powder, salt and pepper.
  • Pour the sauce mixture over the meatballs and arrange so all the meatballs are coated in the sauce.
  • Cover and simmer for 45-50 minutes.
  • Serve the meatballs with the sauce over rice or mashed potatoes, if desired.

Notes

Meatballs can be made up to 48 hours in advance and stored in an airtight container in the refrigerator.
Alternatively, you can freeze cooked porcupine meatballs in an airtight container for up to 3 months.
Retro Baked Sauce (Condensed Soup)
  • 2 cans (10.5 oz each) condensed tomato soup
  • 1 cup water (or V8/tomato juice for extra flavor)
  • 1 tsp Worcestershire sauce
  • Optional: pinch sugar and Italian seasoning
Instant Pot / Slow Cooker Sauce (quick)
  • 1 (15 oz) can tomato sauce
  • 1 cup beef broth
  • 1 tsp Worcestershire sauce
  • Optional: 1/2 cup diced tomatoes
Instant Pot / Slow Cooker
Instant Pot: 8 minutes high pressure + 10 minutes natural release
Slow Cooker: Low 6–7 hours (or High 3–4 hours)
Instant Pot
  1. Add tomato sauce, broth, and Worcestershire to the pot.
  2. Place meatballs in a single, even layer (stack gently if needed—don’t pack). Spoon a little sauce over.
  3. Seal and cook 8 minutes on High Pressure. Allow 10 minutes natural release, then quick release.
  4. If sauce is thin, simmer on Sauté 3–5 minutes. If rice needs a touch more time, cover and rest 5–10 minutes; residual heat finishes it.
Slow Cooker
  1. Whisk sauce ingredients in the crock.
  2. Nestle meatballs in a single layer (a slight overlap is fine).
  3. Cook Low 6–7 hours (or High 3–4 hours) until rice is tender and meatballs are cooked through.
Baked (Condensed Tomato Soup)
Oven: 350°F (175°C)
Time: 15 min prep • 55–65 min bake
Yield: 4–6 servings
  1. Pan & sauce: Lightly grease a 9×13-inch baking dish. Whisk soup, water (or V8), and Worcestershire; season to taste. Pour half into the dish.
  2. Arrange meatballs in a single layer; pour remaining sauce over the top. Cover tightly with foil.
  3. Bake covered 45–50 minutes.
  4. Uncover and bake 10–15 minutes more until meatballs are cooked through and rice is tender.
  5. Make it saucier: For extra sauce, add another 1/2–1 can soup plus 1/2 cup water around the 40‑minute mark.
Edge-browning option: Broil 2–3 minutes at the end for lightly caramelized tops.

Nutrition

Calories: 380kcal, Carbohydrates: 40g, Protein: 30g, Fat: 11g, Saturated Fat: 4g, Cholesterol: 123mg, Sodium: 1432mg, Potassium: 990mg, Fiber: 3g, Sugar: 16g, Vitamin A: 775IU, Vitamin C: 14mg, Calcium: 67mg, Iron: 5mg

Nutrition information is automatically calculated, so should only be used as an approximation.

Like this recipe?Leave a comment below!
Can you freeze porcupine meatballs?

Yes. Let them cool completely, then freeze them in the sauce in an airtight container for up to 3 months.

Why is my rice still firm?

Usually the sauce reduced too quickly or the meatballs didn’t simmer long enough. Keep the pan covered, add a little extra liquid if needed, and continue cooking until the rice is tender.

Can I use brown rice instead of white rice?

Yes, but it usually needs more liquid and a longer cooking time than white rice.

Can I make porcupine meatballs ahead of time?

Yes. You can shape the meatballs ahead and refrigerate them, or fully cook the recipe and reheat it later.

What makes porcupine meatballs old-fashioned?

The old-fashioned version usually sticks to a simple beef-and-rice meatball simmered in tomato-based sauce, using pantry staples and a straightforward cooking method.

Free email guide

Your “Healthy-ish” Meal Plan
Healthy meals don’t have to be difficult. Let me show you.

Leave a comment

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

Recipe Rating:




This site uses Akismet to reduce spam. Learn how your comment data is processed.

13 Comments

  1. Bee says:

    The meatballs turned out good. A little too much water in the meatballs but overall the recipe is quite good.

    1. Kellie says:

      Thank you so much! I’m happy you enjoyed them!

  2. Sheila Reynolds says:

    Wonderful staple to many great meals. Easy recipe to use.

    1. Kellie says:

      I’m so happy you liked it!

  3. Susan says:

    I omit the water from the meatballs and make them in the slow cooker for 7 hours in my IP on slow cook . They cone out perfect everytime 

    1. Kellie says:

      I love that tip!

  4. Laura says:

    I used Basmati rice and it cooked perfectly. I liked it a lot, but thought the amount of pepper overwhelmed any other flavors. I will use much less if I make it again. 

    1. Kellie says:

      Thank you for giving the recipe a try! You can definitely adjust the seasonings as you see fit. Hope you give it another try soon!

  5. Jennifer Fulk says:

    Looks good. I am reading that you can used cooked rice if you bake them? I see a lot of recipes using cooked rice? The reviews say they come out good.

    1. Kellie says:

      Hi! I tested this with cooked rice and it didn’t really turn out well at all. The meatballs fell apart and the rice was very mealy. I don’t recommend.

  6. Melody Welty says:

    I was running late so did them in my Pressure pan. 10 min @ 15 lbs pressure cool at end of the 10 min.

    Thanks for sharing.
    Melody

    1. Kellie says:

      Great idea! I’m going to have to try my pressure cooker!

  7. Dave says:

    I haven’t had porcupine meatballs since junior high, 58 years ago. This is a Must Make!