Wash the basmati rice in a sieve under cold water to get rid of excess starch and set aside.
Fill up a kettle with water and turn it on or heat up 4 cups of water on the stove.
Thinly slice half a medium-sized onion (length ways).
Heat up the ghee and oil in a deep saucepan on medium/high heat.
Add in the whole spices (cumin seeds, bay leaf, clove, cardamom pod and cinnamon stick) and stir for 20-30 seconds.
Incorporate the onions and sauté until translucent.
Next, add the rice and stir until the grains are equally coated with the ghee.
Turn the flame to low and add in a cup of the hot, boiled water and a cup of cold water.
Switch the flame back to high and stir to make sure all the rice grains are fully submerged.
Add a pinch of salt to taste and wait for a minute or so until the rice comes to a boil.
After the rice starts to boil, turn the flame to low and cover the saucepan with a lid for 7-10 mins or until the rice is fully cooked and the liquid has evaporated.
Garnish with fresh cilantro and now the rice is ready to serve!