Go Back
+ servings

Caramelized Onion Meatballs - Air Fryer or Baked

Caramelized Onion Meatballs make a great nibble to serve with your favorite dipping sauce, or serve them with a crunchy fresh salad or cauliflower rice for a complete meal. Go ahead, make an extra batch! These freeze beautifully and are perfect for meal prep.
Prep Time10 mins
Cook Time29 mins
Total Time39 mins
Course: Appetizer, Main Course
Cuisine: American
Keyword: meatballs
Servings: 6
Calories: 328.15kcal
Author: Maya Krampf


  • 1/4 cup olive oil divided into 2 tablespoons and 2 tablespoons
  • 1 3/4 cups onion (6 ounces)sliced into thin quarter moons
  • 1 pound ground beef
  • 1/4 cup blanched almond flour 1 ounce
  • 1 large egg
  • 1 teaspoon chopped fresh rosemary
  • 1 teaspoon chopped fresh sage
  • 1 teaspoon fresh thyme chopped
  • 1 teaspoon sea salt
  • 1/4 teaspoon black pepper


  • Preheat either your oven or air fryer. (Instructions below.)
  • In a medium skillet, heat 2 tablespoons of oil over medium heat. Add the sliced onions and cook for at least 20 minutes, until the onions are caramelized and their volume has reduced to about 1/2 cup. Set aside to cool.
  • Meanwhile, in a large bowl, combine the ground beef, almond flour, egg, rosemary, sage, thyme, sea salt, black pepper, and remaining 2 tablespoons oil. Mix until just combined.
  • When the onions are warm but no longer hot, fold them into the meat until just mixed in. Do not overmix.
  • Using a medium cookie scoop to scoop the meat mixture, gently form balls with your fingertips. (You can also use rounded spoonfuls, 1 1/2 to 2 tablespoons in size.)

Air Fryer Instructions

  • Set your air fryer to 400°F.
  • Spray the meatballs and cook for 5 minutes. Flip and cook for 4 to 7 minutes longer. Remove from the air fryer when the internal temperature is about 160 degrees. Rest for 5 minutes and serve.

Baking Instructions

  • Preheat the oven to 400°F. Line a baking sheet with parchment paper.
  • Place the formed meatballs on the parchment lined baking sheet.
  • Bake for about 15 minutes, or until almost or just barely cooked through (about 150°F internal temperature). Drain any extra liquid from the pan and wipe the edges of the meatballs if needed.
  • Turn the oven to broil and move the oven rack right under the broiler. Place the meatballs under the broiler for about 2 minutes, until browned.


Lightly Adapted from THE WHOLESOME YUM EASY KETO COOKBOOK by Maya Krampf. Copyright © 2019 by Maya Krampf. Excerpted by permission of Harmony Books, an imprint of Penguin Random House LLC. All rights reserved. No part of this excerpt may be reproduced or reprinted without permission in writing from the publisher.


Calories: 328.15kcal | Carbohydrates: 5.6g | Protein: 15.44g | Fat: 27.2g | Saturated Fat: 7.47g | Cholesterol: 80.95mg | Sodium: 450.76mg | Potassium: 282.37mg | Fiber: 1.33g | Sugar: 2.17g | Vitamin A: 55.44IU | Vitamin C: 3.99mg | Calcium: 40.43mg | Iron: 2.02mg