Kofta Challow (کوفته چلو) — Afghan Meatballs in Tomato Sauce with White Rice
Kofta Challow pairs tender Afghan-style meatballs simmered in a tomato-onion sauce with fluffy white rice. It’s a comforting home dish often served for family gatherings, where the sauce is spooned generously over the rice.

Printable Recipe Card
Servings: 4 · Total: 80 min · Difficulty: medium
Ingredients (quick list)
- 320 g Basmati rice (rinsed until water runs mostly clear)
- 1500 ml Water (for boiling rice)
- 10 g Salt (for boiling water)
- 15 ml Vegetable oil (for steaming rice)
- 15 g Unsalted butter (for steaming rice)
- 450 g Ground beef (80–85% lean)
- 150 g Yellow onion (finely grated; squeeze lightly to remove excess juice)
- 8 g Garlic (finely grated (about 2 cloves))
- 12 g Fresh cilantro (finely chopped)
- 1 tsp Black pepper
- 1 tsp Ground coriander
- 0.5 tsp Ground cumin
+ 8 more in the full ingredients section below.
Steps (summary)
- Rinse the basmati rice in several changes of water until it runs mostly clear. Soak the rice in cold water for 15 minutes, then…
- Make the meatball mixture by combining ground beef, grated onion, grated garlic, cilantro, salt, black pepper, coriander, cumin…
- Wet your hands lightly and form 12 meatballs of about 55–60 g each, keeping them compact and smooth. Place them on a plate and…
- Heat 30 ml vegetable oil in a wide, deep skillet or sauté pan over medium heat. Add the diced onion and cook for 8–10 minutes u…
- Stir in the tomato paste and cook it for 1 minute to remove any raw taste. Add crushed tomatoes, water, salt, black pepper, tur…
- Lower the heat so the sauce bubbles softly, then nestle the chilled meatballs into the sauce in a single layer. Cover and simme…
+ 4 more steps in the full instructions section below.
Cultural Background
Kofta dishes are beloved across Afghanistan, reflecting a shared Central and South Asian tradition of spiced minced meat cooked in sauce. Served with challow, it’s a practical, celebratory meal that stretches meat with rice for generous family-style dining.
Equipment
💡 Tips
- Keep the sauce at a gentle simmer (small bubbles) so the meatballs cook through without toughening; high heat can make them dense.
- Grating the onion for the meatballs gives moisture and a finer texture; squeezing out excess juice prevents the mixture from becoming too loose.
- If the sauce thickens too much before the meatballs are done, add 50 ml water and continue simmering covered for 5 minutes.
⚠️ Common Mistakes
❌ Stirring the sauce aggressively after adding meatballs, causing them to crack.
✅ Fix: Shake the pan gently and spoon sauce over the top; only move meatballs once they have firmed after 10 minutes.
❌ Boiling rice too long so it turns mushy during steaming.
✅ Fix: Drain when the grain is tender outside but still slightly firm in the center, usually 6–8 minutes for basmati.
❌ Sauce tastes flat or overly sweet from tomatoes.
✅ Fix: Add the measured lemon juice at the end and simmer 1 minute; the acidity brightens and balances the sauce.
🧊 How to Store
Cool meatballs and sauce within 2 hours, then refrigerate in an airtight container for up to 3 days. Reheat covered in a pan with 30–60 ml water over low heat until bubbling. Store rice separately for up to 3 days and reheat with 15 ml water, covered, to restore fluffiness.
📅 Make Ahead
Form the meatballs up to 24 hours ahead and refrigerate covered to deepen flavor and improve binding. The tomato sauce can be made 2 days ahead and reheated, then simmer the meatballs in it just before serving for best texture.
🍽️ Pairs Well With
- Afghan salad (salata)
- plain yogurt
- pickled vegetables (torshi)
- sliced cucumber and radish
- naan
Regional Variations
- Kabul-style versions may add a pinch of ground cardamom to the meat mixture for a more perfumed aroma.
- Some households add 60 g split peas (pre-cooked) to the sauce for body and a heartier, stew-like finish.
- A spicier variation includes 0.5 tsp chili flakes in the sauce along with paprika.
Ingredients
- 320 gBasmati rice (rinsed until water runs mostly clear)
- 1500 mlWater (for boiling rice)
- 10 gSalt (for boiling water)
- 15 mlVegetable oil (for steaming rice)
- 15 gUnsalted butter (for steaming rice)
- 450 gGround beef (80–85% lean)
- 150 gYellow onion (finely grated; squeeze lightly to remove excess juice)
- 8 gGarlic (finely grated (about 2 cloves))
- 12 gFresh cilantro (finely chopped)
- 1 tspBlack pepper
- 1 tspGround coriander
- 0.5 tspGround cumin
- 1Egg (large)
- 15 gChickpea flour (helps bind while staying gluten-free)
- 30 gTomato paste (about 2 tbsp)
- 400 gCrushed tomatoes (canned)
- 0.5 tspGround turmeric
- 1 tspPaprika
- 1 tspDried mint (optional but traditional)
- 15 mlLemon juice (about 1 tbsp)
🔄 Substitutions
- Ground beef→ Ground lamb
- Chickpea flour→ Fine breadcrumbs
- Crushed tomatoes→ Grated fresh tomatoes
Instructions
- 1
Rinse the basmati rice in several changes of water until it runs mostly clear. Soak the rice in cold water for 15 minutes, then drain well to help the grains cook long and separate.
- 2
Make the meatball mixture by combining ground beef, grated onion, grated garlic, cilantro, salt, black pepper, coriander, cumin, egg, and chickpea flour in a bowl. Knead vigorously for 2–3 minutes until the mixture becomes tacky and cohesive, which helps the kofta hold together in the sauce.
- 3
Wet your hands lightly and form 12 meatballs of about 55–60 g each, keeping them compact and smooth. Place them on a plate and refrigerate for 10 minutes so they firm up while you start the sauce.
- 4
Heat 30 ml vegetable oil in a wide, deep skillet or sauté pan over medium heat. Add the diced onion and cook for 8–10 minutes until soft and lightly golden, then stir in the garlic for 30 seconds until fragrant.
- 5
Stir in the tomato paste and cook it for 1 minute to remove any raw taste. Add crushed tomatoes, water, salt, black pepper, turmeric, paprika, and dried mint, then bring the sauce to a gentle simmer.
- 6
Lower the heat so the sauce bubbles softly, then nestle the chilled meatballs into the sauce in a single layer. Cover and simmer for 20 minutes, shaking the pan occasionally instead of stirring so the meatballs do not break.
- 7
Uncover and simmer 8–10 minutes more to thicken the sauce, then add lemon juice and gently spoon sauce over the meatballs. Check that the meatballs are cooked through and the sauce tastes balanced, with a bright tomato flavor and a gentle tang.
- 8
While the kofta simmers, bring 1500 ml water to a boil in a pot and add 10 g salt. Add the drained rice and boil for 6–8 minutes until the grains are tender on the outside but still slightly firm in the center, then drain in a colander.
- 9
Return the pot to low heat and add 15 ml oil and 15 g butter, then add the drained rice back to the pot in a mound. Poke 5–6 steam holes with the handle of a spoon, cover with a lid wrapped in a clean towel, and steam for 20 minutes until fluffy.
- 10
Fluff the rice gently with a fork and plate it as a bed for the kofta. Spoon the tomato sauce over the rice and arrange the meatballs on top, serving immediately while the sauce is glossy and hot.
🪪 Recipe Passport
Cultural Background
Kofta dishes are beloved across Afghanistan, reflecting a shared Central and South Asian tradition of spiced minced meat cooked in sauce. Served with challow, it’s a practical, celebratory meal that stretches meat with rice for generous family-style dining.
Regional Variations
Researched from multiple sources and validated by the Zaffaron editorial team. Every recipe is tested for accuracy, measurements, and cultural authenticity.
Nutrition per serving
Pairs well with
If you enjoyed this recipe, here are a few related Zaffaron recipes to try next.
Does your family make this differently?
Every family has their own version. Maybe your grandmother adds a secret ingredient, or your aunt has a completely different technique. Preserve your family's version — with their name on it, forever.
You Might Also Like

Sabzi Chalaw (سبزی چلو) — Afghan Herb Rice with Meat Stew
Afghan · Rice Dishes · 130 min

Qabili Shola (شولا قابلی) — Afghan creamy rice with lamb and warm spices
Afghan · Rice Dishes · 135 min

Shami Kebab (شامی کباب) — Afghan Lentil and Meat Patties
Afghan · Kebabs · 70 min

Beggar's Chicken (叫化鸡) — Lotus-Wrapped Clay-Baked Jiangnan Chicken
Chinese · Main Courses · 240 min

Chorrillana (Chorrillana) — Chilean Loaded Fries with Beef and Eggs
Chilean · Main Courses · 60 min

Shakarob (Шакароб) — Tajik Tomato-Onion Bread Salad
Tajik · Salads · 25 min

Uzbek Shurpa (Шўрпа) — Lamb and Vegetable Soup
Uzbek · Soups · 160 min

Yemeni Mandi (مندي) — Smoke-Scented Spiced Rice and Lamb
Yemeni · Main Courses · 170 min
Reviews
Cooked this recipe?
Tap the stars to rate it — that's all it takes. A few words are welcome but optional.
No ratings yet. Cooked this one? Be the first to rate it — it takes one tap.