GAPS-style Swedish Meatballs

This Swedish meatball recipe is derived from a traditional recipe that Jesse’s great-grandmother brought with her when she immigrated from Sweden to America. Over the years it has gone through various modifications depending on the preferences of each family member.  Most recently Jesse and I modified it to make it GAPS-legal. At this point I would no longer describe this as a traditional Swedish recipe, but we still think it’s absolutely delicious.

This recipe will make six pounds of meatballs. Our motto is that if you’re going to make meatballs, you might as well make a lot of meatballs. Meatballs freeze well and making a big batch means you spend less time prepping and cleaning up overall, so every few months we make six pounds and then get to eat meatballs out of the freezer for several weeks. If you’d rather make a smaller amount, you can easily cut down the recipe accordingly.

If possible, I highly recommend making this recipe with a cooking partner. One person can roll out the meatballs and place them in the pans while the other person flips them as they cook. This arrangement speeds up the process immensely, which is quite helpful when you’re cooking six pounds of meat!


4 lbs. ground beef

2 lbs. ground pork

2 medium onions

2 tablespoons salt

3/4 tablespoons pepper

1-2 cups dehydrated zucchini or summer squash (OR 3 small fresh zucchini/squash)

3 medium carrots

Oil of your choice for cooking meatballs, such as refined coconut oil or lard


Add ground meats to a large mixing bowl.

Grind onion in your food processor until it reaches a fine puree. Add onion to your meat bowl.

Grind dehydrated zucchini/squash as finely as you can then add to your meat bowl. If you are using fresh zucchini or squash, process in your food processor until it’s cut into small chunks but is not yet a puree.

Process carrots into small pieces then add to your meat bowl.

Add salt and pepper to the mixture then use your hands to thoroughly mix all ingredients so that everything is evenly distributed throughout the meatball mixture.

Assemble your pans on your burners. When I have all of my burners available, I like to use four pans to maximize my frying space. Begin heating your pans. The best temperature will vary based on your pans and your stove. I usually start my pans at two-thirds of the way between low and medium on my electric stove and then adjust as necessary so the meatballs brown without burning.

Add a small amount of oil to each pan. Begin forming the meatballs into balls and adding them to your pans. I make my meatballs about 1 1/4 inches across, but you could easily make them slightly larger or smaller if you prefer.

Preheat your oven to 250°F.

Flip the meatballs in the pans as they begin to brown. Your goal is to cook all sides of each meatball. Do not worry about cooking the insides of the meatballs, as the meatballs will cook more when you put them in the oven.

As the meatballs finish browning in the pans, transfer finished meatballs and their juices to an oven-safe, lidded container such as a Dutch oven or casserole dish. Continue to add raw meatballs to your pans to replace the finished meatballs.

Once you have transferred the first batch of finished meatballs to your oven-safe container, cover the container with the lid and place in the oven. Remove the container from the oven as necessary to add more finished meatballs then place back in the oven.

Once you have transferred all of the meatballs to the oven-safe container, add about 1 1/2 cups of water or broth to the container. This liquid will steam the meatballs in the oven while preventing them from overbrowning. Recover the container and place back into the oven.

Check the meatballs after half an hour. If the water in the container is gently simmering, leave the oven at 250°. If the water is not yet simmering, turn the oven up to 300°F, then check the water again after another half hour. When you see the water simmering, turn the oven back down to 250°.

Steam meatballs in the oven for two hours total. After two hours have elapsed, remove the container from the oven. Two hours should be more than enough time to fully cook all of the meatballs, but if you’re worried about them being undercooked you can cut open a couple of meatballs to check for doneness.

For a traditional Swedish meal, serve meatballs with boiled potatoes and lingonberry jam. Since we can’t eat potatoes on GAPS and I can’t find lingonberries without sugar, we instead enjoy our meatballs with non-starchy vegetable sides.


For easy meals from the freezer, take note of how many meatballs your family requires for a meal and then freeze that amount in individual containers for simple future lunches or dinners.


STANDARD FTC DISCLOSURE: In order for me to support my blogging activities, I may receive monetary compensation or other types of remuneration for my endorsement, recommendation, testimonial and/or link to any products or services from this blog. Please note, I only ever endorse products that are in alignment with Whole Natural Life’s ideals and I believe would be of value to my readers. Please also note that Whole Natural Life is a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for sites to earn advertising fees by advertising and linking to

5 Responses to GAPS-style Swedish Meatballs

  1. Did the original recipe have the veggies in it? Also, do swedish meatballs have a cream sauce?
    • Woolylam says:
      My recipe has sour cream gravy which really amps up the flavor. I will have to try this one. This is our traditional Christmas dinner so wanted to figure a way to make without bread crumbs. Thank you!
  2. […] Can’t wait to try it as a thin and crispy pizza crust! I also can’t forget the awesome meatball recipe we tried. So tasty, so delicious, and again, the simplest of ingredients making the most awesomely […]
  3. Woolylam says:
    I also bake the meatballs instead of frying over a stove- don't need to tend them so often.

Leave a reply