Whole30 Paleo Meatballs with gravy and zoodles

Easy Whole 30 sage and onion Paleo Meatballs with Creamy Dairy Free Gravy made with coconut milk, served with zucchini noodles (zoodles)
Course Main Course
Cuisine Paleo
Prep Time 20 minutes
Cook Time 40 minutes
Total Time 1 hour
Servings 6
Calories 594 kcal
Author Noshtastic


  • 1 onion finely chopped.
  • 1 tbsp coconut oil for frying
  • 1 tbsp fresh sage finely chopped
  • 2 lb ground pork 900g
  • 2 tbsp almond meal/flour
  • 1 tsp salt
  • 1/2 tsp pepper
  • 1.5 cups gluten free beef broth 375mls
  • 1 tsp fish sauce I used Red Boat brand
  • 400 ml full fat coconut milk 1 can
  • 3 tbsp arrowroot (optional)
  • salt and pepper to taste
  • 1 zucchini (1 per person to make the noodles)


  2. Preheat your oven to 400F
  3. Saute the finely chopped onions in about two tablespoons of coconut oil until soft (but not brown) this will take about 10-15 minutes. Add in the chopped sage for the last five minutes.
  4. In your mixing bowl add pork, onions, sage, almond meal, salt and pepper and mix well.
  5. Form the meatballs by hand, about two tablespoons of the mixture for each meatball.
  6. You now have two choices for cooking the meatballs. You can brown them in a skillet then bake them, or you can skip the skillet part and simply place the meatballs on a parchment lined baking sheet then bake as directed below.
  7. The main difference between the two methods is that if you skip the skillet part the gravy won't have any of the tasty bits from browning the meatballs.
  8. To brown the meatballs place them in a hot well oiled cast iron or non stick skillet for about 3 mins each side to get them brown on the outside, then transfer them to a sheet pan lined with parchment paper.
  9. At this point I usually try and scoop out any stray cooked onions from the skillet as they will start to burn if you brown a second batch meatballs and spoil the flavor of your gravy.
  10. Bake meatballs into your preheated oven at 400F for 20 minutes.
  11. GRAVY
  12. In the same skillet you cooked the meatballs in, add the beef broth, coconut milk, and fish sauce.
  13. Using a wooden spoon or a whisk stir well to get the bits of browned meat up from the bottom of the pan and into the gravy, simmer for five minutes.
  14. If you want to thicken it you can use about 2-3 tablespoons of arrowroot mixed with about a tablespoon of cold water or beef broth.
  15. Remove gravy from the heat and add the arrowroot mixture, stir really well then return to a low heat until the gravy thickens.
  16. Sieve gravy to get any lumps out and season with salt and pepper to taste.
  17. ZUCCHINI NOODLES (optional)
  18. To make the zucchini noodles you will need either a spiralizer (we use the Paderno Spiralizer) or julienne peeler.
  19. Steam them in a covered dish in the microwave for 40 seconds - 2 minutes, watch them closely so they don't turn to mush.

Recipe Notes

I used the Paderno Spiralizer to make my zuchini noodles.

Nutrition Facts
Whole30 Paleo Meatballs with gravy and zoodles
Amount Per Serving
Calories 594 Calories from Fat 441
% Daily Value*
Fat 49g75%
Saturated Fat 26g163%
Cholesterol 108mg36%
Sodium 786mg34%
Potassium 725mg21%
Carbohydrates 8g3%
Fiber 1g4%
Sugar 1g1%
Protein 28g56%
Vitamin A 95IU2%
Vitamin C 8.9mg11%
Calcium 57mg6%
Iron 4mg22%
* Percent Daily Values are based on a 2000 calorie diet.