Kabab-e Ghaz (کباب غاز) — Persian Saffron-Infused Roasted Goose
A northern Iranian-style goose kebab using a classic par-boil then grill method. Saffron, lemon, onion, and warm paprika perfume the rich meat, while celery and parsley aromatics keep the flavor bright and balanced.

Printable Recipe Card
Servings: 6 · Total: 230 min · Difficulty: hard
Ingredients (quick list)
- 2000 g Goose, bone-in pieces (legs, thighs, breast), skin on (cut into 8–10 large pieces; remove excess loose fat but keep skin)
- 300 g Yellow onions (1 onion thinly sliced for marinade; 1 onion quartered for par-boil)
- 120 g Celery stalks (cut into 5 cm pieces)
- 20 g Parsley sprigs (whole sprigs, tied with kitchen twine if possible)
- 2500 ml Water (for par-boiling; add more only if needed to keep meat mostly submerged)
- 0.5 g Saffron threads (crushed finely)
- 45 ml Hot water (to bloom saffron)
- 90 ml Fresh lemon juice (about 2–3 lemons)
- 60 ml Olive oil (plus extra for oiling grill grates)
- 6 g Paprika (about 2 teaspoons; sweet or smoked)
- 18 g Fine sea salt (about 3 teaspoons, divided)
- 3 g Black pepper (about 1 1/2 teaspoons, freshly ground)
Steps (summary)
- Bloom the saffron: crush saffron threads to a fine powder, then stir with 45 ml hot water (not boiling, about 80–90°C). Cover a…
- Par-boil to tame gaminess and render excess fat: place goose in a large pot with 2,500 ml water, quartered onion (about 150 g),…
- Drain and cool for better marination: transfer goose to a rack set over a tray. Let stand 20 minutes until warm, not steaming.…
- Make the saffron-lemon marinade: in a bowl, combine bloomed saffron (all liquid), lemon juice, olive oil, paprika, black pepper…
- Marinate: coat goose thoroughly with the marinade, pressing onion slices onto the skin and meat. Cover and refrigerate 60 minut…
- Preheat for controlled grilling: remove goose from the refrigerator 20 minutes before cooking. Heat a charcoal grill for two-zo…
+ 3 more steps in the full instructions section below.
Cultural Background
Goose dishes are associated with cooler seasons in parts of northern Iran, where richer poultry is traditionally prepared for gatherings. The par-boil and grill approach helps manage the meat’s intensity while highlighting saffron and citrus, flavors widely used in Iranian celebratory cooking.
Equipment
💡 Tips
- Goose renders a lot of fat; keep a cool zone on the grill and move pieces quickly if flare-ups start.
- Patting the par-boiled meat dry twice is key for browning and for preventing a steamed texture on the grill.
- For a cleaner citrus aroma, zest 1 lemon into the marinade only if your lemons are unwaxed and well-scrubbed.
- If using smoked paprika, keep searing time on the direct zone closer to 4 minutes per side to avoid bitterness.
⚠️ Common Mistakes
❌ Skipping the par-boil step
💡 Why: Goose can taste overly gamey and render too much fat directly on the grill, causing flare-ups and uneven cooking.
✅ Fix: Simmer gently for 45 minutes with aromatics, then dry well before marinating and grilling.
❌ Grilling only over high direct heat
💡 Why: The outside browns too fast while the inside stays tough, and dripping fat can burn the surface bitter.
✅ Fix: Use two-zone heat: sear briefly, then finish covered over indirect heat until 74°C internal temperature.
❌ Leaving the meat wet after boiling
💡 Why: Moisture prevents browning and makes the skin rubbery instead of crisp.
✅ Fix: Drain on a rack, cool 20 minutes, and pat dry thoroughly before applying the marinade.
❌ Over-marinating in strong citrus
💡 Why: Too much time in lemon can tighten the surface proteins, giving a slightly cured, firm exterior.
✅ Fix: Marinate 60 minutes (up to 90 max), then grill promptly; keep lemon at the measured amount.
🧊 How to Store
Refrigerate leftovers in an airtight container up to 3 days. Reheat covered in a 160°C oven for 15–20 minutes with 2–3 tablespoons water or broth to prevent drying. Freeze up to 2 months; thaw overnight in the refrigerator before reheating.
📅 Make Ahead
Par-boil the goose up to 24 hours ahead, cool completely, and refrigerate uncovered for 2 hours to dry the skin, then cover. Marinate up to 90 minutes before grilling for best texture; longer marination is not recommended due to the citrus.
🍽️ Pairs Well With
- Steamed basmati rice with saffron
- Grilled tomatoes and peppers
- Fresh herb platter (mint
- basil
- radish) and lemon wedges
- Simple cucumber and yogurt-style salad (use dairy-free yogurt if needed)
Regional Variations
- Caspian coastal provincesOften paired with more herbs and tart elements, and cooked with careful fat management to keep the meat light while preserving its richness.
- Tehran and large citiesCommonly adapted for home grills or ovens, sometimes finishing the par-boiled pieces in a hot oven to reduce flare-ups and simplify timing.
Ingredients
- 2000 gGoose, bone-in pieces (legs, thighs, breast), skin on (cut into 8–10 large pieces; remove excess loose fat but keep skin)
- 300 gYellow onions (1 onion thinly sliced for marinade; 1 onion quartered for par-boil)
- 120 gCelery stalks (cut into 5 cm pieces)
- 20 gParsley sprigs (whole sprigs, tied with kitchen twine if possible)
- 2500 mlWater (for par-boiling; add more only if needed to keep meat mostly submerged)
- 0.5 gSaffron threads (crushed finely)
- 45 mlHot water (to bloom saffron)
- 90 mlFresh lemon juice (about 2–3 lemons)
- 60 mlOlive oil (plus extra for oiling grill grates)
- 6 gPaprika (about 2 teaspoons; sweet or smoked)
- 18 gFine sea salt (about 3 teaspoons, divided)
- 3 gBlack pepper (about 1 1/2 teaspoons, freshly ground)
🔄 Substitutions
- Goose, bone-in pieces→ Duck legs and breasts (about 1.8 kg total)
- Olive oil→ Neutral oil (grapeseed or sunflower)
- Fresh lemon juice→ Lime juice
Instructions
- 1
Bloom the saffron: crush saffron threads to a fine powder, then stir with 45 ml hot water (not boiling, about 80–90°C). Cover and steep 15 minutes until deeply colored. Meanwhile, pat the goose pieces very dry with paper towels to help browning later.
- 2
Par-boil to tame gaminess and render excess fat: place goose in a large pot with 2,500 ml water, quartered onion (about 150 g), celery, parsley sprigs, and 6 g salt. Bring to a gentle boil, then reduce to a steady simmer (small bubbles) for 45 minutes, skimming foam and fat 2–3 times.
- 3
Drain and cool for better marination: transfer goose to a rack set over a tray. Let stand 20 minutes until warm, not steaming. Discard aromatics. Reserve 250 ml of the par-boil broth only if you want to baste later; otherwise discard. Pat the meat dry again so the marinade clings.
- 4
Make the saffron-lemon marinade: in a bowl, combine bloomed saffron (all liquid), lemon juice, olive oil, paprika, black pepper, remaining 12 g salt, and the thinly sliced onion (about 150 g). Mix well, rubbing onion slices to release juices for a stronger, brighter marinade.
- 5
Marinate: coat goose thoroughly with the marinade, pressing onion slices onto the skin and meat. Cover and refrigerate 60 minutes, turning once halfway. Keep the meat in a single layer if possible so the saffron and lemon contact all surfaces evenly without pooling.
- 6
Preheat for controlled grilling: remove goose from the refrigerator 20 minutes before cooking. Heat a charcoal grill for two-zone cooking (medium-high on one side, medium-low on the other), or preheat a gas grill to 230°C with one burner lower for indirect heat. Oil the grates lightly.
- 7
Sear and color: shake off excess onion slices (reserve them) and place goose skin-side down over direct heat. Grill 4–6 minutes per side, moving pieces as needed to prevent flare-ups from rendered fat. You want deep golden color and light charring without blackening the paprika.
- 8
Finish gently to tenderness: move goose to indirect heat, cover the grill, and cook 35–50 minutes, turning every 10–12 minutes. Target internal temperature: 74°C in the thickest part. If edges dry, brush once or twice with a spoonful of reserved broth mixed with a little marinade.
- 9
Grill the onions and rest: place reserved onion slices in a grill basket or on foil over medium heat for 6–8 minutes until softened and lightly charred. Transfer goose to a platter and rest 10–12 minutes, loosely tented, so juices redistribute and the skin stays crisp.
🪪 Recipe Passport
Cultural Background
Goose dishes are associated with cooler seasons in parts of northern Iran, where richer poultry is traditionally prepared for gatherings. The par-boil and grill approach helps manage the meat’s intensity while highlighting saffron and citrus, flavors widely used in Iranian celebratory cooking.
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

Katteh Tond (کته تند) — Spicy Caspian-Style One-Pot Chicken Rice
Persian · Rice Dishes · 85 min

Saffron Sweet Rice (پلو شیرینی زعفرانی) — Festive Persian milk-saffron rice with nuts
Persian · Rice Dishes · 75 min

Ash-e Sak (آش ساک) — Gorgani Spinach and Lamb Ash
Persian · Soups · 175 min

Chilean Beef Empanada (Empanada de pino) — Baked pastry filled with beef, onion, egg, olive, and raisins
Chilean · Main Courses · 125 min

Toad in the Hole (Toad in the Hole) — Sausages Baked in Yorkshire Pudding Batter
British · Main Courses · 65 min

Stuffed Zucchini (Kabak Dolması) — Hollowed zucchini filled with spiced minced meat and rice
Turkish · Main Courses · 90 min

Cig Kofte (Çiğ Köfte) — Isot-kissed bulgur kneaded and served in lettuce
Turkish · Appetizers · 25 min

Orromo (Оромо) — Kyrgyz Steamed Rolled Dumpling with Lamb and Pumpkin
Kyrgyz · Main Courses · 105 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.