Food safety reminder: Follow safe food-handling practices and use a food thermometer to verify safe internal cooking temperatures.
- 4 cups (500 g) all-purpose flour - 1 tbsp (9 g) instant yeast - 2 tbsp (30 g) granulated sugar - 1 tsp (5 g) fine salt - 1 cup (240 ml) lukewarm milk - 1/2 cup (120 ml) lukewarm water - 2 tbsp (30 g) unsalted butter, melted - Vegetable oil for deep frying - 1 lb (454 g) ground beef - 1 tbsp (15 ml) vegetable oil - 1 medium onion, finely chopped, about 1 cup (150 g) - 2 cloves garlic, minced, about 2 tsp (10 g) - 1 tbsp (15 g) curry powder - 1 tsp (2 g) ground coriander - 1 tbsp (15 g) tomato paste - 1/2 cup (120 ml) beef or water-based stock - 1 tbsp (15 ml) Worcestershire sauce or 1 tbsp (15 g) chutney for sweetness - Salt and black pepper to taste
U.S. measurements first, metric equivalents in parentheses. Conversions are approximate.
1. In a large bowl whisk flour, instant yeast, sugar, and salt to combine. 2. Stir in lukewarm milk, lukewarm water, and melted butter until a soft dough forms; turn onto a lightly floured surface and knead 6–8 minutes until smooth and elastic. 3. Place dough in a lightly oiled bowl, cover with plastic wrap or a damp towel, and let rise in a warm place until doubled, about 1 to 1¼ hours. 4. Meanwhile make the mince filling: heat 1 tbsp (15 ml) vegetable oil in a skillet over medium heat. Add chopped onion and sauté until soft, 4–5 minutes; add garlic and cook 30 seconds. 5. Add ground beef and cook, breaking up with a spoon, until browned and no longer pink, about 6–8 minutes. Stir in curry powder, ground coriander, and tomato paste; cook 1 minute to bloom the spices. 6. Pour in stock and Worcestershire sauce or chutney; simmer until slightly thickened, 5–7 minutes. Season with salt and pepper to taste. Remove from heat and keep warm. 7. Punch down the risen dough and divide into 8 equal pieces for large vetkoek (or 12 for smaller). Shape each into a ball about the size of a tennis ball. 8. Heat vegetable oil in a deep pot to 350°F (175°C). Carefully lower dough balls into hot oil, do not overcrowd; fry, turning occasionally, until golden brown and puffed, about 4–6 minutes. 9. Drain vetkoek on paper towels. While warm, split each open with a knife and fill with a generous spoonful of curried mince. Serve immediately. 10. Optional: serve some vetkoek with syrup, jam, or powdered sugar for the sweet version alongside the savory mince.
1. In a large bowl whisk flour, instant yeast, sugar, and salt to combine. 2. Stir in lukewarm milk, lukewarm water, and melted butter until a soft dough forms; turn onto a lightly floured surface and knead 6–8 minutes until smooth and elastic. 3. Place dough in a lightly oiled bowl, cover with plastic wrap or a damp towel, and let rise in a warm place until doubled, about 1 to 1¼ hours. 4. Meanwhile make the mince filling: heat 1 tbsp vegetable oil in a skillet over medium heat. Add chopped onion and sauté until soft, 4–5 minutes; add garlic and cook 30 seconds. 5. Add ground beef and cook, breaking up with a spoon, until browned and no longer pink, about 6–8 minutes. Stir in curry powder, ground coriander, and tomato paste; cook 1 minute to bloom the spices. 6. Pour in stock and Worcestershire sauce or chutney; simmer until slightly thickened, 5–7 minutes. Season with salt and pepper to taste. Remove from heat and keep warm. 7. Punch down the risen dough and divide into 8 equal pieces for large vetkoek (or 12 for smaller). Shape each into a ball about the size of a tennis ball. 8. Heat vegetable oil in a deep pot to 350°F (175°C). Carefully lower dough balls into hot oil, do not overcrowd; fry, turning occasionally, until golden brown and puffed, about 4–6 minutes. 9. Drain vetkoek on paper towels. While warm, split each open with a knife and fill with a generous spoonful of curried mince. Serve immediately. 10. Optional: serve some vetkoek with syrup, jam, or powdered sugar for the sweet version alongside the savory mince.
Per serving | Servings: 4
Nutrition estimated: November 5, 2026
*Values are estimates based on USDA data and mathematical calculations. Actual values may vary. Where data are unavailable, those contributions are excluded. Calories, Carbohydrates, Protein, Fat, Saturated fat, Cholesterol, Fiber, Sodium, Potassium, Calcium, Iron, Vitamin A, Vitamin C and Vitamin D are known subtotals. Missing contributions are unknown, not zero.