Mince the garlic cloves finely and dice the onion into small pieces. Chop the fresh basil and zest the lemon. Squeeze the spinach extremely dry using a kitchen towel or paper towels—this is crucial to prevent wet meatballs that won't hold together well. Have all ingredients measured and ready before you begin mixing, as this will make the assembly process smooth and efficient.
In a large bowl, combine the ground chicken with the prepared spinach from Step 1. Add the minced garlic, diced onion, and fresh basil. Crack in the eggs and add the Panko breadcrumbs, grated Parmesan cheese, salt, black pepper, red pepper flakes, and lemon zest. Mix gently with your hands until just combined—avoid overmixing, which can make the meatballs tough. I prefer to mix with my hands rather than a spoon because it gives me better feel for the texture and ensures even distribution of seasonings without crushing the chicken.
Preheat your oven to 350°F. Using a cookie scoop or your hands, form the mixture into uniform balls about 1.5 inches in diameter—uniform sizing ensures they cook at the same rate. Arrange them on a parchment-lined baking sheet with about an inch of space between each meatball to allow heat to circulate and promote even cooking.
Bake the meatballs at 350°F for 25-30 minutes until they reach an internal temperature of 165°F when measured with a meat thermometer in the center of the largest meatball. I like to check them around the 25-minute mark—they're done when they're lightly golden on the exterior and no longer pink inside. Once cooked, let them cool on the baking sheet for 2-3 minutes before serving or transferring to your desired sauce.