Porcupine Meatballs in Mushroom Soup (Recipe)
These tender beef meatballs hold uncooked rice that softens as they bake, covered, in creamy mushroom sauce. Mix 1 pound of beef with rice, egg, and onion, then add condensed soup and water or milk. Bake at 350°F for about 75–90 minutes. Check that the rice is tender and every meatball reaches 160°F.
A weeknight dinner can be frustrating when you want something hearty but do not want to juggle several pans. These mushroom-soup porcupine meatballs keep the work simple: mix, shape, cover, and bake. The main things to get right are even meatballs, enough moisture, and enough covered cooking time for the rice to soften.
I focus on those details in this recipe. It uses familiar ingredients and one oven-safe vessel, but it does need more cooking time than a quick skillet meal. The clock is a guide, not proof that the meat or rice is done.
Recipe at a glance
This is a covered-bake recipe for beef meatballs made with uncooked white rice. The rice cooks inside the meatballs as the sauce heats around them. Plan on about 20 minutes to prepare and shape them, then 75–90 minutes in the oven, plus a short rest.
| Detail | Recipe |
|---|---|
| Yield | About 12 meatballs, 4 servings |
| Oven temperature | 350°F (177°C) |
| Bake time | About 75–90 minutes, covered |
| Meatball size | 1½ inches (about 4 cm) |
| Safe beef temperature | 160°F (71°C) at the center |
| Main vessel | Covered oven-safe Dutch oven or casserole |
Ingredients
- 1 pound (454 g) ground beef
- ½ cup (about 90 g) uncooked long-grain white rice
- 1 large egg
- ¼ cup finely minced onion
- ½ teaspoon salt
- ¼ teaspoon black pepper
- 1 can (10.5 ounces / 298 g) condensed cream of mushroom soup
- ½ cup (120 mL) water or milk
The salt and pepper season the beef without competing with the soup’s flavor. If your soup is already quite salty, you can reduce or leave out the added salt.
Choose the vessel and prepare the ingredients
The dish needs a vessel that holds the meatballs in a single layer and can stay covered in a 350°F oven. Check the oven rating for both the vessel and its lid or knob. A Dutch oven or casserole made from tri-ply stainless steel, enameled cast iron, or oven-rated glass or ceramic can work.
Before you mix, heat the oven to 350°F (177°C). Lightly grease the vessel if you like, but you do not need to preheat it or add oil for this covered-bake method.
Bare cast iron and carbon steel are poor choices for a long bake with this sauce. The moist, acidic sauce can affect the seasoning and may take on a metallic taste. Stainless steel is non-reactive, and enameled cast iron has a coated cooking surface.
Ingredient checks
- Use long-grain white rice, not cooked rice. The recipe’s liquid and baking time are designed to soften uncooked rice.
- Mince the onion finely so the pieces mix evenly through the meat.
- If the beef is very cold, it may be easier to mix after a few minutes out of the refrigerator, but do not leave it at room temperature for an extended period.
- Use water for a lighter sauce or milk for a creamier result. Either should be mixed with the condensed soup before it goes over the meatballs.
Mix, shape, sauce, and bake
Mix the beef, uncooked rice, egg, onion, salt, and pepper just until combined. Overmixing can make meatballs dense, so stop when the ingredients are distributed. Divide the mixture into 12 portions and shape each into a ball about 1½ inches across. Similar-sized meatballs cook more evenly.
In a separate bowl, stir the condensed mushroom soup and water or milk until smooth. Arrange the meatballs in one layer in the vessel, then pour the sauce over them. The sauce should coat the meatballs and reach around them. Cover with the fitted lid or seal the vessel tightly with foil.
Bake for 75 minutes before checking. If the rice is still firm or the center of the largest meatball is below 160°F (71°C), cover the dish again and continue baking. Check every 5–10 minutes until both tests are met.
Why the cover matters: The lid holds moisture in the dish. The rice needs that moisture and time to soften. If the dish is left uncovered, the sauce can thicken and dry before the rice is tender.
Check doneness and fix common problems
“Doneness” here means two things: the beef has reached a safe temperature, and the rice inside the meatballs is tender. A hot or bubbling sauce does not confirm either one. Use an instant-read food thermometer to check the center of the largest meatball, then check more than one if the meatballs vary in size.
The target for ground beef is 160°F (71°C) at the center. If one meatball has not reached that temperature, return the covered dish to the oven and check again after a few minutes. Do not rely on cooking time or the sauce’s temperature alone.
| What you notice | Likely reason | What to do |
|---|---|---|
| Beef is at 160°F, but rice is firm | Rice needs more time or moisture | Keep the dish covered and bake in short increments |
| Sauce looks very thick before rice is tender | Moisture may be escaping or evaporating | Add a small amount of hot water or milk, cover, and continue |
| Some meatballs are done before others | Sizes may differ | Check each larger or less-done meatball and continue baking as needed |
| Meatballs are much larger than 1½ inches | Larger centers take longer to heat through | Continue covered baking; verify both rice texture and 160°F center temperature |
| Sauce is bubbling, but the center is not checked | Sauce temperature does not show meatball doneness | Use a food thermometer in the center of the meatball |
If you add liquid, take care with the vessel. Do not pour cold water into hot metal, glass, or ceramic; a sudden temperature change can damage the cookware. Use hot water or warm milk, add only a little at a time, and avoid splashing.
Rest, serve, and care for leftovers
When the meatballs are cooked through and the rice is tender, let the dish rest, covered, for about 5 minutes. The short rest gives the sauce time to settle and makes serving easier. Spoon the sauce over each meatball so the rice-studded centers stay moist.
These meatballs pair well with simple sides such as steamed green beans, peas, or a salad. If you want a more filling plate, serve them with bread or mashed potatoes to catch the mushroom sauce. Keep the sides uncomplicated; the meatballs and sauce are the main event.
For leftovers, transfer food to a suitable container and refrigerate promptly. Cool the vessel gradually before washing it. Once it is safe to handle, wash with warm water and ordinary dish detergent. Avoid a sudden temperature change to hot glass or ceramic, and do not store the sauce for a long time in bare cast iron or carbon steel.
Frequently asked questions
These quick answers cover common questions about rice, cooking time, substitutions, and doneness. The key rule stays the same throughout: keep the dish covered while the rice cooks, and check the meatball centers with a thermometer rather than judging by appearance alone.
Can I use cooked rice?
This recipe is designed for uncooked long-grain white rice, which softens during the covered bake. Cooked rice will not follow the same timing or absorb moisture in the same way, so use uncooked rice for the stated method.
Can I use brown rice instead of white rice?
Brown rice generally needs a different cooking time and amount of liquid than white rice. This recipe is written for long-grain white rice, so I cannot recommend a reliable bake time for brown rice without changing and testing the method.
Can I use milk instead of water in the sauce?
Yes. Stir ½ cup (120 mL) of milk into the condensed soup for a creamier sauce, or use water for a lighter one.
How long do the meatballs bake?
Bake covered at 350°F (177°C) for about 75–90 minutes. Begin checking at 75 minutes, then continue in short increments if the rice is firm or the meatball centers have not reached 160°F (71°C).
How do I know when the meatballs are safe to eat?
Check the center of the largest meatball with a food thermometer. Ground beef should reach 160°F (71°C). Also check that the rice inside is tender.
Why is the rice still hard?
The dish may need more covered cooking time, or the sauce may have become too thick. Add a small amount of hot water or warm milk if needed, cover again, and continue baking until the rice softens.
Can I bake the meatballs uncovered?
Keep them covered for this method. The lid helps retain moisture so the uncooked rice can cook. An uncovered dish may lose moisture before the rice is tender.
Can I cook this recipe on the stovetop instead?
This method is written for an oven-safe, covered vessel and an even bake. Stovetop heat may cook the bottom faster than the centers, so it needs a separately tested method and different doneness checks.
Do I need to brown the meatballs first?
No. The recipe does not require browning. Shape the meatballs, arrange them in the vessel, add the sauce, cover, and bake.
Can I make the meatballs larger?
You can, but larger meatballs may take longer for the centers to heat and the rice to soften. Keep them as close as possible to 1½ inches for the timing in this recipe, and verify doneness with a thermometer.
The reliable finish is simple: bake covered, check the rice for tenderness, and confirm that every meatball reaches 160°F (71°C). When both are ready, rest the dish briefly and spoon the mushroom sauce over the top.
(This article was written by one of our staff writers, Steven R. Bancroft. Visit our Meet the Team page.)
