How long it takes: 20 minutes prep, plus 1 hour, 15 minutes in the oven Equipment you’ll need: Dutch oven or large baking dish Servings: 4 This is a recipe that’s been around for decades which means there are many versions of it: on the stovetop, baked in the oven, in an Instant Pot, or slow cooked in a crockpot. I tested several methods and recipes to come up with the perfect porcupine meatball recipe. What I found is that baking works the best. I especially like that it’s largely hands-off once you get the meatballs in the oven. The stovetop does yield a thicker sauce, though, if that matters to you. However, we discovered that the most important key to success was the size of the meatballs.

Reasons To Love Porcupine Meatballs

The best kind of retro recipe. Porcupine meatballs are a recipe that’s loaded with nostalgia, but you’ll actually want to eat them because they’re legitimately delicious. (We can agree that the worst kind of retro recipe are those gelatinous aspic creations with cubes of ham, olives, and hard-boiled eggs, right?) Kid-friendly. If you’re looking for meal ideas that won’t ignite epic dinnertime battles, porcupine meatballs is one to add to your repertoire. Even the name of this recipe will grab kids’ interest! Versatile. You can spoon the meatballs and sauce over spaghetti as you would with traditional spaghetti sauce but since the meatballs already contain rice, they can be simply paired with a vegetable or salad for an easy complete meal. Easy to make. The rice doesn’t have to be cooked in advance; it cooks right in the meatballs. Porcupine meatballs do take some time to bake but the hands-on work is easy.

Ingredient Notes

Lean Ground Beef: I prefer to use lean 92/8 ground beef for these meatballs. We also tested it with 85/15 which works fine but the sauce is a bit greasier. Uncooked White Rice: No need for anything fancy; save that for Instant Pot jasmine rice. Onion: Use a cooking onion or yellow onion which has finer texture than a sweet onion. You want the onion to be very finely minced so it adds flavor throughout the porcupine meatballs without adding texture. Milk: Milk is your Italian grandma’s secret to perfect meatballs. It adds richness and ensures that your meatballs are tender. Garlic: Another meatball essential, add as much or as little as you prefer. Seasonings: Dried parsley, kosher salt, and ground black pepper. Tomato Sauce: The base of the sauce is plain canned tomato sauce that you’ll doctor up with a few pantry ingredients. Beef Broth: The broth will make the sauce look quite soupy at first, but it’s necessary for cooking the rice. Brown Sugar: A bit of sugar cuts the acidity of the tomato sauce. Worcestershire Sauce: An umami powerhouse, Worcestershire sauce adds lots of flavor. Seasonings: Garlic powder, dried oregano, dried basil, and coarse ground black pepper are simple pantry ingredients.

How To Make Porcupine Meatballs

Preheat your oven to 350ºF and coat a Dutch oven or baking dish with nonstick cooking spray. In a large bowl, mix together all of the meatball ingredients until they’re well-combined. Don’t be squeamish—using your hands can make it easier! Using your hands or a scoop, shape 1 ½ tablespoon portions of the meat mixture into meatballs. In a separate bowl, stir together the tomato sauce, broth, and seasonings. Place the meatballs into the prepared pan. Pour the sauce on top. The sauce should nearly cover the meatballs at first (ideally, even more so than these photos). If you’re using a Dutch oven, cover it with the lid. Baking dishes can be covered tightly with foil. Bake the porcupine meatballs for 60 minutes, then uncover and continue baking for another 15 minutes to thicken the sauce. Serve immediately.

Stovetop Method

Heat 1 tablespoon oil in a large skillet set over medium-high heat. Brown the meatballs, then add the tomato sauce and bring to a simmer. Reduce the heat to low, cover, and cook for about 60 minutes, stirring occasionally, until the meatballs are cooked and the rice is tender.

Serving Suggestions

Vegetables: An easy vegetable side like air fryer broccoli, roasted green beans, or sautéed spinach are perfect for rounding out your dinner. Salad: Serve the meatballs with a sweet kale salad, Brussels sprouts salad, or broccoli cauliflower salad. Bread: A loaf of warm crusty bread is perfect for sopping up the extra sauce. Polenta: Creamy Instant Pot polenta makes an excellent base for any kind of meatballs. Pasta: Cook a pot of pasta and serve the meatballs and sauce over the top. I also love to serve porcupine meatballs with a side of stovetop mac and cheese. The meatballs also go well with a pasta salad, such as ranch pasta salad or orzo salad with yogurt dill dressing.

Make Ahead Ideas

You can shape and refrigerate porcupine meatballs up to two days in advance to get a head start on this recipe. If you’d like, you can also mix the sauce and store that separately.

Storage & Reheating Tips

Store leftovers in an airtight container in the refrigerator for up to 5 days. Reheat them with the sauce in the microwave or in a pan on the stovetop. You can also freeze cooked porcupine meatballs in the sauce for up to 3 months. Thaw them in the refrigerator before reheating according to the instructions above.

Porcupine Meatballs  - 98Porcupine Meatballs  - 57Porcupine Meatballs  - 5Porcupine Meatballs  - 16Porcupine Meatballs  - 60Porcupine Meatballs  - 50Porcupine Meatballs  - 90Porcupine Meatballs  - 87Porcupine Meatballs  - 72Porcupine Meatballs  - 48Porcupine Meatballs  - 31Porcupine Meatballs  - 32Porcupine Meatballs  - 17Porcupine Meatballs  - 10Porcupine Meatballs  - 44Porcupine Meatballs  - 19Porcupine Meatballs  - 7Porcupine Meatballs  - 74Porcupine Meatballs  - 23Porcupine Meatballs  - 2