In a large bowl, combine the yogurt, olive oil, grated onion, minced garlic, lemon juice, saffron water, turmeric, cumin, coriander, paprika, salt, and pepper. Mix well.
Add the chicken pieces to the marinade. Toss to coat thoroughly. Cover and refrigerate for at least 2 hours, or overnight for best results.
Preheat your grill to medium-high heat. If using skewers, soak wooden skewers in water for 30 minutes to prevent burning.
Thread the marinated chicken pieces onto the skewers, leaving a little space between each piece.
Grill the chicken skewers for about 10-15 minutes, turning occasionally, until the chicken is cooked through and has a nice char. The internal temperature should reach 165°F (74°C).
Remove the chicken from the grill and let it rest for a few minutes. Garnish with fresh herbs and serve with lemon wedges on the side.
Enjoy your meal!