
Sweet and sour meatballs are the answer when you crave bold flavors in a cozy bowl. The glossy sauce hits every note from tangy to sweet, coating juicy meatballs and crisp-tender veggies. This is the dish I reach for on busy nights when I want takeout vibes without leaving home.
I first set out to make this after running out of takeout options on a rainy weeknight. The fresh pineapple makes it so much better than anything delivered and now it is officially in our family’s comfort food hall of fame.
Ingredients
- Vegetable oil: gives a neutral base for frying and crisping up the meatballs
- Pre-made mini meatballs: save time and offer a tender bite go for a quality brand
- Onion: sliced for sweetness and texture look for firm onions with tight skins
- Capsicum or bell pepper: brings lively color and crunch pick peppers that feel heavy for their size
- Fresh pineapple: adds juicy sweetness select pineapple that smells fragrant at the stem
- Spring onions or scallions: add fresh peppery bite and color use both white and green parts
- Steamed rice to serve: soaks up every drop of sauce
- Brown sugar: in the sauce balances the acids use soft moist sugar
- White vinegar: adds bright tang in the sauce regular distilled vinegar works best
- Tomato ketchup: lends richness and a tomato base choose a low-sugar option if preferred
- Light soy sauce: brings savory depth to the dish look for naturally brewed for best flavor
- Pineapple juice: doubles down on tropical flavor use the juice from your fresh pineapple if possible
- Chinese five spice: adds a subtle warm spice note sniff before buying and pick the most fragrant you can find
- Cornflour or cornstarch: thickens the sauce for that perfect glossy coat check it is not lumpy before using
Instructions
- Make the Sweet and Sour Sauce:
- Combine brown sugar, white vinegar, tomato ketchup, soy sauce, pineapple juice and Chinese five spice in a small saucepan. Heat over medium high, whisking until the sugar fully dissolves and the mixture starts to simmer after about 5 minutes. Mix the cornflour with water until smooth then pour into the hot sauce while stirring. Keep simmering another 2 minutes until the sauce thickens to a nearly syrupy consistency. Set aside off the heat.
- Cook the Meatballs:
- Heat a wok or large nonstick skillet over high heat until you see a bit of smoke. Pour in the vegetable oil and swirl to coat the base. Add the pre-made mini meatballs and fry, turning them now and then for about 4 to 5 minutes until they are browned and almost cooked through. Keep moving them so all sides get golden.
- Add the Vegetables:
- Toss in the sliced onions. Stir fry these with the meatballs for another 2 minutes so they soften a bit and absorb some flavor. Next add the capsicum pieces. Give it another minute of stir frying so the peppers stay crisp and vibrant.
- Combine and Finish:
- Dump in the fresh pineapple chunks and pour in the prepared sweet and sour sauce. Crank the heat and toss everything so the sauce bubbles and glazes over the meatballs and veggies. Let it simmer just until everything is hot and well coated, about 2 minutes.
- Garnish and Serve:
- Stir through the cut spring onions right before taking off the heat. Serve everything piled high over steamed rice while it is piping hot and glossy.

The pineapple is the ingredient I look forward to most each time. When it caramelizes with the sauce it reminds me of family vacations where my kids would race to see who found the last chunk in the pan.
Storage Tips
Keep leftovers in an airtight container in the fridge for up to three days. The flavors deepen overnight. Reheat gently on the stove or in the microwave if using rice add a splash of water to loosen the sauce.
Ingredient Substitutions
If you do not have fresh pineapple try chunks of ripe mango for a different kind of sweetness. Gluten free soy sauce is a great swap for anyone avoiding gluten. Veggie meatballs work well and keep the spirit of the dish.
Serving Suggestions
Spoon everything over fluffy jasmine rice or swap in brown rice for a nutty twist. For a lighter meal try ladling the meatballs and sauce over steamed greens like bok choy or broccoli.
Cultural Context
Sweet and sour flavors are a beloved hallmark of Cantonese cuisine. This dish borrows that classic tangy gloss and pairs it with the comfort of meatballs making it a hit for cozy home dinners and festive celebrations alike.

This dish quickly became a Friday night favorite in my house and I will never buy the jarred sauce again. There is something about the glossy finish and real pineapple that makes everyone want seconds.
Frequently Asked Questions
- → How do you keep meatballs juicy?
Use pre-made meatballs or homemade ones with a blend of lean and fatty meat, and avoid overcooking to keep them moist.
- → Can I use a different fruit instead of pineapple?
Mango or peaches can substitute for pineapple, offering a similar sweet and tangy flavor profile.
- → What type of rice pairs best with this dish?
Steamed jasmine or long grain rice balances the rich sauce and complements the sweet and sour flavors.
- → Is this dish suitable for meal prep?
Yes, it refrigerates well. Reheat gently to preserve the texture of the vegetables and sauce.
- → Can I make this dish vegetarian?
Swap the meatballs for plant-based or tofu balls, and follow the same steps for cooking and sauce preparation.