Start by rinsing the basmati rice under cold running water until the water runs clear, then set aside to drain.
In a large pot, heat the vegetable oil and butter over medium heat. Add the sliced onions and sauté until golden brown.
Add the black mustard seeds, cloves, cardamom pods, and cinnamon stick. Stir for about a minute until fragrant.
Add the rinsed basmati rice, stirring gently to coat with the seasoned oil. Carefully pour in the boiling water, salt, and turmeric.
Bring the mixture to a boil, then reduce heat to low and cover the pot. Allow to simmer for about 15-20 minutes until all water is absorbed.
Remove from heat and let it sit covered for another 5 minutes. Fluff the rice with a fork and serve warm.