Thai cuisine is a vibrant and exciting blend of flavors, and these meatballs with peanut satay dipping sauce capture the essence of a delicious and unique Southeast Asian culinary tradition.
When I first tried making Thai meatballs at home, I was skeptical they’d come close to the ones from my favorite Thai spot downtown. But this recipe? It’s become my go-to for everything from Friday night dinners to impressing guests.
The magic of Thai cooking lies in how it balances sweet, sour, spicy, and savory in every bite. These meatballs hit all those notes with fresh ginger, fiery bird’s eye chilies, and handfuls of fragrant Thai basil and mint.
I’ve switched to grass-fed beef for these, though ground turkey or chicken works beautifully too if you’re watching your red meat intake. The best part? They cook under the broiler in minutes, which means less time cooking and more time eating. No babysitting a frying pan required. When done, you just put them on some bamboo skewers and you have yourself a lovely presentation.
But let’s talk about this peanut sauce – it’s honestly good enough to eat with a spoon (I’ve been caught doing exactly that). Three main ingredients – peanut butter, coconut milk, and lime juice – transform into something that’s simultaneously rich and bright. The lime cuts through the creaminess, giving the sauce that signature Thai twang.
Serve these as party bites on skewers and watch them disappear within minutes, or pile them on top of jasmine rice or rice noodles for a proper meal. Either way, they’re a delicious first step into Thai cooking that doesn’t require a cabinet full of special ingredients or hours in the kitchen.
Thai Favorite: How to Make Pad-See-EwStep by Step Guide to Making Thai Meatball Skewers with Peanut Satay Sauce
Step 1: Prepare the Peanut Satay Sauce
In a large bowl, combine creamy peanut butter with coconut milk.
Stir vigorously until a smooth, creamy consistency is achieved. Initially, the mixture may appear lumpy, but continuous stirring will smooth it out.
Add freshly squeezed lime juice and sea salt to taste. Set aside.
Step 2: Prepare Meatball Mixture
In a large mixing bowl, add ground beef, grated ginger, minced pepper, finely diced scallions, lime zest, finely chopped basil and mint, coconut milk, honey or sugar (optional), and sea salt.
Mix gently by hand until just combined—avoid overmixing to maintain tenderness.
Step 3: Shape Meatballs
Preheat the broiler on high.
Line a large baking pan with aluminum foil and lightly coat with cooking spray or neutral oil.
Lightly oil your hands to prevent sticking.
Form meat mixture into round balls about the size of large marbles or walnuts. Arrange on the prepared baking sheet.
Step 4: Cook Meatballs
Place meatballs under the broiler and cook for approximately 8-10 minutes, turning halfway through cooking to ensure even browning.
Meatballs should be cooked through yet juicy. Internal temperature should reach 160°F (71°C).
Step 5: Serve
Put meatballs on bamboo skewers, 4-5 on each
Serve meatballs warm, with peanut satay sauce on the side.
Garnish with fresh Thai basil, chopped cilantro and lime wedges.
Pair with steamed rice and chopped salad for a complete meal.
Thai Meatballs FAQ:
Can I bake instead of broil the meatballs?
Yes, bake at 400°F (200°C) for about 15-20 minutes.
How long does the peanut sauce last?
It can be refrigerated in an airtight container for up to one week.
Can I freeze the meatballs?
Absolutely! Freeze cooked meatballs in an airtight container for up to 3 months.
What can I substitute for coconut milk?
Regular dairy milk or almond milk works, though the flavor profile will slightly differ.
Is this dish spicy?
You can control the spice level by adjusting the amount of chili pepper.

Thai Meatballs with Peanut Satay Dipping Sauce
- Total Time: 25 mins
- Yield: 18-20 mini meatballs 1x
Description
Serve these as party bites on skewers and watch them disappear within minutes, or pile them on top of jasmine rice or rice noodles for a proper meal.
Ingredients
For the Meatballs:
- 1 pound (450 grams) ground beef (85% lean recommended; substitute turkey or chicken if desired)
- 1-inch piece fresh ginger, peeled and grated
- 1 small Thai bird’s eye pepper or jalapeño, minced (optional)
- 4 scallions, finely diced
- Zest of 1/2 lime (reserve remaining limes for serving)
- 1/4 cup fresh Thai basil and mint, finely chopped (regular basil is fine)
- 3 tablespoons coconut milk (preferably full-fat, Thai Kitchen brand recommended)
- Tiny drizzle of honey or pinch of sugar (optional)
- Sea salt, to taste
- Neutral oil or coconut oil for cooking
For the Peanut Satay Sauce:
- 1/2 cup creamy peanut butter (unsalted preferred)
- 1 cup coconut milk (full-fat or lite)
- Juice of 1 lime
- Sea salt, to taste
For Serving:
- Fresh Thai basil
- Chopped cilantro
- Lime wedges
- Steamed rice
- Bamboo skewers
Instructions
Step 1: Prepare the Peanut Satay Sauce
- In a large bowl, combine creamy peanut butter with coconut milk.
- Stir vigorously until a smooth, creamy consistency is achieved. Initially, the mixture may appear lumpy, but continuous stirring will smooth it out.
- Add freshly squeezed lime juice and sea salt to taste. Set aside.
Step 2: Prepare Meatball Mixture
- In a large mixing bowl, add ground beef, grated ginger, minced pepper, finely diced scallions, lime zest, finely chopped basil and mint, coconut milk, honey or sugar (optional), and sea salt.
- Mix gently by hand until just combined—avoid overmixing to maintain tenderness.
Step 3: Shape Meatballs
- Preheat the broiler on high.
- Line a large baking pan with aluminum foil and lightly coat with cooking spray or neutral oil.
- Lightly oil your hands to prevent sticking.
- Form meat mixture into round balls about the size of large marbles or walnuts. Arrange on the prepared baking sheet.
Step 4: Cook Meatballs
- Place meatballs under the broiler and cook for approximately 8-10 minutes, turning halfway through cooking to ensure even browning.
- Meatballs should be cooked through yet juicy. Internal temperature should reach 160°F (71°C).
Step 5: Serve
- Put meatballs on bamboo skewers, 4-5 on each
- Serve meatballs warm, with peanut satay sauce on the side.
- Garnish with fresh Thai basil, chopped cilantro and lime wedges.
- Pair with steamed rice and chopped salad for a complete meal.
Notes
Substitute chicken or turkey for beef for a leaner option.
Adjust the spice level to your preference by reducing or omitting the pepper.
Peanut sauce can be prepared ahead and refrigerated until ready to serve.
- Prep Time: 15 mins
- Cook Time: 10 mins
If you liked this, you are going to love these favorite Thai recipes:
Thai Favorite: How to Make Pad-See-Ew
Love this recipe, great flavors and always turns out delicious!
I spend a ton of time in Thailand and this tastes very authentic. I would probably put MORE chili in next time, but I am also a massive spice-lover.
Used turkey instead of beef, fantastic results. Really authentic taste, will most definitely repeat soon.
So tasty, lovely kick, fresh!
I forgot to turn them! Dang it, burned one side. But I still ate them and they were still delicious.