Tender Thai Chicken Meatballs in Coconut Curry

Thai Chicken Meatballs in Coconut Curry with Spinach & Thai Basil – Sun-Dried Tomato Twist

⚖️
Difficulty
Medium
⏲️
Prep Time
20 mins
🕒
Cook Time
30 mins
⏱️
Total Time
50 mins
🍽️
Servings
4 servings

I’ll never forget the day I first made these Thai chicken meatballs in coconut curry. It was a rainy Saturday in my tiny NYC apartment, and I was craving something that wrapped warmth around me like a hug. Growing up in Morocco, my mother taught me how to blend spices – cumin, coriander, turmeric – but in Paris, I learned how to build layers of flavor with technique and patience. This curry brings all of that together: the brightness of fresh ginger and Thai basil, the creaminess of coconut milk, and an unexpected punch from sun-dried tomatoes. These coconut curry chicken meatballs are my love letter to weeknight cooking that feels special.

Close your eyes and imagine this: juicy, golden-brown meatballs floating in a silky, aromatic sauce flecked with red curry paste and wilted spinach. The aroma of garlic and ginger hits you first, then the sweet-savory notes of fish sauce and brown sugar. Each meatball is tender and packed with fresh herbs, while the sauce – rich and slightly spicy – coats every grain of jasmine rice you serve it over. The sun-dried tomatoes add a tangy, concentrated sweetness that balances the heat perfectly. It’s the kind of dish that makes you scoop up every last drop with a piece of crusty bread or a spoon.

I’ve refined this recipe over dozens of batches – testing different binders, simmering times, and even a Moroccan-tinged version with preserved lemon. But this version, with its sun-dried tomato surprise, is the one I keep coming back to. In this post, I’ll share my pro tip for keeping chicken meatballs extra moist (hint: it involves panko and a little rest time) and a common mistake that makes them tough. By the end, you’ll be making the best Thai curry meatballs of your life – and your kitchen will smell incredible.

Why This Thai Chicken Meatballs Recipe Is the Best

The Flavor Secret: Most Thai meatball curries stick to a standard flavor profile, but I add sun-dried tomatoes (a trick I picked up from a Parisian chef who loved Italian-Thai fusion). They bring a concentrated umami-sweetness that elevates the whole dish without overpowering the traditional Thai flavors. Combined with fish sauce, lime, and Thai basil, every bite is a layered journey.

Perfected Texture: Chicken meatballs can easily become dry and rubbery. My technique – using panko breadcrumbs soaked in a beaten egg, plus a touch of sesame oil – ensures they stay succulent. The meatballs are first seared to get a golden crust, then finished in the sauce, which infuses them with moisture and flavor. It’s a chef’s method that works every time.

Foolproof & Fast: This recipe comes together in under an hour, and most of that is hands-off simmering. The ingredient list is straightforward, and you can prep the meatballs a day ahead. Whether you’re a seasoned cook or a beginner, the clear steps and visual cues make it easy to nail the perfect Thai meatball curry on your first try.

Coconut Curry Chicken Meatballs Ingredients

I love wandering through the spice aisle at my local NYC Asian market for fresh Thai basil and curry paste – the smells instantly transport me to the streets of Bangkok. But you can find everything at a well-stocked supermarket. The ingredients are simple, but each one plays a key role in building that irresistible flavor.

Ingredients List

  • For the Chicken Meatballs:
  • 1½ lbs ground chicken
  • 1 large egg
  • ½ cup panko breadcrumbs
  • 2 garlic cloves, minced
  • 1 tablespoon fresh ginger, grated
  • 2 green onions, finely sliced
  • 1 tablespoon soy sauce
  • 1 teaspoon sesame oil
  • ½ teaspoon salt
  • ¼ teaspoon black pepper
  • 2 tablespoons vegetable oil (for searing)
  • For the Coconut Curry Sauce:
  • 1 tablespoon vegetable oil
  • 1 small onion, diced
  • 3 garlic cloves, minced
  • 1 tablespoon grated fresh ginger
  • 2 tablespoons red curry paste
  • 1 can (13.5 oz) full-fat coconut milk
  • ½ cup chicken broth
  • 1 tablespoon soy sauce
  • 1 tablespoon fish sauce
  • 1 teaspoon brown sugar
  • ½ cup chopped sun-dried tomatoes (not oil-packed, rehydrated)
  • 3 cups baby spinach
  • ½ cup fresh Thai basil leaves
  • Juice of ½ lime

Ingredient Spotlight

Sun-dried tomatoes (rehydrated): This is my secret weapon. Most Thai curries don’t use them, but they add a concentrated sweetness that balances the heat of the curry paste and the richness of coconut milk. Look for dry-packed sun-dried tomatoes – soak them in hot water for 10 minutes, then drain and chop. If you can’t find them, substitute ½ cup of canned crushed tomatoes and a pinch of sugar, but the texture will be less chewy.

Red curry paste: I use Mae Ploy or Thai Kitchen – both are widely available. The key is to fry the paste in oil for a minute before adding liquid; this wakes up the spices and eliminates any raw taste. Avoid using curry powder; the flavor profile is entirely different.

Thai basil: Its anise-like, peppery aroma is essential to this dish. You can find it in most Asian grocery stores or farmers markets in summer. If you can’t get it, sweet Italian basil works in a pinch – the flavor will be milder but still delicious. Do not use dried basil; it won’t offer the same freshness.

Original Ingredient Best Substitution Flavor / Texture Impact
Sun-dried tomatoes (dry) ½ cup canned crushed tomatoes + ½ tsp sugar Less concentrated, more watery; cook down longer
Red curry paste Yellow or green curry paste + ½ tsp chili flakes Different heat and herb profile; still tasty
Thai basil Sweet basil + ¼ tsp anise seed (optional) Milder, less complex; anise seed hints at Thai basil
Fish sauce Soy sauce + 1 tsp anchovy paste (or extra salt) Less funky umami; use sparingly
Panko breadcrumbs Fresh breadcrumbs or crushed crackers Less crispy; still effective as binder

How to Make Thai Chicken Meatballs in Coconut Curry — Step-by-Step

Let’s get cooking! This recipe flows in two phases: first the meatballs, then the sauce. Follow these steps and you’ll have a stunning dinner ready in under an hour.

Step 1: Prepare the Meatball Mixture

In a large bowl, combine ground chicken, egg, panko, minced garlic, grated ginger, sliced green onions, soy sauce, sesame oil, salt, and pepper. Mix gently with your hands until just combined – overmixing will make the meatballs dense. Cover and refrigerate for 15 minutes (this firms up the mixture and helps them hold their shape).

💡 Stella’s Pro Tip: Wet your hands lightly with cold water before rolling the meatballs to prevent sticking. Aim for 1.5-inch balls – about 16 meatballs total.

Step 2: Sear the Meatballs

Heat 2 tablespoons vegetable oil in a large skillet or Dutch oven over medium-high heat. Working in two batches, add meatballs in a single layer and cook until browned on all sides, about 2–3 minutes per side. They won’t be cooked through yet – that’s fine. Transfer to a plate.

⚠️ Common Mistake to Avoid: Crowding the pan! If you add too many meatballs at once, they steam instead of searing, and you lose that beautiful golden crust. Use two batches.

Step 3: Build the Curry Sauce

Reduce heat to medium. Add 1 tablespoon vegetable oil to the same pot. Sauté diced onion until soft, about 3–4 minutes. Add minced garlic and grated ginger; cook 1 minute until fragrant. Stir in red curry paste and cook for 1 more minute – this step is crucial to develop the deep curry flavor.

💡 Stella’s Pro Tip: Push the paste into the oil with a spatula and let it sizzle for 60 seconds. You’ll smell it bloom – that’s the flavor releasing.

Step 4: Simmer the Curry

Pour in the coconut milk, chicken broth, soy sauce, fish sauce, brown sugar, and rehydrated sun-dried tomatoes. Stir well, scraping up any browned bits from the bottom of the pot. Bring to a gentle simmer. Return the meatballs to the pot, along with any accumulated juices from the plate. Cover and let simmer for 15 minutes over low heat, stirring occasionally.

⚠️ Common Mistake to Avoid: Simmering too vigorously can break the coconut milk and make the sauce grainy. Keep it at a gentle bubble – just a few small bubbles breaking the surface.

Step 5: Finish with Greens and Herbs

After 15 minutes, the meatballs should be cooked through (internal temp 165°F). Stir in baby spinach and cook until just wilted, about 2 minutes. Remove from heat. Fold in fresh Thai basil leaves and squeeze in lime juice. Taste and adjust salt or heat if needed. Serve immediately over steamed jasmine rice or with warm naan.

💡 Stella’s Pro Tip: For an extra pop of color and flavor, reserve a few Thai basil leaves and scatter them over the finished dish before serving. It makes the presentation gorgeous.

Step Action Duration Key Visual Cue
1 Mix and chill meatball mixture 15 min (chill) Mixture holds together when rolled
2 Sear meatballs 2–3 min per side Golden brown crust forms
3 Sauté aromatics + curry paste 5–6 min Paste darkens and smells fragrant
4 Simmer meatballs in sauce 15 min Sauce slightly thickens; meatballs float
5 Add spinach, basil, lime 2 min Spinach wilts, basil brightens

Serving & Presentation

I love serving these Thai chicken meatballs over a mound of fluffy jasmine rice – the sauce soaks into every grain and makes each bite a joy. For a low-carb twist, try cauliflower rice or even zucchini noodles. A sprinkle of sesame seeds and extra Thai basil leaves on top adds a restaurant-style finish.

When I’m hosting, I set out a platter of meatballs in a shallow bowl with the sauce poured over, and let guests help themselves. A side of cucumber salad with rice vinegar and a touch of chili flakes cuts through the richness beautifully. For a nod to my Parisian training, I sometimes serve a small dollop of crème fraîche on the side – it’s not traditional, but the creaminess pairs wonderfully.

In winter, I love pairing this with a crusty baguette (a little French-Moroccan fusion!) or some roasted sweet potatoes. And if you have leftover sauce, it’s amazing spooned over eggs the next morning.

Pairing Type Suggestions Why It Works
Side Dish Steamed jasmine rice, coconut rice, or cauliflower rice Neutral base that absorbs the rich curry sauce
Sauce / Dip Extra lime wedges, Sriracha mayo, or cucumber yogurt raita Adds tangy/cool contrast to the warm spice
Beverage Light lager, Riesling (off-dry), or iced green tea Crisp drinks balance the curry’s heat and richness
Garnish Fresh Thai basil, sesame seeds, sliced red chili, cilantro Adds freshness, color, and texture

Make-Ahead, Storage & Reheating

As a busy NYC food blogger, I’m all about smart meal prep. This Thai meatball curry is a dream because it actually tastes better the next day – the flavors meld together even more. Here’s how I store and reheat it to keep every bite as good as fresh.

Method Container Duration Reheating Tip
Refrigerator Airtight container (sauce and meatballs together) Up to 4 days Reheat gently in a skillet over medium-low, adding a splash of water or broth if sauce thickens.
Freezer Freezer-safe container or zip-top bag (sauce and meatballs together) Up to 3 months Thaw overnight in fridge, then reheat in a covered pot, stirring occasionally. Add fresh basil after reheating.
Make-Ahead Meatballs shaped and raw, sauce prepared separately 2 days in advance Assemble 1 day ahead: store meatballs in fridge, sauce in separate container. When ready, sear meatballs and combine with sauce.

One thing I’ve learned: if you’re freezing, underwhelm the basil and lime juice – add them fresh after reheating for the brightest flavor. I also recommend cooking the meatballs to just under done if you plan to reheat later; they’ll finish cooking during the reheat process and stay perfectly moist.

Variations & Easy Swaps

Variation Key Change Best For Difficulty Impact
Spicy Thai Basil Add 1–2 fresh bird’s eye chilies (sliced) with the curry paste Heat lovers who want an authentic kick Easy – just add more chili
Gluten-Free Option Use gluten-free panko or crushed rice crackers instead of regular panko Celiac or gluten-sensitive guests Easy – substitute 1:1
Moroccan Twist Swap red curry paste for 2 tsp harissa + 1 tsp cumin; add ½ preserved lemon (rind only) Fusion lovers (Stella’s heritage!) Medium – new spice mix, but same technique

Spicy Thai Basil

If you love heat, this is for you. Along with the red curry paste, toss in 1–2 thinly sliced bird’s eye chilies (seeds included for maximum fire). The chilies infuse the sauce with a fruity, persistent heat that pairs beautifully with the sweet coconut and sun-dried tomatoes. Remember to warn your guests – and serve extra rice to tame the flames!

Gluten-Free / Dairy-Free Option

This recipe is already dairy-free, but for gluten-free, swap the panko breadcrumbs with certified gluten-free panko or crushed plain rice crackers. I’ve tested both, and the texture remains tender – just make sure the crackers are finely crushed. Also verify that your soy sauce (or use tamari) and curry paste are gluten-free. The rest of the ingredients are naturally GF, so you’re good to go.

Moroccan Twist (Stella’s Fusion)

Growing up in Morocco, I fell in love with the warm, earthy spice of harissa. For this variation, replace the red curry paste with 2 tablespoons of harissa paste and 1 teaspoon ground cumin. Add a small piece of preserved lemon rind (finely chopped) along with the aromatics. The result is a North African–Thai fusion that’s absolutely stunning. I often make this when I’m missing my mother’s cooking – it’s like a hug from two worlds.

Can I use ground turkey or pork instead of chicken for these Thai meatballs?

Absolutely! Ground turkey will yield a very similar texture and flavor – just make sure it’s not too lean (93/7 works well). Ground pork adds more fat and richness, which makes the meatballs even juicier. If using pork, you can slightly reduce the sesame oil since pork already has natural fat. For both, follow the same recipe; just cook the meatballs to an internal temperature of 165°F (pork should be 160°F, but simmering will bring it up). I’ve tested all three, and they’re all delicious – the sun-dried tomatoes and curry paste harmonize beautifully with any ground meat.

How do I keep the chicken meatballs moist when cooking them in coconut curry?

The secret is twofold. First, the binder: panko breadcrumbs and an egg create a light, tender structure. Second, do not skip the chilling step – it allows the panko to absorb moisture and the fat to firm up, so the meatballs hold together without drying out. During cooking, searing quickly locks in juices, and then simmering them gently in the curry sauce (rather than boiling) keeps them moist and infuses flavor. Also, avoid over-handling the meat mixture; mix just until combined. If you want extra insurance, add a tablespoon of coconut milk or cream to the meatball mixture – it adds richness.

What can I substitute for Thai basil in this coconut curry meatball recipe?

Thai basil has a unique anise-like flavor that’s hard to duplicate exactly, but you have options. The best substitute is sweet Italian basil – use the same amount (½ cup loosely packed) and add a tiny pinch of dried oregano or a dash of anise extract to mimic that aromatic note. If you can’t find any fresh basil, fresh mint or cilantro can work, though the flavor profile will shift significantly. Dried basil is not recommended; it lacks the bright, fresh qualities that the dish needs to balance the rich curry. In a pinch, omit the herb and add an extra squeeze of lime for freshness.

How long should I simmer the meatballs in the coconut curry sauce for the best flavor?

I recommend simmering the meatballs in the sauce for 15 minutes once the sauce is at a gentle bubble. This is enough time for the flavors to meld and for the meatballs to cook through without becoming dry. If you simmer longer (up to 25 minutes), the sauce will thicken even more and the meatballs will absorb more flavor – just add a splash of broth or water if it gets too thick. For the best texture, keep the heat low and don’t let it boil vigorously. The meatballs are done when they reach an internal temperature of 165°F, which typically happens within that 15-minute window. After that, finish with the spinach and basil.

Can I make this recipe completely dairy-free?

Yes, this recipe is already dairy-free! The coconut milk provides creaminess without any dairy. There’s no cheese, butter, or cream in the ingredient list. Just double-check your store-bought curry paste – some brands may contain milk solids, but most Thai red curry pastes are dairy-free. Also verify your soy sauce and chicken broth (choose brands without lactose). For a richer sauce without dairy, you can swirl in a tablespoon of coconut cream at the end. So you can enjoy this creamy, satisfying curry without any dairy worries.

Share Your Version!

Did you make these Thai chicken meatballs in coconut curry? I’d love to hear how they turned out! Drop a comment below with a star rating – it helps other readers find the recipe. If you post a photo on Instagram or Pinterest, tag me @leosfoods so I can feature your creations. And tell me: did you try the sun-dried tomato twist, or did you add your own spin like the Moroccan harissa version? Your kitchen experiments inspire my next recipe!

From my NYC kitchen to yours — I hope this recipe brings as much warmth to your table as it does to mine. — Stella 🧡

📌

Love This Recipe? Save It to Pinterest!

If you enjoyed this Thai chicken meatballs in coconut curry recipe, don’t let it get lost in your browser tabs! 😄 Pin it now so you can find it again anytime — and explore hundreds more tried-and-tested recipes waiting for you on my Pinterest boards.

👉 Follow Stella on Pinterest @stellarecipeblog

📌 Pin this recipe · 🔁 Re-pin your favorites · 💬 Tag me when you make it — I love seeing your creations!

Print

clock clock iconcutlery cutlery iconflag flag iconfolder folder iconinstagram instagram iconpinterest pinterest iconfacebook facebook iconprint print iconsquares squares iconheart heart iconheart solid heart solid icon

Thai Chicken Meatballs in Coconut Curry with Spinach & Thai Basil

Ingredients

Scale
  • For the Chicken Meatballs:
  • 1½ lbs ground chicken
  • 1 large egg
  • ½ cup panko breadcrumbs
  • 2 garlic cloves, minced
  • 1 tablespoon fresh ginger, grated
  • 2 green onions, finely sliced
  • 1 tablespoon soy sauce
  • 1 teaspoon sesame oil
  • ½ teaspoon salt
  • ¼ teaspoon black pepper
  • 2 tablespoons vegetable oil
  • For the Coconut Curry Sauce:
  • 1 tablespoon vegetable oil
  • 1 small onion, diced
  • 3 garlic cloves, minced
  • 1 tablespoon grated fresh ginger
  • 2 tablespoons red curry paste
  • 1 can (13.5 oz) full-fat coconut milk
  • ½ cup chicken broth
  • 1 tablespoon soy sauce
  • 1 tablespoon fish sauce
  • 1 teaspoon brown sugar
  • ½ cup chopped sun-dried tomatoes
  • 3 cups baby spinach
  • ½ cup fresh Thai basil leaves
  • Juice of ½ lime

Instructions

    • Author: Chef Stella


    Thai Chicken Meatballs in Coconut Curry with Spinach & Thai Basil

    Similar Posts

    Leave a Reply

    Your email address will not be published. Required fields are marked *

    Recipe rating ★☆ ★☆ ★☆ ★☆ ★☆