Learn how to make turkey meatballs with tender centers and savory flavor. Get the homemade ground turkey recipe you’ll want to add to your dinner rotation!!

Golden around their edges, tender enough to cut with a fork, and tucked into a glossy sauce scented with toasted butter and sage, these turkey meatballs give you plenty to look forward to at dinner!
What Makes These Turkey Meatballs Different
Ricotta, grated onion, and a short breadcrumb soak work together to keep lean turkey tender, while a hot oven gives each meatball a lightly browned base.
Mixing those additions before introducing turkey also means you can distribute seasonings without kneading your meat into a dense paste. I would put more attention into that gentle mixing than into making perfectly round meatballs; slightly uneven sides are welcome here!
Choose 93% lean ground turkey for a useful balance of meat and fat. For flavor, lemon zest does especially good work inside these meatballs because it adds citrus fragrance without bringing extra liquid into an already tender mixture.
Brown butter gives this sauce its toasted, almost hazelnut-like aroma, while Dijon and a small squeeze of lemon keep each mouthful bright. Crisp sage adds another texture, and using its cooking butter for your sauce carries that herbal flavor through the whole dish.
Ingredients
For the Turkey Meatballs
- 1½ pounds (680 g) 93% lean ground turkey, kept refrigerated until mixing
- ½ cup (125 g) whole-milk ricotta, measured after draining any visible liquid
- 1 large egg
- ⅔ cup (40 g) plain panko breadcrumbs
- ⅓ cup (30 g) finely grated Parmesan
- ¼ cup (50 g) finely grated yellow onion, including juice collected while grating
- 3 medium garlic cloves, finely grated or minced
- 2 tablespoons finely chopped flat-leaf parsley
- 1 teaspoon finely grated lemon zest, using only yellow peel
- ¾ teaspoon (about 4.5 g) fine salt
- ½ teaspoon freshly ground black pepper
- 1 tablespoon olive oil, divided between greasing your pan and brushing meatballs
For the Brown Butter Dijon Sauce
- 4 tablespoons (56 g) unsalted butter, cut into pieces
- 10 to 12 small fresh sage leaves, washed and thoroughly dried
- 1½ tablespoons (12 g) all-purpose flour
- 1½ cups (360 ml) low-sodium chicken or turkey broth, plus a little extra if needed
- 1½ tablespoons smooth Dijon mustard
- 2 teaspoons fresh lemon juice, plus more to taste
- ¼ teaspoon freshly ground black pepper
- Fine salt, only if needed after tasting
Use spoonably thick ricotta. If liquid pools around it, drain it in a fine-mesh strainer in your refrigerator for 10 to 15 minutes before measuring. It should look soft and creamy, with no watery puddle underneath.
Freshly grated Parmesan blends easily into this mixture. Keep your onion measurement to ¼ cup, even if you have part of an onion left over, because adding extra onion also adds moisture and can make shaping difficult.
Servings: 6, with 4 meatballs and sauce per serving
Yield: About 24 meatballs
Prep time: 25 minutes, including a 5-minute breadcrumb soak
Cooking time: 20 to 25 minutes, with sauce prepared while meatballs bake
Total time: About 45 to 50 minutes
Oven temperature: 425°F / 220°C, conventional oven
Equipment: Large mixing bowl, box grater, 18-by-13-inch rimmed sheet pan, light-colored 12-inch skillet, whisk, and instant-read thermometer
If your ricotta needs draining or your mixture needs chilling, allow another 10 to 15 minutes.
How to Make Turkey Meatballs

Heat your oven to 425°F / 220°C with a rack in its middle position, then brush a large rimmed metal sheet pan with 2 teaspoons olive oil. Give your oven time to heat fully while you prepare everything else; placing meatballs into a lukewarm oven stretches cooking time and makes browning less predictable.
A metal pan gives better contact browning than a glass baking dish, and a rim catches any juices released during baking.
In a large bowl, stir ricotta and egg together until reasonably smooth, then add panko, Parmesan, grated onion with its juice, garlic, parsley, lemon zest, salt, and pepper. Mix thoroughly and leave it alone for 5 minutes, so breadcrumbs can absorb moisture before turkey goes in.
Don’t skip this step, and here is why: softened crumbs disperse through your meatballs more evenly and help hold moisture during cooking. This is a useful moment to measure sauce ingredients and dry your sage leaves.
Add cold ground turkey in several loose pieces, then use a fork or your fingertips to fold everything together until seasonings look evenly distributed and large streaks of plain turkey disappear.
Stop once it comes together; squeezing and kneading will give you a tighter texture. Expect a soft, slightly sticky mixture that can hold a rounded mound. If it slumps noticeably, refrigerate it for 10 to 15 minutes before deciding it needs more breadcrumbs.
With lightly dampened hands, divide mixture into 24 portions, roughly 45 g each, and gently roll them into balls about 1¾ inches across. Set them on your prepared pan with approximately 1 inch between pieces, then lightly brush tops with remaining 1 teaspoon olive oil.
I would aim for similar sizes rather than perfect spheres, because even portions cook together while an oversized meatball in one corner keeps everyone else waiting.
Bake for 18 to 22 minutes, rotating your pan halfway through if your oven browns unevenly, and begin checking internal temperature at 18 minutes. Insert an instant-read thermometer sideways into the center of several larger meatballs, keeping its tip away from hot metal, and remove them once they reach 165°F / 74°C.
Expect lightly golden edges and browned undersides rather than a dark crust all over. Color alone cannot confirm doneness, so let your thermometer decide when dinner is ready.
While meatballs bake, melt butter in a light-colored skillet over medium heat. Once it is melted and bubbling, carefully add thoroughly dry sage leaves and cook for about 30 to 60 seconds, until they darken slightly and their edges begin to firm; lift them onto a paper towel, where they will crisp further as they cool.
Continue swirling your skillet and watching butter underneath its foam until milk solids turn golden brown and smell toasted, usually 4 to 6 minutes total from when butter first enters your pan. If those flecks darken quickly, lower heat immediately. You want golden-brown speckles, with no blackened bits or smoky smell.
As soon as butter reaches that golden-brown stage, move your skillet off heat and whisk in flour for about 20 seconds. Slowly whisk in approximately ½ cup broth until smooth, then gradually add remaining broth, keeping your face and hands clear of rising steam.
Return your skillet to medium-low heat and simmer gently for 5 to 7 minutes, whisking often, until sauce lightly coats a spoon. Those tiny brown butter flecks belong there! If sauce becomes thicker than you want, loosen it with extra broth, 1 tablespoon at a time.
Lower heat and stir in Dijon, 2 teaspoons lemon juice, and black pepper, then taste before adding salt. Broth, Parmesan, and mustard already contribute seasoning, so an automatic generous pinch can tip this dish too far.
Aim for a buttery sauce with a gentle tang; if it tastes rich but a little flat, add another ½ teaspoon lemon juice, stir, and taste again. If you want a softer mustard flavor, loosen it with a tablespoon or two of broth.
Once meatballs have reached 165°F / 74°C, transfer them into your skillet with a thin spatula, leaving any pale cooked protein deposits on your sheet pan. Turn them gently through sauce over low heat for 1 to 2 minutes, just long enough to coat and bring everything together.
Avoid a long simmer at this point, because your turkey is already cooked and extra time can dry it out. If sauce finishes first, keep it off heat and rewarm gently when meatballs are ready.
Spoon meatballs and sauce onto warm plates, then scatter crisp sage over each serving right before eating so it keeps its delicate crunch. I would leave a few leaves whole and crumble the rest between my fingers, giving every portion some herbal flavor without making anyone navigate an entire leaf with each forkful.
Serve immediately, with extra sauce passed around for anyone whose mashed potatoes look suspiciously underdressed!
Small Decisions that Make a Big Difference!!
- Choose 93% lean turkey when possible. Extra-lean turkey breast can cook through successfully, but it has less fat and gives you less margin before its texture becomes dry. Ricotta helps, but it cannot undo overcooking.
- Chill before adding more crumbs. Different brands of turkey and ricotta vary in moisture. If a chilled mixture still will not hold a soft mound, fold in 1 additional tablespoon panko and wait 3 minutes before reassessing. Adding a large handful at once can turn a tender mixture heavy.
- Keep an eye on butter during its final minute. Browning speeds up once water has evaporated. Move your pan off heat as soon as golden flecks appear; if it smells burnt or contains black specks, start that sauce again with fresh butter. Mustard cannot negotiate with burnt butter.
- Let temperature matter more than color. Once meatballs reach 165°F / 74°C, resist baking them longer just to make their tops darker. Their browned bases, glossy sauce, and crisp sage provide plenty of flavor and texture.
Serving Suggestions

- Mashed potatoes and green beans: Spoon sauce into a shallow dip in your potatoes, add four meatballs, and serve with green beans for a little crunch.
- Buttered egg noodles and spinach: Nestle meatballs over warm noodles, then add wilted spinach and a spoonful of sauce to each bowl.
- Rice and roasted broccoli: Let rice catch those buttery juices while broccoli brings browned edges and a firmer bite.
- Toasted rolls and a crisp salad: Tuck meatballs into split rolls, spoon on a modest amount of sauce, and serve with a lemony cabbage or cucumber salad.
For a dinner with guests, mashed potatoes would be my first choice because they hold sauce so well and leave room for those tender meatballs to take center stage.
Make Ahead, Storage, and Reheating
1. To Prepare Ahead
Shape meatballs, cover, and refrigerate for up to 24 hours, while staying within ground turkey’s total refrigerated storage window of 1 to 2 days. Bake directly from your refrigerator, checking at 18 minutes and allowing additional time as needed to reach 165°F / 74°C. Prepare sauce while they bake for freshly crisp sage. Cold food storage guidance
2. To Refrigerate Leftovers
Divide meatballs and sauce among shallow containers and refrigerate within 2 hours, or within 1 hour if surrounding temperatures exceed 90°F / 32°C. Keep your refrigerator at 40°F / 4°C or below and use leftovers within 3 to 4 days. Refrigerate sage separately; it will soften during storage. USDA leftover storage guidance
3. To Freeze
Freeze cooled meatballs with sauce in airtight containers for up to 3 months for best quality. Leave out crisp sage and add freshly prepared leaves when serving if you want that crunch. Thaw overnight in your refrigerator before reheating.
4. To Reheat
Place meatballs and sauce in a covered skillet with a splash of broth and warm over medium-low heat, turning occasionally, until centers reach 165°F / 74°C. A small refrigerated portion will often take about 10 to 15 minutes, but quantity and meatball size affect timing. Add broth gradually as sauce loosens, so it stays spoonable instead of turning watery.
These turkey meatballs bring together tender lemon-ricotta centers, toasted brown butter, a little Dijon tang, and sage that crackles gently under your fork.
Spoon them over your favorite side, give every plate a generous helping of sauce, and enjoy a dinner that makes ground turkey feel like something you chose with real enthusiasm.
Just keep a piece of bread nearby for that final buttery bite!




