Shami kebabs are flavorful Indian meat patties with a crispy outer layer and a soft, tender center. Often served as an appetizer or snack, these spiced kebabs also make a comforting meal with rice and dal. A popular Mughlai recipe, Shami kebabs can be pan-fried or cooked in the air fryer. This recipe includes tips for both cooking methods, along with dietary variations. They are freezer-friendly and ideal for make-ahead meals or festive gatherings.

A Traditional Indian Favorite
Shami kebabs are made by first cooking the meat, chana dal, and spices, then processing the mixture to shape into kebabs before shallow frying. This two-stage cooking process distinguishes them from other kebabs, which are made directly from raw meat.
I have fond memories of enjoying the best Shami kebabs at my aunt and grandma’s home. Their version was unforgettable — the aroma, taste, and texture were simply unmatched. It turns out they added a bit of dried coconut powder, which gave the kebabs a unique flavor, and a mouthwatering taste.

It added a richness and depth, much like the bhuna gosht they used to prepare. In Hyderabad and southern India, coconut is a common ingredient, adding a unique flavor to many dishes.
Two things are essential for the traditional shami kebab taste: the spice combination and the meaty texture. Freshly ground black pepper, smoky black cardamom, and shahjeera are what give these kebabs their signature flavor. As for texture, keeping the meat finely shredded or pulled, known as resha daar in Urdu (like in haleem), is crucial for authenticity.
Key Ingredient Notes

- Spices: I prefer making my own spice blend with whole spices for authentic flavor. Cardamom, cloves, and cinnamon form the base of garam masala. Shahjeera and black cardamom add a smoky flavor, while black peppercorns provide a unique peppery touch. You can also use homemade garam masala or good-quality store-bought blends like Shaan Zafrani or Everest Shahi/Royal Garam Masala.
- Shahjeera: Available at Indian grocery stores, it’s often labeled as black caraway or black cumin. Its smoky flavor is unique, but you can substitute with regular cumin seeds and a pinch of fennel seeds if needed.
- Lean Boneless Beef: Use cuts like round or chuck shoulder—avoid tenderloin, brisket, or shank. The fibrous texture is essential for traditional shami kebabs, helping with both flavor and binding. While ground meat can be used, the texture will be softer and less structured.
- Other Meat Options: Leg of lamb/goat, veal, or chicken breast are all workable alternatives. Cooking time will vary depending on the meat.
- Chana Dal (Split Chickpeas): Readily available at Indian stores, chana dal is key for flavor and binding.
- Ginger & Garlic Paste: Use fresh for the best flavor and aroma.
- Water: Add just enough to cook the mixture (about 3-4 cups). Too much water will require excess evaporation, making the mixture overly wet.
- Dried Coconut: Use dried coconut flakes or desiccated coconut, ground into a fine powder. It adds rich, nutty flavor.
- Roasted Chickpea Flour: Not the same as raw besan. Available at Middle Eastern or Indian stores. You can also grind roasted chana dal (dalia). Breadcrumbs can be used, though they’re non-traditional.
- Oil: I use avocado oil for its neutral flavor and high smoke point—ideal for shallow frying.

Step-by-Step Visual Overview
Here’s an overview of the cooking process. A full printable recipe with exact measurements can be found at the end of the post.
Prepare the Spices: Roast the whole spices until fragrant, then grind into a fine powder (or use garam masala).

Cook the Meat and Dal: Combine beef, soaked chana dal, onions, and spices in a pot. Simmer for 1½ hours until the meat is tender. Reduce excess liquid by increasing the heat, stirring occasionally to prevent sticking.

Make the Mixture: Pulse the cooled mixture in a food processor until finely shredded, or mash it with pestle for a more rustic texture. Add ground coconut, lemon juice, onions, chilies, cilantro, mint, spices, and egg. Mix until smooth and moldable.

Shape the Kebabs: Form the mixture into small patties, about 2 ½ inches wide. Instead of adding onion-herbs mixture to the dough you could also use it as a stuffing for a layered texture.

Fry and Serve: Heat oil in a skillet and shallow-fry the kebabs until golden brown, about 3-4 minutes per side. Garnish with cilantro, onion slices, and lemon wedges.

Top Tips
- Meat Cooking Time: Cutting the beef into small pieces helps it cook in about 1½ hours. Avoid overcooking—it breaks down the meat too much and results in a saucy consistency that’s harder to reduce. To keep the texture resha daar (fibrous and meaty), cook only until the meat is tender but still intact.
- Cooking Meat and Lentils: Cook the meat and chana dal just until tender and holding their shape. If the dal becomes mushy while there's still excess liquid, evaporate uncovered on medium heat, stirring often to prevent sticking or splatter. A wide pan helps reduce moisture more efficiently. Use a splatter screen if needed. Avoid high heat early on unless the mixture is thick and manageable.
- Aim for a Dry Mixture: The final meat-dal mixture should be dry enough to absorb the beaten egg added later for binding. A properly reduced mixture will allow enough egg to be incorporated for a roti or paratha dough-like consistency—firm, moist, and shapeable, but not wet.
- Processing the Mixture: Pulse in a food processor (don’t blend continuously) to retain a resha daar texture. Avoid adding water during this stage. You can also use a stand mixer with a paddle attachment or pound with a wooden pestle/spoon for a similar effect.
- Add Beaten Egg Gradually: Mix in beaten egg a little at a time to reach a dough-like texture. Too much egg in a wet base will make the mixture too loose to shape.
- Refrigerate Before Shaping: Refrigerate the kebab mixture for a few hours or overnight to help firm it up, making shaping easier.
- Skillet Choice: A stainless steel tri-ply or five-ply skillet (like All-Clad) works well for shallow frying, offering even heat distribution. If using cast iron, preheat and fry on low-medium heat to avoid uneven cooking, which can cause the kebabs to break.
- Frying Time: Shallow frying usually takes 3–4 minutes per side, but adjust based on patty size and skillet heat. If using a hotter pan or making smaller kebabs, start checking after 2 minutes to avoid over-browning.
Whole vs. Ground Spices
- Ideally, shami kebabs are made by cooking the meat and dal with whole spices, which gently infuse the mixture with a more mellow flavor compared to ground spices, which can be intense. Since the mixture isn’t ground into a completely smooth paste, spice fragments may remain.
- So a balanced option is to cook with half the whole spices for gentle infusion, discard them after cooking, and finish with a bit of ground spice or garam masala for added depth.

Egg Wash, Flour Coating vs. Breading
Traditionally, shami kebabs are shallow-fried as is—without any egg wash or coating. This method yields a firm, crisp exterior that contrasts beautifully with the soft interior. However, sometimes the kebabs can break during frying, even with beaten egg added to the mixture. This can happen due to excess moisture, under-binding, or improper consistency.
To test the best method, I tried several frying variations.
- Plain (no egg wash or coating): This is the most authentic method and delivers the best traditional flavor and texture. Kebabs won’t break if the mixture is dry enough to hold the right amount of beaten egg. Aim for a consistency similar to soft paratha dough—firm, moist, and not wet.
- Egg Wash Only: Dipping in egg wash before frying helped prevent breakage and made the kebabs easier to handle. However, it resulted in a softer, slightly soggy crust.
- Dipping in Chickpea Flour (No Egg Wash): This method gave excellent results—close to the traditional flavor and texture, while offering added stability. The roasted chickpea flour helped form a crisp exterior and kept the kebabs from breaking.
- Egg Wash + Flour/Breadcrumb Coating: This created a crunchy crust and made the kebabs more sturdy, though not traditional in taste.
For the best results, fry the kebabs plain or lightly coat with roasted chickpea flour.

How to Serve
Shami kebabs are versatile and can be served in a variety of ways.
- Appetizer or Snack: Serve with mint chutney, sliced onions, and lemon wedges.
- Comfort Meal: Pair with rice and dal for a homestyle meal.
- Festive Menu: Include them with biryani, parathas, and other sides—especially popular during Eid, particularly Eid-ul-Adha, when meat dishes take center stage.
- Wraps: Tuck into whole wheat naan with chutney, yogurt dip, lettuce, onions, and tomatoes.
Variations
Shami kebabs are naturally high-protein, moderately low-carb, and gluten-free when made with chickpea flour. They’re also dairy-free, soy-free, nut-free, and grain-free. Here are some options to suit different dietary needs.
- Egg-Free: While not tested, flax eggs (1 tablespoon ground flaxseed + 3 tablespoons water per egg) may be used as a binder.
- Vegan/Vegetarian: Replace the meat with sautéed and minced mushrooms, cooked and shredded jackfruit, mashed black chickpeas (kala chana) or rehydrated textured vegetable protein (squeezed dry) and increase the chana dal. Add soy sauce or smoked paprika for umami boost. Try with eggplant, similar to our chickpea patties.
Nutrition Notes
Shami kebabs are rich in protein, fiber, and essential nutrients like iron and B vitamins. The lean meat-based version offers high-quality protein, while the vegetarian alternative is lower in saturated fat, provides plant-based protein, fiber, and other micronutrients. For a lighter option, try air-frying the kebabs. Enjoy these kebabs in moderation and pair with vegetables and whole-grain flatbreads for a balanced meal.
More Kebabs or Patties
- Kotlet (Persian Meat Patties)
- Spicy Fish Cakes (Fish Patties)
- Meat Patties with Potatoes (Cutlets)
★ DID YOU MAKE THIS RECIPE? PLEASE COMMENT AND GIVE IT A STAR RATING BELOW!

Shami Kebab (Beef, Stovetop)
Ingredients
Spices (or 2 teaspoons garam masala)
- 4 green cardamom remove husks
- 2 black cardamom remove husks
- 6 cloves
- 1 cinnamon stick 3-inch
- 1 teaspoon shahjeera black caraway seeds
- 1 teaspoon black peppercorns
- ⅛ teaspoon grated nutmeg optional
Kebab Mixture
- 2 lbs boneless lean beef cut into 1-inch pieces, trim excess fat
- 1 ¼ cups chana dal 250 grams, soaked in water for 30 minutes
- 2 medium onions quartered, about 2 cups / 300 g
- 1 teaspoon red chili powder Kashmiri chili powder is milder
- 1 teaspoon ground coriander
- ½ teaspoon turmeric
- 1 ½ tablespoons ginger paste
- 1 ½ tablespoons garlic paste
- 2 to 2 ½ teaspoons kosher salt use less for table salt
- 3 to 4 cups water adjust to avoid excess, 1 cup for Instant Pot/pressure cooker
- 2 tablespoons dried coconut flakes or desiccated coconut, ground into a fine powder
- 2 to 3 teaspoons lemon juice optional
- 1 small red onion or 2 shallots, very finely chopped, optional
- 2 green chilies finely chopped, deseed to reduce heat
- ¼ cup chopped cilantro
- 2 tablespoons chopped mint or 1 tablespoon dried mint
- 2 to 3 large eggs beaten, 1 to 2 for mixture, the rest for dipping
- ½ cup roasted chickpea flour or breadcrumbs, optional
- ½ cup avocado oil some will be leftover after frying
Garnish
- Cilantro
- Onion slices
- Lemon wedges
Equipment
- Stainless Steel Frying Pan or cast-iron skillet
- Food Processor or wooden pestle
Instructions
- Roast and Grind Spices: In a skillet, dry roast all whole spices until aromatic, about 3 to 4 minutes. Let cool, then grind into a fine powder. Alternatively, you can use good-quality garam masala.
- Cook the Mixture: In a large cooking pot, combine the beef, soaked and drained chana dal, quartered onions, chili powder, ground coriander, turmeric, ginger paste, garlic paste, half of the ground spices, salt, and 3 cups of water. Bring to a boil, then lower the heat, cover, and simmer until the meat is fork-tender, about 1½ hours. Tip: Do not overcook. Check the meat at 1 hour and adjust the time as needed. Avoid adding too much water, or you'll need to evaporate excess later.
- Evaporate Excess Water: Once the meat is tender, raise the heat to evaporate any excess water, stirring occasionally to prevent sticking. Allow the mixture to cool.
- Process the Meat: Transfer the cooled mixture to a food processor and pulse until you get a finely shredded meat texture (resha daar), which is traditional for Shami kebabs. Taste and adjust salt and spices as needed. Tip: You can also use a wooden pestle or spoon to pound the mixture by hand for a more rustic texture. If you prefer a finer texture, you can grind the mixture until smooth.
- Combine Additional Ingredients: Add ground coconut, lemon juice, optional chopped onions, green chilies, cilantro, mint, remaining spices, and 1 beaten egg. Mix until smooth and moldable. If the mixture feels dry and can take another beaten egg, add it gradually, making sure it is still firm but moist, similar to paratha dough. Tip: Use lemon juice, only if the mixture is dry enough; too much moisture can affect consistency. Alternatively, the combination of onions, chilies, and herbs can be used as a stuffing (see Shikampuri variation in notes).
- Shape the Kebabs: Divide the mixture into 20 to 25 portions (about 3 tablespoons each). Roll each portion into a ball, then flatten into a 2 ½-inch diameter patty. Repeat until all the mixture is used. Set aside.
- Fry the Kebabs: Heat oil in a skillet over medium-high heat, about ¼-inch deep. Once the oil is shimmering, you can shallow fry the kebabs as they are, or dip them in roasted chickpea flour or egg wash. For the latter, spread the flour evenly on a small plate. Dip each kebab in the flour or in the egg wash, using a fork to lift and ensure it's coated evenly. Gently press the kebabs to help the flour set properly. Set the prepared kebabs aside. Tip: It’s best to slide the egg wash-dipped patties directly into the hot oil rather than letting them sit before frying.
- Fry the Kebabs (Continued): To prevent overcrowding, fry 6 to 8 kebabs at a time. Lower the heat to medium and fry each side for 3 to 4 minutes or until golden brown. Adjust cooking time as needed for dark golden brown kebabs. Using a slotted spoon, remove the cooked kebabs to a plate lined with paper towels. Tip: Add more oil as needed to maintain a sufficient depth for frying.
- Air Frying Instructions: Shape the kebabs and chill them to firm up. Arrange them on a wire rack placed on a foil-lined baking sheet to catch drips (or in a basket). Brush with oil or spray generously. Air fry at 425°F (about 25 to 50 degrees higher for air fryers in larger ovens) for 8 to 10 minutes, flipping halfway through, until golden brown.
- Serve: Serve hot, garnished with cilantro, onion slices, and lemon wedges. Shami kebabs make great appetizers, side dishes, snacks, or can be used to make sandwiches.
Notes
- Spices: Shahjeera, roasted chickpea flour, chana dal, coconut powder, and other spices are available at Indian grocery stores. If using store-bought garam masala, try brands like Shaan Zafrani, Everest Royal or Shahi.
- Shikampuri Kebab Variation: This is a variation of Shami kebabs with a yogurt-based stuffing. For stuffing, combine 1 large red onion or 2 shallots (very finely chopped), 2 green chilies (finely chopped, deseed to reduce heat), ¼ cup chopped cilantro, 2 tablespoons chopped mint, 1 cup Greek yogurt, and salt to taste. Chill to firm up before stuffing. To make this variation, roll the kebab mixture into a ball, hollow it out in the center (like we make maamoul cookies), fill with 1 to 2 teaspoons stuffing, seal the edges, and smooth it out. Use egg wash or flour for a light coating.
- Meat Options: Beef has a meaty and fibrous texture, but lamb, goat, veal, or even chicken breast can also be used. Cooking times will vary — lamb, goat, and veal will cook in about 1 hour, while chicken will need 45 minutes. Check for doneness at the 30-minute mark and adjust as needed.
- Oil: Frying at the right temperature ensures minimal oil absorption. If you're not reusing the oil, the kebabs will absorb less.
- Instant Pot: Combine meat, chana dal, spices, and water. Pressure cook on high for 20-25 minutes, then allow a natural release for 10-15 minutes. Use sauté to evaporate excess liquid, stirring often, then proceed with the processing steps above.
- Freezing: The Shami kebab mixture can be shaped and frozen ahead of time. Arrange the patties on a parchment-lined baking sheet and freeze. Before frying, thaw the patties, dip in egg wash or chickpea flour, and shallow fry.
- Storage: You can refrigerate the patties for a couple of days before frying. Alternatively, fry the patties, wrap them in parchment paper, and freeze in freezer-safe bags. To reheat, thaw and heat in a toaster oven, conventional oven, or on a skillet.
Leave a Comment