Delicious, Crisp & Juicy Whole30 Meatballs

Click Here to See How to Sleep Better & Eliminate Joint Pain Tonight…
Alright. Let’s talk meatball logistics.
Just about everyone and their nonna has a favorite meatball recipe and a preferred method of cooking them.
(And that’s fine! But each one gives a slightly different result…)
So rather than waxing poetic about why mine is the best… I’ll jump straight into the specs:
- This recipe is modified from a famously authentic old school Italian restaurant’s in Brooklyn, and includes two unexpected ingredients which make these meatballs shine—golden raisins and pine nuts.
- Even though it lacks cheese and breadcrumbs, the additions of almond flour and nutritional yeast really help to absorb some of the moisture and add a “cheesy” flavor.
- They are baked and then simmered, for a slightly crisp, flavorful exterior, and a juicy, just-saucy-enough interior (and never dry).
And perhaps the most important note of all:
We will not be disrespecting these meatballs by serving them with “zoodles” or spaghetti squash.
Yes, I know “zoodles” CAN be delicious… and there is a time and place for them…
But that time and place is NOT with these scrumptious meatballs!
There are so many traditional Italian preparations for meatballs that are easily modified to be Whole30-compliant and do NOT require you to pretend like a vegetable is pasta.
(I’ll get off my soapbox in a moment, but I did provide 3 non-zoodle dinner ideas you can use these meatballs for below.)
Please. Respect your meatballs.
And if you’ve never tried these dinner ideas I list below… give them a shot! You might find your favorite new meatball dish. 🙂
Anyway, back to these meatballs: you can’t live life without them anymore.
Here’s how it’s done:

FTH’s Old School Italian Baked Whole30 Meatballs
Equipment Needed: baking sheet, large pot for simmering
Recipe Time: 75-90 minutes
Makes: 18-20 meatballs
Ingredients
- 2 lbs ground meat, any combination of 90% lean ground beef, pork, or veal works nicely (see Recipe Notes)
- 3 large cloves of garlic, peeled and minced
- 1/2 cup finely chopped parsley
- 1/4 cup golden raisins
- 1/4 cup pine nuts or hazelnuts (see Recipe Notes)
- 3/4 cup almond flour or another alternative Whole30-compliant flour
- 2 large eggs
- 2 tsp dried oregano
- 1 tsp white pepper
- 1 tsp Nutritional Yeast (optional—adds cheesy flavor)
- 1 tsp red pepper flakes (optional)
- 1.5 tsp kosher salt, plus more to taste
- Tomato sauce for simmering, either your favorite store-bought Whole30 brand or my Low-Carb Spaghetti Sauce
Directions:
1) Make your meatball mixture.
Preheat your oven to 325 degrees Fahrenheit.
In a large mixing bowl, combine all the ingredients except for the tomato sauce (preferably in the order they are listed).
Mix with your hands and add more almond flour if needed. It should be wet, but not so wet that it feels “sloppy” or can’t be formed into balls.
Do a test to make sure the flavor is where you want it:
Cook 1 tsp of the mixture in a hot cast iron pan (no oil is needed, but you can add a little avocado oil if desired) for 2-3 minutes until cooked. Let it rest for 2-3 minutes and then eat. Adjust with seasoning as needed.
2) Shape & bake.
Shape the mixture into balls and place them on a baking sheet. The size is totally up to you and how you want to serve them, but note that this may affect cook time. (Smaller meatballs may need less time, depending on the size and makeup of your oven.)
Bake for 25-30 minutes, or until they are firm but still juicy and give slightly when you press into them.
Sleep Like a Baby: Using This Blend of Exotic Herbs and Spices3) Simmer & serve!
While the meatballs cool (or toward the end of baking), heat your tomato sauce in a large pot over medium heat.
When the meatballs are finished, dump them into the sauce and simmer for 30 minutes.
Note: Do not simmer for longer! This will negatively affect the texture and flavor of the meatballs.
After the 30 minutes are up, remove the meatballs and sauce from heat until ready to serve.
Recipe Notes
- Using more than 10% fat in your meat mixture can result in somewhat greasy meatballs, so it’s best to stick to 90% lean ground beef, pork, or veal if possible.
- Pine nuts are expensive, but it is a traditional ingredient in this recipe. However, hazelnuts will also work in a pinch (and pair beautifully with pork).

3 Decadent & Whole30-Compliant Dinner Ideas Using These Meatballs (That Don’t Involve A Single “Zoodle”)
These 3 recipes are versatile, use primarily pantry ingredients, and make fantastic leftovers for lunch (or brunch).
So if you don’t want to serve traditional pasta… or “zoodles”… these are the perfect options:
1) Meatballs & sauce over cauliflower “polenta”
Break one head of cauliflower down into florets, then simmer it in salted water, chicken stock, or cashew milk until tender, about 10-15 minutes (the florets should be fully submerged in the liquid). You can also add herbs or a couple cloves of garlic for extra flavor.
When the cauliflower is tender, blend it until smooth using an immersion blender, food processor, or regular blender. Taste and adjust, adding salt, garlic, and herbs (dried oregano, fresh parsley, fresh black pepper, etc.) as needed.
Spoon the polenta into bowls and top with meatballs, sauce, and more fresh herbs.
2) Meatball “shakshuka”
When the meatballs are finished simmering in the sauce, spoon about 1 cup of sauce into a cast iron or nonstick pan (just the sauce).
Crack 4 eggs into separate bowls and carefully add them to the sauce, being careful to keep them separate.
Sprinkle salt and pepper over the eggs and simmer gently until the whites are cooked but the yolks are still runny.
To serve, spoon some sauce and an egg into a bowl, add however many meatballs you’d like and then top with fresh herbs.
(Pro Tip: Try this meatball recipe with some lamb for a delicious Moroccan-inspired brunch!)
Your Body Can Repair Itself… Click Here to See How3) Meatballs & fancy fennel salad
This is probably my favorite way to prepare these meatballs in a way that’s also Whole30-friendly.
Cut the tops and stalks off of two bulbs of fennel (reserve the stalks to use in broth and the tops to use as a garnish).
Peel off the outer layers of the bulbs and discard (or reserve for stock).
Using a mandoline or a very sharp knife, slice the fennel into thin strips and place in a bowl.
Drizzle a few tablespoons of the best olive oil you own over the fennel, sprinkle on some sea salt, add the zest and juice from one orange, and toss to dress the fennel. Add additional orange slices or arugula if desired. Taste and adjust as needed.
To serve, place some fennel on a plate, top with freshly ground black pepper and fennel fronds, then spoon some meatballs and sauce alongside it.
Fast, easy, and delicious!
Did You Know You Can ADD Cheese To These Meatballs & Boost Your Metabolism?
I’m not kidding… it’s science. Adding cheese will lead to an improved metabolism and increased fat burn!
Now, I know cheese isn’t technically Whole30-compliant… however, hear me out:
A recent study found that eating more Parmigiano Reggiano (yes, the delicious cheese we all LOVE to put on pasta… and meatballs!) has been shown to fight allergy & UTI symptoms…
… and has even been linked to increased metabolism in women (not in men though!).
Though there is one catch:
It HAS to be the real-deal Parmigiano Reggiano—not the low-quality pre-grated stuff that for some reason stays good at room temperature for nearly a decade.
So when you’re at the store, get the real stuff… and both your waistline and your taste buds will thank you!
This is something I personally used to do when I was following the Whole30 program… and even though yes, I WAS eating cheese… I found not only did my food taste better… but I also seemed to see more health benefits than my friends doing the program who *didn’t* eat parm. 🙂
So if you’re curious about why eating MORE of certain cheeses can actually help boost your metabolism…
…plus, two more indulgent “cheat day” cheeses you can eat to increase your metabolism (in a very delicious way!)…
Check this out:
[This post was updated by Fit Trim Happy on June 28, 2020.]