Preheat oven to 400ºF. Line a baking sheet with parchment paper or lightly grease it.
Heat a drizzle of olive oil in a skillet over medium heat. Add the diced onion and cook for 5–6 minutes, until soft and translucent. Stir in the garlic and frozen spinach. Cook for another 2–3 minutes, until the spinach is warmed through and most of the moisture has evaporated. Remove from heat and let cool slightly.
In a large mixing bowl, add the ground beef, egg, crumbled feta, chopped dill, parsley, mint, salt, and pepper. Add the slightly cooled spinach mixture. Use your hands or a wooden spoon to gently mix until just combined—do not overmix.
Roll the mixture into meatballs about 1½ inches in diameter. You should get approximately 18–20 meatballs.
Heat a tablespoon of olive oil in a large skillet over medium-high heat. Working in batches, add the meatballs and sear for 1–2 minutes per side, until browned. Transfer seared meatballs to the prepared baking sheet.
Once all the meatballs are on the baking sheet, transfer to the oven and bake for 10–15 minutes, or until cooked through and the internal temperature reaches 160ºF.
Video
Notes
Don't skip the sear: Browning the meatballs in a skillet adds flavor and helps them hold their shape in the oven.
Cool the spinach mixture slightly: Mixing it while too hot can start cooking the egg prematurely.
Use fresh herbs: Fresh dill, parsley, and mint give the meatballs their signature Greek flavor, dried herbs won't have the same impact.
Avoid over mixing: Mix just until everything is combined to keep the meatballs tender, not tough.
Batch searing: Sear in 2–3 batches to avoid overcrowding the pan, which can cause steaming instead of browning.
Double it for meal prep: These meatballs freeze well and are perfect for quick weeknight meals.