
These charming Porcupine Meatballs blend ground beef with raw rice to create soft, tasty meatballs that look kind of funny as they cook. The rice sticks out from the surface like tiny spikes, which is how they got their fun name. They cook slowly in a thick tomato sauce, mixing comfort with a bit of creativity. It's a kid-friendly dish that turns basic stuff you already have into something pretty cool, showing why old-fashioned comfort food stays popular forever.
After making these countless times, I've found that mixing everything gently and getting the wetness just right makes them turn out perfect.
Key Ingredients Breakdown
- Super lean ground beef keeps the sauce from getting oily
- Regular long-grain rice makes the best little "spikes"
- Canned tomato soup works as the perfect sauce starter
- Real onion gives it that needed flavor kick
The trick is using uncooked rice since it soaks up all the good flavors while making those signature little spikes.
Step-By-Step Cooking Guide
- 1. Get everything ready first with proper setup.
- Use ground beef that isn't cold from the fridge for better mixing. Give your rice a quick wash to get rid of the dusty stuff. Chop your onion into tiny bits no bigger than ¼ inch. Grab a big bowl and throw in your lean ground beef, washed uncooked rice, chopped onion, poultry seasoning, ground cloves, dried thyme, baking powder, salt, pepper, and milk. Mix it all up with your hands but don't go crazy with it - about a minute is enough. If you mix too much, your meatballs will end up tough.
- 2. Form the mix into even-sized meatballs
- with damp hands or use an ice cream scoop to keep them all the same size. They should be around 1.5 inches across, about 2 ounces each. Roll them lightly between your hands to smooth them out. Put the shaped meatballs on a tray lined with parchment paper. Get a 9x13 baking dish ready by rubbing it with olive oil, making sure to cover the bottom and sides well.
- 3. Put meatballs in the oiled dish,
- with some room between each one so heat can move around them. In another bowl, mix the tomato soup with exactly two cans of water until it's totally smooth. Pour this sauce carefully over the meatballs, letting it flow in between them. The sauce should come up about halfway on the meatballs - add a bit more water if needed.
- 4. Cover the dish tightly with sturdy foil,
- pressing the edges down good to seal it. Put it in a 350°F oven that's already hot, right on the middle rack. Bake it covered for exactly 35 minutes. Take the foil off carefully to avoid the hot steam. Keep baking it uncovered for another 30-35 minutes until you can see the rice poking out and the sauce is bubbling a lot around the edges. Check that they're done inside - they should be 165°F.
- 5. Let the meatballs sit in the dish for 10 minutes
- before you serve them. During this time, the rice keeps soaking up sauce and the meatballs firm up properly. The sauce will get a bit thicker too. Make sure they look right - the rice should be sticking out visibly. Give it a taste and add more seasoning if needed. Sprinkle with fresh parsley before bringing to the table.

When I was little, my grandma always added a tiny bit of cloves to the mix - it gives them a special warm flavor that makes them stand out.
Keeping Leftovers Fresh
Put cooled meatballs and sauce in a sealed container and keep in the fridge for up to 4 days. When you warm them up, add a little water or broth to keep them moist. To freeze them, lay cooled meatballs on a tray lined with parchment, freeze them solid, then put them in freezer bags and they'll last up to 3 months. Thaw them in the fridge overnight before warming them up slowly in the oven or on the stove.

Tasty Pairing Ideas
Dish these up hot over creamy mashed potatoes, buttery egg noodles, or plain steamed rice to soak up all that yummy sauce. Add some steamed veggies or a fresh green salad on the side for a complete meal. If you're having friends over, keep them warm in a slow cooker set to LOW. You might want to have extra sauce ready and throw some fresh herbs on top before serving.
Other Ways To Cook Them
- Slow Cooker:
- Put meatballs in greased slow cooker, pour sauce on top. Cook on LOW for 6-7 hours or HIGH for 3-4 hours until rice is soft and sticking out.
- Instant Pot:
- Brown the meatballs using the SAUTÉ setting. Add sauce, cook on HIGH pressure for 15 minutes, let sit for 10 minutes before releasing pressure.
- Stovetop:
- Brown meatballs in a big Dutch oven, add sauce, simmer with lid on for 45-60 minutes until done.
Prep-Ahead Options
You can shape the meatballs up to a day before, just keep them covered in the fridge. Mix up the sauce stuff separately too. When you're ready to cook, just put the meatballs in the baking dish and follow the recipe. If you want to make a bigger batch, double everything but use two separate dishes so they'll cook evenly.

Frequently Asked Questions
- → Where did the name come from?
- The rice pieces poke out during cooking, making them look like porcupine quills.
- → Can ground turkey work here?
- Sure, but keep in mind turkey may make them a bit less juicy.
- → What's the point of rinsing rice?
- Rinsing removes extra starch so the rice cooks properly inside the meat.
- → Are they freezer-friendly?
- Yep, you can freeze them in the sauce for up to three months!
- → Why is the mix so soft?
- That’s normal! They’ll firm up nicely while cooking.